<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="//blog.devferanmi.xyz/sitemap.xsl"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1"><url><loc>https://blog.devferanmi.xyz/two-tier-llm-pipelines-cost-firewalls-for-production-ai/</loc><lastmod>2026-06-04T19:50:03.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/accessibility-as-the-bare-minimum-frontend-engineer-s-guide/</loc><lastmod>2026-06-04T19:47:47.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/my-journey-into-frontend-engineering-and-what-i-wish-i-knew-earlier/</loc><lastmod>2026-06-04T19:47:08.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/verification-property-testing-invariants-and-the-bridge-to-ai-evals/</loc><lastmod>2025-12-20T09:00:00.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/io-and-task-pushing-side-effects-to-the-edge-of-the-world/</loc><lastmod>2025-12-13T09:00:00.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/type-classes-and-higher-kinded-types-why-typescript-fights-you-and-how-fp-ts-win/</loc><lastmod>2025-12-06T09:00:00.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/functor-the-real-meaning-of-map/</loc><lastmod>2025-11-29T09:00:00.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/magma-semigroup-monoid-the-algebra-of-combining-things/</loc><lastmod>2025-11-22T09:00:00.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/category-theory-in-20-minutes-the-map-that-makes-the-rest-obvious/</loc><lastmod>2025-11-15T09:00:00.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/adts-and-pattern-matching-make-illegal-states-unrepresentable/</loc><lastmod>2025-11-08T09:00:00.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/either-errors-as-values-not-explosions/</loc><lastmod>2025-11-01T09:00:00.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/killing-null-option-and-maybe-for-the-billion-dollar-mistake/</loc><lastmod>2025-10-25T09:00:00.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/recursion-and-immutable-data-writing-loops-without-for/</loc><lastmod>2025-10-18T09:00:00.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/function-composition-and-currying-building-big-pipes-from-small-ones/</loc><lastmod>2025-10-11T09:00:00.000Z</lastmod></url><url><loc>https://blog.devferanmi.xyz/the-honest-definition-of-functional-programming-types-as-sets-functions-as-pipes/</loc><lastmod>2025-10-04T09:00:00.000Z</lastmod></url></urlset>