lessons-learned

Hard-earned lessons from projects, failures, and long arcs of work — distilled for reuse rather than performance.
18
Oct
Every Rule Has a Scar

Every Rule Has a Scar

The rules file is for how to work. Everything else has a home, and putting it in the wrong one is how a rules file turns into a junk drawer.
5 min read
11
Oct
The VM That Never Sleeps

The VM That Never Sleeps

Last year I wrote a whole post about letting a jump box kill itself, because I couldn't be trusted to shut it down. The agents clean up exactly as well as I did. Same answer: don't ask, enforce.
5 min read
04
Oct
The Only One in the Room

The Only One in the Room

I've been the only technology person in the room for most of my career, and I never learned to write software. This year I built an environment where AI agents do most of the development, plus the rails that keep them from doing damage. This is the record, not a victory lap.
5 min read
01
Mar
I Gave Up Too Early. The Problem Was One Line.

I Gave Up Too Early. The Problem Was One Line.

Three months of Google Analytics on a blog I built to avoid Google Analytics. The problem was one Caddy directive. I stopped looking too soon.
2 min read
25
Dec
Transformation Without Narrative Is Easy to Erase

Transformation Without Narrative Is Easy to Erase

When nothing breaks, no one notices. This is about the quiet failure mode that follows successful transformation—and how narrative preserves continuity.
1 min read
23
Dec
I Didn’t Break Git. Git Broke My Brain.

I Didn’t Break Git. Git Broke My Brain.

A small failure that exposed a bigger assumption about tools, context, and how easily mental models can drift.
2 min read
22
Dec
A reflection on visibility, infrastructure, and doing the work anyway.

Building Real Technology Inside Facilities

Building stable systems inside a large institution taught me that quiet competence is fragile—and narrative is part of the job.
3 min read