Blog

Thoughts on software, specifications, and the future of development.

Your Specs Are Trapped in Chat Logs

[March 25, 2026] Every AI conversation where you describe what your software should do is a specification you wrote and then threw away. The knowledge is there. It's just locked in the wrong place.

Determinism Isn't Going Anywhere

[March 18, 2026] AI is great when you need creativity and latitude. It's computationally wasteful when the process is already known. Deterministic systems aren't legacy — they're the endgame.

The Study of Apps

[March 11, 2026] Code became the source of truth by accident. We think specifications should be. Here's why — and what AI makes possible.

Agentic Workflows Are Just Automated Specifications

[February 24, 2026] An AI agent executing a business process is really just running a spec. If the spec is wrong, the agent is wrong. Here's why that matters.

The Discovery Phase Nobody Wants to Pay For

[February 17, 2026] The highest-leverage investment a team can make is understanding requirements before writing code. So why does everyone skip it?

AI Doesn't Replace the Spec Problem

[February 3, 2026] LLMs can generate code faster than ever. But without specifications, there's nothing to verify it against. More code, less understanding.

The Locked Spec

[January 20, 2026] What happens when a specification is validated, signed off, and locked? It becomes a building block that AI and teams can trust forever.

Why Natural Language Specs Aren't Vague

[January 6, 2026] The obvious objection to natural language specifications is precision. Here's how to make them rigorous enough to be machine-actionable, without inventing a new formalism.

The Programmer's Oath, Revisited

[November 25, 2025] Uncle Bob proposed a professional oath for programmers. Now that AI agents write code too, what should that oath look like?

The Cost of Reimplementation

[November 4, 2025] HTTP clients, date parsers, cryptographic algorithms, rebuilt from scratch in every language. How much has the industry spent solving the same problems over and over?

Software's Missing Middle

[October 14, 2025] Every other high-stakes profession has an institutional layer between intent and implementation. Software skipped that step. What would a 'building code' for software actually look like?

Technical Debt Is Specification Debt

[September 23, 2025] Teams don't accumulate bad code, they accumulate missing or drifted specifications. The code is a symptom. The spec is the disease.