top of page

Working code isn't necessarily good code

AI, Quality Engineering, Engineering
Working software with hidden internal complexity

AI coding agents are getting remarkably good at producing code that works. But passing the compiler and implementing the requested feature doesn't tell us much about what happens to the codebase underneath.


Erik Doernenburg documents his experience adding a real feature to an existing application with coding agents. The interesting part isn't whether the agent could implement it — it could. The problems were subtler: unnecessary complexity, duplicated logic, missed existing abstractions and fixes that solved the immediate error while making the design worse.

These are exactly the kinds of issues that can survive functional testing.


As agents allow us to generate and change more code, internal quality becomes a scaling problem. The faster we can produce code, the more important it becomes to ensure that the codebase remains understandable and easy to change.


A useful read for anyone already using coding agents for real development rather than experiments.

Source:

Martin Fowler

Read full article here:

My take:

The biggest thing I’ve learned from developing with agents is that you still have to review the outcome. I’m not a developer, but I understand good engineering practices well enough to ask an agent to clean up the code, remove unnecessary complexity, or question its own decisions.

Agents can often fix their own work — if you ask the right questions. So learning how to review the outcome and prompt the agent to challenge its own solution may be just as important as prompting it to build something in the first place.

bottom of page