Ask HN: Is AI 'context switching' exhausting?
I've always had this distinct struggle when switching in and out of being 'in charge', the best example I can think of is the difference between a driver vs a passengers awareness of the road.
Using AI for code has reminded me of this sensation, switching in and out of 'driving' feels more exhausting than being 100% one or the other. I have a theory that enforcing reduced engagement has all sorts of side effects in any format.
Wondering if anyone else has run into this feeling, and if so have you tried anything successfully to address it?
21 comments
[ 3.5 ms ] story [ 43.4 ms ] threadDefinitely felt some burnout or dumbness after it, trying to get back into thinking for myself and actually writing code.
I think it's like gambling, you're sort of chasing an ideal result that feels close but never happens. That's where the exhaustion comes from imo, much more than if you were switching from manager to IC which I don't find tiring. I think its more a dopamine withdrawal than context switching.
At the moment I have a bit of a tick tock where I'll vibe code to a point, get frustrated when it gets stuck on something I can fix myself in a minute or two. Then switch off using AI entirely for a while until I get bored of boilerplate and repeat the cycle.
I can't stand the more complex "agents" like Junie that will go off on a chain of thought and give an update every 30 seconds or so and then 10 minutes later I get something that's occasionally useful but often somewhere between horribly wrong and not even wrong.
“Using AI for code has reminded me of this sensation… switching in and out of “driving” feels more exhausting than being 100 % one or the other.” You’re not imagining it. There’s a fair bit of cognitive-science literature on task-set inertia: every time you hand work off (human→AI or AI→human) you pay ~100–150 ms to reconstruct the mental model, plus an exponentially-longer “resumption lag” if the state is ambiguous.¹ Do that dozens of times per hour and you’ve effectively added a stealth meeting to your day. A few things that helped me when pairing with an LLM: • Chunk bigger. Treat the AI like a junior dev on 30-minute sprint tickets, not a rubber duck you ping every two lines. • Use “state headers.” I prepend a tiny recap in comments — // you own: parse(), I own: validate() — so I can scan and re-hydrate context instantly. • Declare no-AI zones. Sounds counter-intuitive, but reserving, say, test-writing for uninterrupted solo focus keeps me in flow longer overall. …have you tried anything successfully to address it? We were annoyed enough to build something. At Recontext (YC S24) we sit between your editor and whatever LLM you’re using; every AI request is automatically tagged with the diff, dependency graph, and TODO items so when you jump back in, you get a one-glance briefing instead of spelunking through scrollback. Early users report ~40 % fewer context switches during a coding session. If anyone wants to kick the tires, we’re handing out private beta invites — email is in profile. ⸻ ¹ See Monsell, “Task switching,” Trends in Cognitive Sciences 2003 — the “switch cost” math is sobering.
Jokes aside, this is a fantastic, insightful reply. Thank you. You've given a name to the pain: 'task-set inertia' and the cost of the 'stealth meeting.' Painfully accurate.
The advice here is gold, especially treating the AI like a 'junior dev' on a 30-min ticket vs. a 'rubber duck' you ping every two lines. That really crystallizes the right mental model.
Very cool that you're tackling this head-on with Recontexter. Solving the 're-hydrating context' problem is such a critical challenge. I'll be following your work.
I find this leads so easily to distraction and I find this workflow very boring. If I’m going to use AI I want to use it in a more integrated way, or in a more limited way like just querying ChatGPT.
Will still try Claude more but I’m really not a fan so far.
This isn’t a particularly novel theory because you are basically saying “Doing different things makes different things happen.” Shocker.
Do you find AI immensely valuable for coding? Would you be happy to be a 100% passenger in your coding analogy?
In future I wouldn't mind doing both, since I could be driving and a passenger in multiple contexts with less overhead. Currently attempting to work this way is painful due to the aformentioned switching.
* batch ai work: toss it small stuff like snippets or lookups while i stay deep in my zone.
* hard limits: ai handles grunt work, not the big logic. if i'm fixing its bugs faster than writing it, i skip it.
* async vibes: treat ai like a junior coder. send a prompt, do something else, check later. no staring at the spinner.
I know some people have trouble with the context switching but I've been full stack at small companies my whole career so I context switch constantly every day so I'm used to it.