<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Alade Yessoufou — Portfolio</title><description>Articles and thoughts by Alade Yessoufou (also known as Charaf or devalade) — Software Engineer sharing insights on web development, programming, and technology.</description><link>https://devalade.me/</link><item><title>Bypassing Ad-Blockers for PostHog with a Cloudflare Worker</title><link>https://devalade.me/blog/bypassing-ad-blockers-for-posthog-with-a-cloudflare-worker/</link><guid isPermaLink="true">https://devalade.me/blog/bypassing-ad-blockers-for-posthog-with-a-cloudflare-worker/</guid><description>I set up the standard reverse proxy for PostHog and thought I was done. Ad-blockers still killed my session replays. Here&apos;s why the filename posthog-recorder.js is on more filter lists than the domain posthog.com — and the ~30 lines of Worker code that finally fixed it.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Diagnosing a Flash of Unstyled Content in TanStack Start Production</title><link>https://devalade.me/blog/diagnosing-a-flash-of-unstyled-content-in-tanstack-start-production/</link><guid isPermaLink="true">https://devalade.me/blog/diagnosing-a-flash-of-unstyled-content-in-tanstack-start-production/</guid><description>A landing page that looked perfect in dev showed one second of raw, unstyled HTML in production. The bug wasn&apos;t where I expected. Here&apos;s how I found it.</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate></item><item><title>2025: A Year of Building, Learning, and Staying Focused</title><link>https://devalade.me/blog/2025-reflection-on-my-journey-with-ai-tools/</link><guid isPermaLink="true">https://devalade.me/blog/2025-reflection-on-my-journey-with-ai-tools/</guid><description>Reflections on my journey with AI tools, indie hacking, reading, and staying healthy while building for the future.</description><pubDate>Mon, 29 Dec 2025 00:00:00 GMT</pubDate></item><item><title>Durable Objects 101: Sequential State on the Edge</title><link>https://devalade.me/blog/durable-objects-101/</link><guid isPermaLink="true">https://devalade.me/blog/durable-objects-101/</guid><description>Durable Objects ensure consistency by processing requests one at a time. Understand when to use them, how they work, and the tradeoffs you&apos;re making.</description><pubDate>Sun, 02 Nov 2025 00:00:00 GMT</pubDate></item><item><title>Error Handling in TypeScript: Neverthrow, Try-Catch, and EffectTS</title><link>https://devalade.me/blog/error-handling-in-typescript-neverthrow-try-catch-and-alternative-like-effec-ts/</link><guid isPermaLink="true">https://devalade.me/blog/error-handling-in-typescript-neverthrow-try-catch-and-alternative-like-effec-ts/</guid><description>Explore a gentle introduction to error handling in TypeScript. Learn the limitations of traditional try-catch blocks and discover cleaner, type-safe alternatives like Neverthrow and EffectTS.</description><pubDate>Tue, 22 Apr 2025 00:00:00 GMT</pubDate></item><item><title>Mastering Pan Gestures with React Native Reanimated in Expo</title><link>https://devalade.me/blog/mastering-pan-gestures-with-react-native-reanimated/</link><guid isPermaLink="true">https://devalade.me/blog/mastering-pan-gestures-with-react-native-reanimated/</guid><description>This comprehensive guide walks you through implementing smooth, performant pan gestures in Expo using React Native Reanimated. Learn everything from basic setup to advanced techniques like multi-gesture handling, boundaries, and real-world examples that will elevate your React Native applications.</description><pubDate>Sat, 08 Mar 2025 00:00:00 GMT</pubDate></item><item><title>Solving Font Display Issues in React Native iOS Applications</title><link>https://devalade.me/blog/solving-font-display-issues-in-expo-react-native-ios-applications/</link><guid isPermaLink="true">https://devalade.me/blog/solving-font-display-issues-in-expo-react-native-ios-applications/</guid><description>Discover how to fix font rendering problems on iOS by understanding the critical differences in how iOS and Android handle custom fonts. Learn practical solutions for correcting font metadata and streamlining font loading in React Native and Expo applications.</description><pubDate>Wed, 26 Feb 2025 00:00:00 GMT</pubDate></item><item><title>How JavaScript Objects Work: A Practical Guide to Memory Management</title><link>https://devalade.me/blog/how-javascript-objects-work/</link><guid isPermaLink="true">https://devalade.me/blog/how-javascript-objects-work/</guid><description>Dive into the mechanics of JavaScript objects and uncover how `{ }` powers memory allocation in the stack and heap. Explore reference sharing, garbage collection, and property storage in this concise, hands-on guide—essential for developers and tech enthusiasts looking to master JavaScript under the hood.</description><pubDate>Tue, 11 Feb 2025 00:00:00 GMT</pubDate></item><item><title>Understanding Threads, JavaScript, CSS, and Smooth Animations</title><link>https://devalade.me/blog/understand-threads-javascript-css-and-smooth-animation/</link><guid isPermaLink="true">https://devalade.me/blog/understand-threads-javascript-css-and-smooth-animation/</guid><description>Explore how JavaScript’s single-threaded nature, CSS’s GPU tricks, and the Web Animation API team up to create smooth web animations. Learn to optimize the main thread, leverage the compositor, and avoid performance pitfalls in this practical guide—perfect for developers aiming to craft seamless, eye-catching effects.</description><pubDate>Sun, 19 Jan 2025 00:00:00 GMT</pubDate></item></channel></rss>