Writing
Right now this is engineering post-mortems — the failures that reported success. That’s the current contents, not the remit.
Most of my attention at the moment is on what AI is doing to the way software gets built. I work alongside agents daily, and I’m a proponent of spec-driven development: say precisely what the thing should do, then hold the output to it. What I want to write about is the unglamorous half of that — what a specification has to contain before it’s worth anything, which skills and tools actually earn their keep, and where the whole approach quietly falls over. Underneath it is the larger question I find hard to put down: as this gets good, what do we decide to keep doing ourselves, and why.
Outside that, I build things and like them clean, efficient and hard to break. I read more than I finish, travel when the chance comes up, and lose whole evenings to whatever open-source thing is currently shiny. I’m an ordained minister, officiating my second wedding soon — which turns out to be a different kind of engineering problem, and a better one. And there is a children’s story in my drafts that I intend to illustrate myself, badly at first.
So: expect the range to widen. Agents and specs, family, books, the occasional strong opinion about software, and eventually something with pictures in it.
Jolly List: a Christmas shopping app, and I need TestFlight testersAn iPhone and iPad app for budgeting, buying, tracking and wrapping holiday gifts. It's in beta, and I'm looking for TestFlight testers.
Sixty-Two Days Without a Backup, and Nothing Reported a ProblemA macOS disk-pressure incident, the three tools that misled me, and the four monitoring mistakes I made afterwards.
nginx add_header doesn't merge, and it takes your security headers with itOne add_header inside a location block silently deletes every header inherited from the server block. Your HTML keeps them. Your CSS and JS quietly lose them.