Adam Tornhill is a programmer who combines degrees in engineering and psychology. He’s the founder of CodeScene where he designs tools for code analysis. Adam is also the author of multiple technical books, including the best selling Your Code as a Crime Scene and Software Design X-Rays. Adam’s other interests include modern history, music, retro computing, and martial arts.
Have you seen early productivity gains from AI, only to watch them disappear under growing complexity and production incidents? You're not alone. There's a common reason: many production systems already struggle with technical debt. When AI agents enter the development loop, that debt becomes a multiplier. Poor-quality code doesn’t just increase defects and costs. It also turns promising AI agents into legacy code generators rather than genuine help.
AI cannot read between the lines. It struggles with missing intent, implicit concepts, and surprising dependencies. These aren't new problems, but much of our industry has fallen short in the past. That comes back to bite us. Where a human developer will ask questions and seek clarification, an AI proceeds with what’s there, making its best guess from patterns in code that was never designed to be unambiguous.