<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Posts | Doğukan Batal</title><description>Writing by Doğukan Batal.</description><link>https://dogu.dev/posts/</link><language>en</language><item><title>Why I built Jaga: the XSS edges frameworks leave to you</title><link>https://dogu.dev/posts/securing-the-edges-handle-xss-in-modern-apps/</link><guid isPermaLink="true">https://dogu.dev/posts/securing-the-edges-handle-xss-in-modern-apps/</guid><description>Frameworks escape most things for you. Raw HTML, URLs, inline styles and script data are left to you. Here is how to handle them, and why I built Jaga for it.</description><pubDate>Tue, 31 Mar 2026 09:02:27 GMT</pubDate></item><item><title>JavaScript Call Stack &amp; Event Loop: How They Work</title><link>https://dogu.dev/posts/javascript-call-stack-and-event-loop/</link><guid isPermaLink="true">https://dogu.dev/posts/javascript-call-stack-and-event-loop/</guid><description>How JavaScript runs one thing at a time and still handles async work: the call stack, Web APIs, the callback queue and the event loop.</description><pubDate>Tue, 13 Aug 2024 21:52:11 GMT</pubDate></item></channel></rss>