Full-stack software and 3D-printed hardware. This whole site is one of the builds — a self-hosted Rust binary that runs its own DNS, TLS, and passkeys.
Featured
-
Project · June 28, 2026
recon-gen
One typed specification of what it means for a bank's books to be correct — and the dashboards, the SQL, the test scenarios and the regulator-ready audit PDF all derive from that single spec, with a r…
-
Blog · June 24, 2026
How to make accuracy from precision: How I make AI write software I can trust
There's a comment in a Python file somewhere that reads # type: ignore[no-untyped-def]. It looked like type protection. It was written in mypy's rule-code syntax. The project uses pyright. Pyright sil…
-
Project · July 1, 2026
FeOphant
It speaks the real Postgres wire protocol, so the proof is one command: connect with psql (or pgbench, or any Postgres driver), CREATE TABLE, INSERT, SELECT — and the data is still there after you res…
-
Project · May 17, 2026
claude-plan-bridge
Bridging Claude Code's per-session task list with a durable PLAN.md.
Latest
-
Blog · July 13, 2026
Yes I'll cater to the bots with MCP
So in working on the hotchkiss-io site, I've run into a common workflow pattern.
-
Blog · July 9, 2026
You Just Turn a Knob and it Goes Faster, Right?
If it's not obvious, I love solving problems that are useful. They don't always have to be in software and frequently they aren't.
-
Project · July 4, 2026
My Test Profile
I keep a voice profile so my writing stays mine no matter who drafts it. This is the same idea for testing: the operational summary of every check, lint, gate and proof layer I've had to build, kept c…
-
Blog · July 3, 2026
Let's crank up the formality
So Fable is back out today (July, 2nd) so what better way to put it to the test than to take it for a spin on a VERY challenging problem I've wanted to look into for recon-gen.
-
Blog · July 2, 2026
Instrumenting Playwright, the gift that keeps giving!
It started with a dashboard that wouldn't finish loading. All the built-in checks failed me — the deploy was clean, the data was in the tables — and the dashboard just sat on its spinner until the tes…
-
Blog · June 28, 2026
Wayback Machine Saves Me Again
I've run my own website on my hardware since roughly 2003. That's a long time for a side project and despite my best efforts to keep things backed up and working, time gets away from me. That's why I…
