Lessons from the Terminal

Twice-weekly field notes on infrastructure, AI, and systems.

What I built, what broke, and the evidence that changed the next decision.

May 2026 Design

The House Network Has Users Too

The easiest person to support on a home network is the person who built it. I know which local name is fragile, which device needs a moment after a restart, and which status screen is only telling half the story. I can route around my own decisions almost without noticing them.

3 min read Read →
May 2026 Product

I Stopped Treating Maintenance as an Interruption

Maintenance used to appear on my task list as evidence that the real work had been interrupted. A certificate needed attention, storage had tightened, an image needed rebuilding, or an operating system wanted a quiet restart. I’d clear the nuisance and return to building.

4 min read Read →
Apr 2026 Automation

The Difference Between a Hobby and a Responsibility

Decision: I’m going to let hobbies justify themselves by curiosity and learning. I’m going to judge responsibilities by whether I can make their total cost legible and accept the tradeoffs that cost creates.

4 min read Read →
Apr 2026 Automation

The Work I Do Not Automate

The maintenance sequence I use for small systems contains an awkwardly manual step. After the reports are gathered and before any cleanup happens, I read the candidates and decide what not to touch.

3 min read Read →
Apr 2026 Productivity

The Restart Was Not the Recovery

A restart is satisfying because it produces motion. The process stops, the process starts, and the terminal returns a clean status. That can be exactly the right repair. It can also leave the system holding the same bad state, an unprocessed queue, and several users who are still refreshing a bro...

4 min read Read →
Apr 2026 Product

The Case for Boring DNS Records

DNS rewards restraint. A short record can sit underneath browsers, certificates, service discovery, remote access, and every note that tells someone where to go. Because the syntax is compact, it's tempting to use records as a clever abstraction layer. Then a troubleshooting session becomes a tou...

4 min read Read →
Apr 2026 AI

Why I Test From the Browser Backward

The browser is where all the private agreements in a web system become one public experience. A button carries the wrong label. A request leaves with the wrong shape. A response arrives correctly but never changes the screen. Each layer may look reasonable by itself, while the person using the pa...

3 min read Read →
Apr 2026 AI

The Cost of One More Convenience Layer

Convenience layers are easiest to add when the underlying tool is almost pleasant. A desktop launcher can remember a model command. A web panel can turn flags into toggles. A helper script can choose ports, directories, and defaults so I don't have to. The first use gets shorter, which is real va...

4 min read Read →