<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Milan Pantelić</title>
    <link>https://pantelicmilanblog.pages.dev/en/en</link>
    <description>Software engineer writing about code, systems and the things in between.</description>
    <language>en</language>
    <atom:link href="https://pantelicmilanblog.pages.dev/en/en/feed.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Hello, MDX</title>
      <link>https://pantelicmilanblog.pages.dev/en/en/blog/hello-mdx</link>
      <guid isPermaLink="true">https://pantelicmilanblog.pages.dev/en/en/blog/hello-mdx</guid>
      <pubDate>Thu, 01 Oct 2026 00:00:00 GMT</pubDate>
      <description>How this blog works, and a tour of the building blocks every post can use.</description>
      <category>Software Engineering</category>
      <category>Meta</category>
    </item>
    <item>
      <title>Evaluating LLM output without vibes</title>
      <link>https://pantelicmilanblog.pages.dev/en/en/blog/demo-llm-evals</link>
      <guid isPermaLink="true">https://pantelicmilanblog.pages.dev/en/en/blog/demo-llm-evals</guid>
      <pubDate>Mon, 28 Sep 2026 00:00:00 GMT</pubDate>
      <description>Build a small eval harness before you touch the prompt.</description>
      <category>AI Engineering</category>
      <category>LLM</category>
    </item>
    <item>
      <title>RAG basics: chunking and retrieval</title>
      <link>https://pantelicmilanblog.pages.dev/en/en/blog/demo-rag-basics</link>
      <guid isPermaLink="true">https://pantelicmilanblog.pages.dev/en/en/blog/demo-rag-basics</guid>
      <pubDate>Thu, 24 Sep 2026 00:00:00 GMT</pubDate>
      <description>Why most RAG failures are retrieval failures.</description>
      <category>AI Engineering</category>
      <category>Database Design</category>
      <category>RAG</category>
    </item>
    <item>
      <title>Designing indexes for real queries</title>
      <link>https://pantelicmilanblog.pages.dev/en/en/blog/demo-index-design</link>
      <guid isPermaLink="true">https://pantelicmilanblog.pages.dev/en/en/blog/demo-index-design</guid>
      <pubDate>Tue, 22 Sep 2026 00:00:00 GMT</pubDate>
      <description>Start from the query plan, not from the columns.</description>
      <category>Database Design</category>
      <category>Performance</category>
    </item>
    <item>
      <title>Type narrowing in TypeScript</title>
      <link>https://pantelicmilanblog.pages.dev/en/en/blog/typescript-narrowing</link>
      <guid isPermaLink="true">https://pantelicmilanblog.pages.dev/en/en/blog/typescript-narrowing</guid>
      <pubDate>Sun, 20 Sep 2026 00:00:00 GMT</pubDate>
      <description>Let the compiler prove what a value is, instead of casting your way past it.</description>
      <category>Software Engineering</category>
      <category>TypeScript</category>
    </item>
    <item>
      <title>Prompt caching and latency</title>
      <link>https://pantelicmilanblog.pages.dev/en/en/blog/demo-prompt-caching</link>
      <guid isPermaLink="true">https://pantelicmilanblog.pages.dev/en/en/blog/demo-prompt-caching</guid>
      <pubDate>Fri, 18 Sep 2026 00:00:00 GMT</pubDate>
      <description>Cut cost and time-to-first-token by reusing the prefix.</description>
      <category>AI Engineering</category>
      <category>Performance</category>
    </item>
    <item>
      <title>HTTP caching headers that matter</title>
      <link>https://pantelicmilanblog.pages.dev/en/en/blog/demo-http-caching</link>
      <guid isPermaLink="true">https://pantelicmilanblog.pages.dev/en/en/blog/demo-http-caching</guid>
      <pubDate>Sat, 12 Sep 2026 00:00:00 GMT</pubDate>
      <description>Cache-Control, ETag and when to ignore the rest.</description>
      <category>Software Engineering</category>
      <category>Performance</category>
    </item>
    <item>
      <title>SQL or NoSQL? Ask about access patterns</title>
      <link>https://pantelicmilanblog.pages.dev/en/en/blog/demo-sql-vs-nosql</link>
      <guid isPermaLink="true">https://pantelicmilanblog.pages.dev/en/en/blog/demo-sql-vs-nosql</guid>
      <pubDate>Thu, 10 Sep 2026 00:00:00 GMT</pubDate>
      <description>Category is spelled lowercase on purpose.</description>
      <category>Database Design</category>
      <category>postgres</category>
    </item>
    <item>
      <title>A deliberately long title that keeps going to see how cards, headers and the browser tab cope with it on a narrow phone screen</title>
      <link>https://pantelicmilanblog.pages.dev/en/en/blog/demo-long-title</link>
      <guid isPermaLink="true">https://pantelicmilanblog.pages.dev/en/en/blog/demo-long-title</guid>
      <pubDate>Sat, 05 Sep 2026 00:00:00 GMT</pubDate>
      <description>A very long description. A very long description. A very long description. A very long description. A very long description. A very long description. A very long description. A very long description.</description>
      <category>Software Engineering</category>
      <category>Architecture</category>
    </item>
  </channel>
</rss>
