Slow Is Smooth

Illustration for Slow Is Smooth

Coding agents will never tell you the plan is bad. The rest of this post is what to do about it.

Point one at a vague problem and three hours later you have two thousand lines of code that sort of works but falls apart on the first real edge case. You didn't write any of it. You can't read most of it. The only debugging tool you have is asking the same model to fix what it just produced.

This is what the model ships when you don't ship a brief.

The model is built to fill in

It's not a bug, it's a feature. The model is built to be useful, and being useful means never saying no. It will not refuse a fuzzy brief. It will not ask if you've thought this through. The only line it won't cross is something dangerous or illegal. Everything else gets filled in with plausible guesses that look like what you meant. AI can write code, and it can write it well. It just writes the wrong thing as enthusiastically as the right thing.

The leverage was always upstream

The thinking step so often skipped is now the most important one.

ResearchPlanCode
bad research
good research
good plan
bad plan
good plan
good code
bad code
good code

We used to hide that fact behind long timelines and documentation nobody reads. AI made it loud. The failure now happens in three hours instead of three months, sitting right there in the diff, impossible to file under "WIP" and forget about.

The fix is the old fix

Get the agent to grill you before it touches a file. Matt Pocock's skills repo is the cleanest open-source take I've seen. Small, composable skills, deliberately positioned against the heavier frameworks that try to own your whole process.

The standout, /grill-me, refuses to let the agent write code until you've answered: what the actual problem is, what done looks like, what's already in the codebase that this should respect. Most failure modes disappear when the brief survives the grilling.

For a throwaway weekend prototype, none of this matters. Open Claude, ship something, throw it away. For anything anyone else has to depend on, the order matters. Slow at the start. Smooth in the middle. Fast at the end.

The other order doesn't work. It just looks like it does, until it doesn't.