Writing & build logs.
Essays on software development, web builds, and AI tooling. Plus build notes from what I'm actually working on right now.
Accurate to me, misleading to you: every copy fix this month was the same bug
Every copy change I made to captainrandom in July traced back to the same failure mode: wording that was accurate to my intent and misleading to the person reading it. That’s a different bug from a factual error. Factual errors you catch by verifying; this one only shows up when you read from the wrong seat.
Ten drafts at 08:35, zero at 08:22: ground-fetch quality was always the variable
Four days into the 14-day pillar sprint, the cron ran on time, ranked 150 clusters, and produced nothing. On day six, it produced ten drafts. The schedule hadn't changed. The source layer had.
The git hook matters more than the /privacy page
Adding a /privacy route tells users what you do with their data. A pre-commit hook stops your own data leaking into published content. On a personal site these are different problems with different solutions: one prevents incidents, the other documents them.
The schedule held. The composer failed. That's what July's headline rescues exposed.
Three weeks of cadence data from ukcalculators: the approval gate works, the schedule holds, and every high-signal publish — May HPI, fiscal-drag projections, the Santander rate — required manual intervention when the composer failed. The bottleneck was never the schedule.
I wrote it as a quality signal. The prospect read it as a rejection.
Five copy fixes on captainrandom in 2026. Contact page, learning hub, creative sub-brand, album credits, a placeholder. Different surfaces, same root: the copy said what I intended; a first-time reader read something different.




