Blog
The one real user of my photo tool was already faking a feature with a workaround. That workaround was the specification.
A desktop-first photo tool reviewed mostly from a phone, and the CSS grid that refused to behave on the one screen it was being judged on.
Nearly every CI job began by fetching and compiling the same tools. Baking them into one image instead, and what that saved per pipeline.
Burned out more than once across twenty years, and the point is that none of them looked the same as the one before it.
A Rust scaffolder with an AI codegen path that drafts a real command, then refuses to hand it over until it compiles and passes lint.
A correction to my own post: the culler does contain machine learning, and the distinction I drew between ML and AI does not survive scrutiny.
Setting up an AWS billing alarm before you need one, with a KMS gotcha in the middle that stops the alert ever reaching you.
Choosing a CLI library in Go and Rust. Go is a ladder you climb from the standard library; Rust asks a different question much earlier.
Dropping the Windows build of a photo tool rather than fixing it, and why that is the right call for a one-person project.
Running three different coding agents against one repository, and the house rules that stopped them undoing each other's work.