Agents, coding by hand, and nap attacks
By the way, I posted a follow-up about the concerns I have with agentic development.
What should a recent software engineering graduate do to advance in the industry, in June 2026? There are a flurry of different opinions on the internet right now. No, I don’t know the answer. This has been a fairly confusing time for me.
The one that stands out for me: I like coding by hand and working with agents. Much of the online advice tries to side with one or the other. And, to be clear, I don’t think the advice on either side is bad; bits and pieces can co-exist. Yes, agents can be helpful to software engineers. No, agents cannot effectively replace them; I doubt they’ll reach that point with LLMs as the backbone. I don’t think someone is “behind” if they don’t use agents, just like they’re not “behind” if they don’t exclusively program in a modern language with nice features. It’s a technology fit for certain groups of engineers in certain use cases, but not all of them.
There are people pushing full steam ahead with agentic development, while others are sick of even hearing the word. There are people I’ve spoken to, both back home in California and in Atlanta, who like the programming portion for what it is. I resonate with this viewpoint. There is no other feeling like the one of pushing against the abstraction laid out in front of you, full focus, and coming up with your own. Seeing how the behavior of your program changes falls naturally into this process.
On the flip side, I’m drawn to the thrill of launching things. This isn’t in an entrepreneurial sort of way. I think it’s my way of pushing my ideas onto the world, beyond the programming abstractions in front of me. I want to see how the world reacts to it.1
On another note, I’ve been having nap attacks recently. The attack usually hits during my mid-afternoon slump, so I originally attributed it to just that. But no, I think this is something more than that. On days where I’m not managing agents, it never hits as hard. Normally I would get by with coffee, but when this happens, it is literally impossible to focus unless I lay down for a bit. I take off my headphones, and suddenly my vision gets blurry.
Installing the sofa in my new apartment has helped to soften the transition a little bit.
Once I lay down and close my eyes, it’s like my brain gradually stops pounding. I usually wake up and I can keep going for another hour, but it inevitably hits again. I go lay down some more. Not long afterwards, I might not be able to even look at what the agent is doing without feeling like my head’s gonna explode. All I need for this to trigger is seeing Claude Code clicking around on an iOS simulator.
This is a phenomenon that has been written about before by people far more experienced than me. Now that the easy work can be automated, what’s left is mostly the challenging design work, which is exhausting. I just (naively) never thought it would hit me this early in my career.
There’s a feeling where if you’re immersed in a piece of media for too long and then exit, my head pounds for a bit and I need to re-adjust. This happens to me when I play games. Working with agents is like this combined with the information overload of speedrunning systems design.2 If agents have any place in a production system, it would be with a human at the helm of the system design, drafting and reviewing how systems are designed and reworked over time.3
To pile more fuel onto the fire, it doesn’t help that with the correct systems in place, agents can run 24/7. In conjunction, it is desirable to have a mechanism where the human can check on the agent. When I tried this, I sometimes got the urge to check on the agent to see if it was stuck on something, or if it was taking things in a direction I didn’t want it to go. These checks have actually led me to re-steer the agent a few times, which further justifies their existence. But they’re also exhausting to deal with.
The lack of determinism in agents, even the ones powered by the best LLMs, makes this a difficult problem. Maybe the correct direction is to clamp agents down into a more deterministic system, such as a harness with issue tracking and very specific loops. I’ve talked with people working on this, and I think this direction shows some promise.
I still don’t really have the answer to the question in the beginning; I feel like few people really do. I’m just guessing and leaning into what I’ve experienced. Code by hand, work with agents, and if the nap attacks hit too hard, go and live a little.
-
I really like how this idea was discussed in this Dialectic podcast episode with Celine Nguyen, hosted by Jackson Dahl. ↩
-
As a sidebar, games usually have built-in downtime (e.g. the time between quests in an open-world game), and only certain genres involve working with a ton of inputs and information at once. ↩
-
On a micro level, I would never tell Claude to “make me an agentic coding harness and package it fully within an iOS app”; it falls apart once you hit the architectural design side and realize that iOS is far too locked down. Sometimes I use LLMs to help me brainstorm what’s theoretically possible, though. ↩