Biggest lesson from 2025: AI writes better code when you don't let it code

Published: December 25, 2025

For my latest client project which just went live (Internal AI Tool - React UI, PHP backend, MySQL DB, LLM integration) I started off with discussing, evaluating, researching, interrogating and planning with AI....

It was nearly 2 days...

and not a single line of code had been written. The repo was full of discussion docs, plans, API specs, research notes.

A year back I would have just said 'Build this.'

Doesn't work that way.

Hours debugging. Something worked, something didn't. AI took judgment calls I didn't understand. Security holes.

Huge rework. Painful.

Then I came across videos and guides from builders using specs, plans, Claude.md. Started practicing those.

The change: I stopped saying 'build me this.'

Now:

I describe the requirement, give it context about user and business, how it would be used. Ask for high level plan first.

Then starts the interrogation...

Every component. Every trade-off. Architecture flow. Backend setup. Frontend setup. Does this API call happen from the frontend or serverless? What kind of security - API, Auth, CSRF tokens, or unsecure? Parallel processes, concurrent users, costing, latencies ....

Hours pass. No code written. Only .md and .txt files from discussions and research.

I do not let go until I understand the whole functionality and every single component and API call.

Then I ask for detailed, phase-wise implementation plan. Each phase needs success criteria. Something I can validate. Proof that piece went right.

Still no code.

Then I review the implementation plan line by line.

For full-stack builds, my frontend AI coder is the master coder, working across multiple repos and directories - frontend, database, backend. With CLI/ API access to GitHub, databases, EC2, deployment platforms, servers. I capture this in the local Claude.md files.

More than a day. Not a single line of code.

Only once I'm totally clear on what's being built and how...

I make a cup of tea.

And I type one of my favorite commands:

Execute Phase 1.


Resources