Steve Yegge’s article about programmer burnout (“AI vampire“) with article by Margaret Storey cognitive debt Started an ongoing conversation about programmer fatigue and software quality – two topics that should be connected, but often aren’t. Steve argues that constant programming with the help of agentic AI leads to burnout; It’s fast, it’s fun, but keeping up with your agents takes a mental strain. He recommends no more than 4 or 5 hours of programming per day with agents. I can skeptically say that most software developers spend at most 20% of their time writing code, leaving about an hour and a half of time wrestling with agents – but that’s beside the point. Yegge’s point about burnout is important, and is in line with what friends have told me. At some point, you have to put the laptop down.
The story tells a different thing. Agent engineering is very good at creating software that works, but that you don’t understand properly. Like humans, agents can generate a lot of spaghetti code. They can “design” complex and illiterate software structures—I hesitate to call them “architecture”; This is what happens in the absence of architecture. Agents are very capable of making technical debt – and not the kind of meaningful technical debt that lets you release a product on time with the knowledge that you’ll have to pay it back with interest. If no one is looking at the code seriously, the debt can grow without limit, such as not checking your credit card balance. What’s worse – and this is Story’s contribution – while technical debt is growing, developers are losing track of the design, the structure, the architecture. She calls this “cognitive debt.” It’s not just the code that you have a problem with; Finding and fixing those problems is harder than expected because you’re unclear about the structure of the code you’re working with.
Other voices have also said similar things. SonarSource blogs about how AI is reshaping tech debt And creating new burdens, new types of labour. In “legendary agent month,” Wes McKinney links the problem of burnout to the introduction of “accidental complexity” and “agent scope creep”, while Tim O’Brien writes While scope creep is nothing new, AI has supersized its growth. And Addy Osmani writes Finding your parallel agent limitsHold on to what you are able to achieve without compromising your work or your life.
Sadly, cognitive debt and burnout are nothing new. With or without AI, we’ve all been up until 4 in the morning working on a bug that won’t go away or pursuing an interesting idea to its end. Sometimes this is heroic, but AI threatens to turn it into a way of life. AI fatigue is realAs Siddhant Khare writes, and this is something we need to talk about. Tiredly, it’s tempting to say “it works, it looks good, and it passes our tests” without considering how the code fits into the overall scheme. With 10x code generation, you also get 10x the loan load, and that’s optimistic. When the debt curve rises rapidly, the emphasis is placed on strategies to manage that debt past the breaking point.
The problem with cognitive debt is that it ultimately makes new features and bug fixes difficult or impossible. The code has become so complex that it cannot be changed. I’ve certainly done this with hand-written code: added a feature without thinking enough about how the new code would fit in, added some more code later, and then – when I needed to add a third feature – discovered I’d created a problem that wouldn’t be easy to fix. The right things were there, but in the wrong places because I wasn’t thinking about the overall structure.
This is a common problem with handwritten code; This is almost always a problem with legacy code where the original developers and maintainers no longer exist. We need to understand that this is also a problem with AI-generated code, which has been known as legacy code since the day it was written. Someone will have to repay the debt. As Storey writes, “Speed without understanding is not sustainable”: not for humans, not for machines. If you understand the structure of what you’re building, you can prevent the AI from creating a problem in the first place, or you can use it to write a solution. If you don’t understand the structure or can’t describe it to the AI, you are lost.
Cognitive debt accumulates much faster when you’re tired. Burnout has always been a problem for programmers, especially those who really love programming: you stay up all night trying to solve a problem. And, while some programmers resist using AI to write code, those who use AI frequently find that it exacts the same toll: it is difficult to stop. This is its own kind of hard work: hard work that gives you a sense of accomplishment and fulfillment, but still leaves you empty.
Agents may not be subject to burnout, but the humans controlling them are. Agents are becoming increasingly more capable, but they still cannot maintain an understanding of the size and structure of a project for long periods of time. This is our job. They can pay off technical debt, but only when given proper guidance; This is also our job. And if we get tired we won’t be able to do anything.