<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Platform Engineering on Tom Meurs</title>
    <link>https://tommeurs.nl/en/categories/platform-engineering/</link>
    <description>Recent content in Platform Engineering on Tom Meurs</description>
    <generator>Hugo</generator>
    <language>en</language>
    <copyright>© Tom Meurs</copyright>
    <lastBuildDate>Sat, 30 May 2026 19:45:00 +0100</lastBuildDate>
    <atom:link href="https://tommeurs.nl/en/categories/platform-engineering/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Infrastructure as Code for People Who Need to Understand</title>
      <link>https://tommeurs.nl/en/posts/infrastructure-as-code-control/</link>
      <pubDate>Sat, 30 May 2026 19:45:00 +0100</pubDate>
      <guid>https://tommeurs.nl/en/posts/infrastructure-as-code-control/</guid>
      <description>&lt;p&gt;Someone opens a cloud console, clicks through a wizard, accepts a few defaults, and a resource appears. The dashboard goes green and everyone moves on. That&amp;rsquo;s still how a lot of infrastructure gets built in 2026, and I&amp;rsquo;ve built some of it that way myself.&lt;/p&gt;&#xA;&lt;p&gt;I can&amp;rsquo;t work like that for long. When I click a button and infrastructure appears, it feels borrowed. I want the configuration written down somewhere I can read it back, and I want to know why something exists, not only that it exists. The console gives me a green tick. It doesn&amp;rsquo;t give me any of that.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Building an Internal Developer Platform: Where to Start</title>
      <link>https://tommeurs.nl/en/posts/internal-developer-platform/</link>
      <pubDate>Wed, 06 May 2026 19:30:00 +0100</pubDate>
      <guid>https://tommeurs.nl/en/posts/internal-developer-platform/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; An Internal Developer Platform is a thin layer between what a developer wants and what the cluster demands. Mine is a Helm base chart, ArgoCD and a handful of Kyverno policies, about 500 lines of my own code. Start with those three, and add observability and a portal only when the tickets tell you to.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Should you build an Internal Developer Platform? Usually, yes. It&amp;rsquo;s the how that wrecks teams.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Simulation, Emulation, Virtualization, and Containers: The Restaurant Metaphor</title>
      <link>https://tommeurs.nl/en/posts/simulation-emulation-virtualization-containers/</link>
      <pubDate>Mon, 23 Feb 2026 20:18:00 +0100</pubDate>
      <guid>https://tommeurs.nl/en/posts/simulation-emulation-virtualization-containers/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; Simulation models a thing without running it. Emulation runs it by rebuilding the hardware in software. Virtualization runs several complete operating systems on one machine. Containers run several apps on one kernel. Below, one restaurant per term, a table, and the four mix-ups I hear most.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;So what&amp;rsquo;s the difference between a container and a virtual machine?&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;I get this question a lot, usually from someone smart who&amp;rsquo;s been nodding along in meetings and doesn&amp;rsquo;t quite want to admit they&amp;rsquo;re fuzzy on it. The honest answer is that most explanations make it worse. They open with &amp;ldquo;hypervisor&amp;rdquo;, &amp;ldquo;kernel sharing&amp;rdquo; and &amp;ldquo;hardware abstraction&amp;rdquo;, and now the person has four new terms to be confused about instead of one.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
