Deliberate, structured writing about automation, infrastructure, and systems.
Recent posts
-
Immutable Images Stay Immutable Until Someone SSHes In
Packer and Ansible make image builds reproducible on day one. What breaks the guarantee later is configuration creep, test gaps that only validate the build environment, and exceptions that quietly make servers not disposable anymore.
-
The Barrier Was Time, Not Knowledge
Claude Code compressed the cost of building custom tooling. It did not remove the requirement to know software development.
-
The Source of Truth Problem Isn't Which Tool You Pick
Nautobot, NetBox, and ServiceNow all fail the same way when nobody defines who can write to them, what triggers an update, and how conflicting writes get resolved.
-
Designing Job Templates That Produce an Audit Trail, Not Just a Run
A job template that only reports success or failure cannot support the tier structure that decides what gets auto-approved. It needs to produce a record of what it checked and found.
-
Idempotency Is Necessary, Not Sufficient
Idempotency tells you a playbook is safe to run unattended. It does not tell you how much of the environment it touches or what depends on the thing it's changing, which is what a change classification taxonomy has to add.