Agentic development stole our flow

3 min read Original article ↗

One of the most satisfying parts of programming is flow. Flow is a state where every keystroke leaves effortlessly out from the hand and onto the screen.

Agentic engineering is the opposite. Multiple terminal windows are in-flight at once, and you must constantly pivot, checking progress and nudging agents into spending their tokens productively. Our discipline of deep focus has become interrupt-driven. LLMs have stolen our flow.

I used to think flow was valuable in its own right, but I've come to see it differently: flow is a signal that what once was hard has now become a low-effort task. We earn the right to enjoy flow after the struggle of mastery. Skill is attained through effort, through overcoming seemingly insurmountable problems, and through rakestomping until your brow is left bloodied and battered.

Flow is a reward. A drummer earns the ability to jam through the monotonous practice of paradiddles and rolls. But the drummer’s role isn’t to bounce sticks against surfaces; it’s to control a song's tension and release.

I mistook my ability to enter flow as the value I provided to a team. In reality, engineers are creative problem solvers. They meet a problem with a solution that is affordable to build and operate.

Learning to type syntax was a ladder necessary to reach the higher-order challenges of engineering: architecture, anticipating footguns, distilling complex domains into simple abstractions, communicating trade-offs, knowing which problems to solve, and using your unique technical understanding to spot new product opportunities. I don't know if future engineers will be able to learn these concepts without learning to code by hand. It still feels necessary. But I've come to see it as a temporary scaffold.

This led me to the troubling realization that most of my time in engineering was spent on low-skill work. Coding is low-skill. This was hard to admit, as it felt like I traded ten thousand hours for this skill and was only left with RSI. Now, I thank these agentic tools for removing this low-skill work from my plate. I have lost flow but gained time for the high-skill work that pushes me back into learning.

Low-skill work limits the number of problems you see. It increases the cost of failure and the price of ambition. Yet, it’s also comfortable, which makes it hard to leave behind. Flow is meditative. It’s a welcome break from the strenuous act of design.

Now, almost a year into agent-based development, we are feeling the cost of cognitive debt. The rate of new code exceeds our speed of comprehending it. I think overcoming this cognitive debt will ultimately be recognized as a new skill. We may find it's a symptom of an underdeveloped ability to multitask or to solve problems through indirection. Universities may make students read more than they write. Or maybe, the real skill is commanding these tools to produce less but of higher quality. Either way, the industry is collectively going through the discomfort of letting go of flow and being forced back into the struggle of learning.