<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Atelier Ops — Writings</title>
    <link>https://atelierops.net/writings</link>
    <description>Architecture, SRE, SecOps, and the politics of platform engineering — notes from the Atelier Ops workshop.</description>
    <language>en</language>
    <lastBuildDate>Wed, 22 Apr 2026 00:00:00 GMT</lastBuildDate>
    <atom:link href="https://atelierops.net/rss.xml" rel="self" type="application/rss+xml" />
    <item>
      <title><![CDATA[Paved roads vs platforms: what we learned getting it wrong]]></title>
      <link>https://atelierops.net/writings/paved-roads-vs-platforms</link>
      <guid isPermaLink="true">https://atelierops.net/writings/paved-roads-vs-platforms</guid>
      <pubDate>Wed, 22 Apr 2026 00:00:00 GMT</pubDate>
      <category>Architecture</category>
      <description><![CDATA[Why 'narrow opinionated tools' beats 'broad coherent platforms', and the four times we relearned this lesson expensively.]]></description>
    </item>
    <item>
      <title><![CDATA[SLSA L3 without buying a SaaS]]></title>
      <link>https://atelierops.net/writings/slsa-l3-without-saas</link>
      <guid isPermaLink="true">https://atelierops.net/writings/slsa-l3-without-saas</guid>
      <pubDate>Mon, 30 Mar 2026 00:00:00 GMT</pubDate>
      <category>SecOps</category>
      <description><![CDATA[A self-hosted attestation pipeline using sigstore, GitLab CI, and zero new vendors. With the YAML.]]></description>
    </item>
    <item>
      <title><![CDATA[Error budgets that don't lie about themselves]]></title>
      <link>https://atelierops.net/writings/error-budgets-that-dont-lie</link>
      <guid isPermaLink="true">https://atelierops.net/writings/error-budgets-that-dont-lie</guid>
      <pubDate>Sat, 14 Feb 2026 00:00:00 GMT</pubDate>
      <category>SRE</category>
      <description><![CDATA[Most SLO programs fail by Q3 because they were never tied to a real consequence. The contract template we use.]]></description>
    </item>
    <item>
      <title><![CDATA[Picking the smallest model that does the job]]></title>
      <link>https://atelierops.net/writings/smallest-model-that-does-the-job</link>
      <guid isPermaLink="true">https://atelierops.net/writings/smallest-model-that-does-the-job</guid>
      <pubDate>Tue, 20 Jan 2026 00:00:00 GMT</pubDate>
      <category>MLOps</category>
      <description><![CDATA[A reproducible eval workflow for choosing between vLLM, SGLang, and llama.cpp under a fixed VRAM budget.]]></description>
    </item>
    <item>
      <title><![CDATA[How to write an ADR no one will read (and how to write one they will)]]></title>
      <link>https://atelierops.net/writings/how-to-write-an-adr-no-one-will-read</link>
      <guid isPermaLink="true">https://atelierops.net/writings/how-to-write-an-adr-no-one-will-read</guid>
      <pubDate>Tue, 09 Dec 2025 00:00:00 GMT</pubDate>
      <category>Politics</category>
      <description><![CDATA[A short essay on style, structure, and the political surface of decision records.]]></description>
    </item>
    <item>
      <title><![CDATA[Service boundaries through MCP contracts]]></title>
      <link>https://atelierops.net/writings/service-boundaries-through-mcp-contracts</link>
      <guid isPermaLink="true">https://atelierops.net/writings/service-boundaries-through-mcp-contracts</guid>
      <pubDate>Tue, 18 Nov 2025 00:00:00 GMT</pubDate>
      <category>Architecture</category>
      <description><![CDATA[Why MCP makes a better contract surface than gRPC for agent-shaped systems, and where it breaks.]]></description>
    </item>
    <item>
      <title><![CDATA[Threat models you can fit on one page]]></title>
      <link>https://atelierops.net/writings/threat-models-on-one-page</link>
      <guid isPermaLink="true">https://atelierops.net/writings/threat-models-on-one-page</guid>
      <pubDate>Sat, 04 Oct 2025 00:00:00 GMT</pubDate>
      <category>SecOps</category>
      <description><![CDATA[STRIDE is a worksheet, not an artefact. We argue for one-page threat models with explicit non-goals.]]></description>
    </item>
    <item>
      <title><![CDATA[On-call rotations that don't burn out the senior engineer]]></title>
      <link>https://atelierops.net/writings/oncall-rotations-without-burnout</link>
      <guid isPermaLink="true">https://atelierops.net/writings/oncall-rotations-without-burnout</guid>
      <pubDate>Fri, 12 Sep 2025 00:00:00 GMT</pubDate>
      <category>SRE</category>
      <description><![CDATA[A staffing model that keeps page rate under 2/week without sacrificing escalation paths.]]></description>
    </item>
    <item>
      <title><![CDATA[Why we don't publish customer logos]]></title>
      <link>https://atelierops.net/writings/why-we-dont-publish-customer-logos</link>
      <guid isPermaLink="true">https://atelierops.net/writings/why-we-dont-publish-customer-logos</guid>
      <pubDate>Fri, 29 Aug 2025 00:00:00 GMT</pubDate>
      <category>Politics</category>
      <description><![CDATA[An argument for authority through public reasoning instead of borrowed brand equity.]]></description>
    </item>
  </channel>
</rss>
