<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>recoveryArea — Pascal Louwes</title><description>Front-end engineering and CRO writing by Pascal Louwes. A/B testing, browser internals, and the unglamorous tooling that makes it all faster.</description><link>https://staging.recoveryarea.nl/</link><language>en-gb</language><item><title>Forcing Variations Without Breaking Targeting</title><link>https://staging.recoveryarea.nl/ab-testing/force-variation-system/</link><guid isPermaLink="true">https://staging.recoveryarea.nl/ab-testing/force-variation-system/</guid><description>GrowthBook&apos;s native URL override bypasses every targeting rule. The QA preview tool I built keeps the rules in place — forcing only fires if the user already qualifies.</description><pubDate>Fri, 08 May 2026 00:00:00 GMT</pubDate><category>ab-testing</category><category>growthbook</category><category>tooling</category><category>qa</category></item><item><title>How To Detect User-Defined Window Globals with JavaScript (Enhanced)</title><link>https://staging.recoveryarea.nl/javascript/how-to-detect-user-defined-window-globals-with-javascript-enhanced/</link><guid isPermaLink="true">https://staging.recoveryarea.nl/javascript/how-to-detect-user-defined-window-globals-with-javascript-enhanced/</guid><description>An async, error-resilient globals detector: spins up an iframe baseline, categorises the diff by type, and lets you exclude known third-party noise.</description><pubDate>Fri, 19 Sep 2025 00:00:00 GMT</pubDate><category>javascript</category><category>debugging</category><category>ab-testing</category></item><item><title>Building the Ultimate A/B Testing Developer Experience</title><link>https://staging.recoveryarea.nl/ab-testing/building-the-ultimate-a-b-testing-developer-experience/</link><guid isPermaLink="true">https://staging.recoveryarea.nl/ab-testing/building-the-ultimate-a-b-testing-developer-experience/</guid><description>How a Vite hub, a Chrome extension that hijacks production scripts, and a WebSocket reload loop turned multi-client A/B testing into hot-reloadable dev work.</description><pubDate>Fri, 12 Sep 2025 00:00:00 GMT</pubDate><category>ab-testing</category><category>tooling</category><category>performance</category></item><item><title>Building a Developer-Friendly Chrome Extension: Script Redirector with Live Reload</title><link>https://staging.recoveryarea.nl/javascript/building-a-developer-friendly-chrome-extension-script-redirector-with-live-reload/</link><guid isPermaLink="true">https://staging.recoveryarea.nl/javascript/building-a-developer-friendly-chrome-extension-script-redirector-with-live-reload/</guid><description>Inside MintMinds RequestLite: a Manifest V3 Chrome extension that redirects production script URLs to localhost and live-reloads tabs over WebSocket.</description><pubDate>Thu, 05 Jun 2025 00:00:00 GMT</pubDate><category>javascript</category><category>chrome-extension</category><category>tooling</category><category>ab-testing</category></item><item><title>How To List User Defined Window Globals with Javascript</title><link>https://staging.recoveryarea.nl/javascript/how-to-list-user-defined-window-globals-with-javascript/</link><guid isPermaLink="true">https://staging.recoveryarea.nl/javascript/how-to-list-user-defined-window-globals-with-javascript/</guid><description>A tiny IIFE that compares window against a fresh iframe to list every user-defined global, grouped by type — handy for auditing third-party noise.</description><pubDate>Fri, 17 Mar 2023 00:00:00 GMT</pubDate><category>javascript</category><category>debugging</category><category>ab-testing</category></item><item><title>How to simulate clicks on non-supported HTML elements</title><link>https://staging.recoveryarea.nl/javascript/how-to-simulate-clicks-on-non-supported-html-elements/</link><guid isPermaLink="true">https://staging.recoveryarea.nl/javascript/how-to-simulate-clicks-on-non-supported-html-elements/</guid><description>Why HTMLElement.click() silently fails on SVG, and the modern MouseEvent-dispatch one-liner that actually triggers the click on any element.</description><pubDate>Mon, 04 Apr 2022 00:00:00 GMT</pubDate><category>javascript</category><category>dom</category><category>ab-testing</category></item><item><title>Adding DOM Elements LIKE A BOSS</title><link>https://staging.recoveryarea.nl/javascript/adding-dom-elements-like-a-boss/</link><guid isPermaLink="true">https://staging.recoveryarea.nl/javascript/adding-dom-elements-like-a-boss/</guid><description>A tiny config-driven helper that builds, attributes, and inserts DOM nodes in one call — the primitive that powers most of my A/B test variants.</description><pubDate>Thu, 03 Jun 2021 00:00:00 GMT</pubDate><category>javascript</category><category>dom</category><category>ab-testing</category></item><item><title>My Secret to Super Fast AB Test Loading</title><link>https://staging.recoveryarea.nl/javascript/my-secret-to-super-fast-ab-test-loading/</link><guid isPermaLink="true">https://staging.recoveryarea.nl/javascript/my-secret-to-super-fast-ab-test-loading/</guid><description>How wrapping querySelector in a MutationObserver kills the FOUC in A/B tests — your variant fires the instant the target element lands in the DOM.</description><pubDate>Wed, 02 Jun 2021 00:00:00 GMT</pubDate><category>javascript</category><category>ab-testing</category><category>performance</category><category>browser-api</category></item><item><title>Notify Enter Viewport the proper way: Intersection Observer.</title><link>https://staging.recoveryarea.nl/javascript/notify-enter-viewport-the-proper-way-intersection-observer/</link><guid isPermaLink="true">https://staging.recoveryarea.nl/javascript/notify-enter-viewport-the-proper-way-intersection-observer/</guid><description>Replacing my old rAF-based viewport tracker with IntersectionObserver — the simpler, lazier, dramatically less complicated way to fire A/B test events.</description><pubDate>Tue, 04 Feb 2020 00:00:00 GMT</pubDate><category>javascript</category><category>browser-api</category><category>ab-testing</category></item><item><title>Notify Enter Viewport</title><link>https://staging.recoveryarea.nl/ab-testing/notify-enter-viewport/</link><guid isPermaLink="true">https://staging.recoveryarea.nl/ab-testing/notify-enter-viewport/</guid><description>The original requestAnimationFrame helper that fires A/B test events when an element scrolls into view — predecessor to the Intersection Observer rewrite.</description><pubDate>Thu, 21 Jun 2018 00:00:00 GMT</pubDate><category>ab-testing</category><category>jquery</category><category>dom</category></item><item><title>AB Test jQuery Performance Cheat Sheet</title><link>https://staging.recoveryarea.nl/ab-testing/ab-test-jquery-performance-cheat-sheet/</link><guid isPermaLink="true">https://staging.recoveryarea.nl/ab-testing/ab-test-jquery-performance-cheat-sheet/</guid><description>Five jQuery techniques that keep A/B tests under their performance budget — selector speed, caching, chaining, event delegation, and DOM-write batching.</description><pubDate>Fri, 14 Oct 2016 00:00:00 GMT</pubDate><category>ab-testing</category><category>jquery</category><category>performance</category><category>code-quality</category></item><item><title>Track That!</title><link>https://staging.recoveryarea.nl/javascript/track-that/</link><guid isPermaLink="true">https://staging.recoveryarea.nl/javascript/track-that/</guid><description>A pocket-sized click introspection helper that JSON-stringifies the source element, its index, text, and every attribute — useful as A/B test custom tracking.</description><pubDate>Sun, 07 Feb 2016 00:00:00 GMT</pubDate><category>javascript</category><category>analytics</category><category>debugging</category></item><item><title>A smarter console.info</title><link>https://staging.recoveryarea.nl/javascript/a-smarter-console-info/</link><guid isPermaLink="true">https://staging.recoveryarea.nl/javascript/a-smarter-console-info/</guid><description>A tiny defensive wrapper that picks console.dir for objects and arrays and console.info for primitives — back when Firebug and Chrome disagreed about logging.</description><pubDate>Wed, 09 Feb 2011 00:00:00 GMT</pubDate><category>javascript</category><category>debugging</category></item></channel></rss>