<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Mahad Kalam</title><description>Mahad Kalam (@skyfall)&apos;s personal website. I ramble about Rust, TypeScript, web dev, and more!</description><link>https://mahadk.com/</link><language>en-us</language><item><title>Good riddance, 4o</title><link>https://mahadk.com/posts/4o/</link><guid isPermaLink="true">https://mahadk.com/posts/4o/</guid><description>It should&apos;ve happened sooner.</description><pubDate>Fri, 13 Feb 2026 00:00:00 GMT</pubDate></item><item><title>The UK paid £4.1 million for a bookmarks site</title><link>https://mahadk.com/posts/ai-skills-hub/</link><guid isPermaLink="true">https://mahadk.com/posts/ai-skills-hub/</guid><description>Or, as they like to call it, the &apos;AI Skills Hub&apos;. Which was built by PwC because of course it was</description><pubDate>Wed, 28 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Using the M1 MacBook Air in 2026</title><link>https://mahadk.com/posts/m1-mba/</link><guid isPermaLink="true">https://mahadk.com/posts/m1-mba/</guid><description>It&apos;s surprisingly capable more than five years later — as long as you temper your expectations.</description><pubDate>Sat, 17 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Getting Rails&apos; ActiveStorage blob IDs from file URLs</title><link>https://mahadk.com/posts/activestorage-file-id/</link><guid isPermaLink="true">https://mahadk.com/posts/activestorage-file-id/</guid><description>Learn how to extract ActiveStorage blob IDs from expiring ActiveStorage URLs.</description><pubDate>Fri, 12 Dec 2025 18:00:00 GMT</pubDate></item><item><title>Why AI browsers haven&apos;t taken off</title><link>https://mahadk.com/posts/ai-browsers/</link><guid isPermaLink="true">https://mahadk.com/posts/ai-browsers/</guid><description>In theory, AI browsers are huge time-savers. So why aren&apos;t they more popular?</description><pubDate>Wed, 22 Oct 2025 18:00:00 GMT</pubDate></item><item><title>Slack is extorting us with a $195k/yr bill increase</title><link>https://mahadk.com/posts/slack/</link><guid isPermaLink="true">https://mahadk.com/posts/slack/</guid><description>An open letter, or something</description><pubDate>Thu, 18 Sep 2025 18:00:00 GMT</pubDate></item><item><title>Here’s how I got full admin rights in a Replit clone</title><link>https://mahadk.com/posts/spaces-vuln/</link><guid isPermaLink="true">https://mahadk.com/posts/spaces-vuln/</guid><description>Be careful how you run untrusted code!</description><pubDate>Wed, 21 May 2025 18:00:00 GMT</pubDate></item><item><title>How to generate OpenGraph images with Astro and Satori</title><link>https://mahadk.com/posts/astro-og-with-satori/</link><guid isPermaLink="true">https://mahadk.com/posts/astro-og-with-satori/</guid><description>Generating OpenGraph images for your Astro site is an easy way to increase click-through rates and make link previews more appealing. Here&apos;s how to set them up!</description><pubDate>Sun, 05 Jan 2025 18:00:00 GMT</pubDate></item><item><title>How to use Satori with your Tailwind config</title><link>https://mahadk.com/posts/satori-with-tailwind-config/</link><guid isPermaLink="true">https://mahadk.com/posts/satori-with-tailwind-config/</guid><description>A quick guide to using Satori with your Tailwind plugins, fonts, and everything else in your config!</description><pubDate>Sat, 30 Nov 2024 21:00:00 GMT</pubDate></item></channel></rss>