I don't write the code anymore.
I build the system that writes it.

The system you build around the model (the harness) decides whether you get reliable production software. Below: why the old playbook breaks, and the convictions I build my harness from. A way of working follows from them. Click any conviction for the reasoning and the implementation.

The premise

Why the old process no longer works

The classic SDLC exists because writing code was slow and expensive: heavy analysis up front, line-by-line review, a weighty release. The moment generating code becomes cheap and near-instant, those steps optimize for a problem you no longer have. What's scarce now is intent and verification, not implementation, so the loop has to be redrawn.

Then · the SDLC
Plan → Build → Test → Release
Built around code as the slow, expensive part. Implementation was the bottleneck; you wanted to type as few wrong lines as possible.
Now · the agentic loop
Spec → Generate → Validate → Learn ↻
Generation is nearly free. The bottleneck moves to specs, architecture and validation, and the loop runs per change instead of per release.
Read the full premise →
The Harness
1 2 3 4 Specdirection & done Generateagents build Validateproof, not "done" Learnfeedback The model≈ 10% · the engine

The model is the engine, about 10%. The harness is everything around it: the loop that drives it, and the principles you build that loop with. This loop runs per change, many times a day, not once per release.

What I believe

My convictions

These are the positions I hold about building software with agents. A concrete way of working follows from each of them, grouped by the phase of the loop it serves.

The human around the loopwho steers
The proof: task-creator — a simple but production-quality project that doesn't describe this harness but shows it in code. ↗ View the repo