Friends, welcome to my little corner of the internet where I talk about engineering craft, thoughtful leadership, and the patterns that shape how we work and grow. As a reminder, I’m Sahana. If you missed the intro post, you can read it here.
Read time: 4 minutes
It’s 5pm on Friday. I’ve just spent the last 3 hours context switching like I’ve never context switched before. I had 12 things I needed to get done by EOD and I have dinner plans. 5 bug fixes, 3 new features, and 4 nuanced customer questions I need to answer. Guess what happened? I locked in. I took on 4 tasks at a time (not so crazy when starting a task just means spinning up an agent), checked back in to make key decisions (thank you, notifications) and knocked everything out in record time.
Every multi-tasking/flow-state book will tell you that that’s not supposed to happen. Focus on one thing at a time with a long unbroken stretch of attention to do your best work, they say.
But what I just experienced was time flying by as I got in a beautiful rhythm of high output. It was challenging and efficient. It sure felt like flow state.
I am aware that there is an overwhelming amount of research on on how multitasking is ineffective.
“Even brief mental blocks created by shifting between tasks can cost as much as 40% of someone’s productive time.” - Psychologist David Meyer
“People can’t multitask very well, and when people say they can, they’re deluding themselves. The brain is very good at deluding itself.” - Earl Miller, Picower Professor of Neuroscience at MIT
The researchers and psychologists aren’t wrong, of course. Most multitasking looks like: half-present in Slack, half-present in meetings, half-present in a code review, not doing a very good job at any of them.
But the research was conducted on humans who owned every ounce of every task. If your work leverages AI agents, that’s not the world we live in anymore.
Two years ago, switching from a bug fix to a customer question meant reloading everything myself. Now, an agent’s already queried 5 systems, pulled the logs, considered the options, drafted the response, or run the regression test suite.
So what is the real cost of context switching into a task that an agent has done the heavy lifting for? Mostly, just approving or redirecting.
My hypothesis is that the cost of switching into a task scales with how many decisions the task still needs from me. We’ll call it “decision density.”
A lower decision density task is cheap to switch into. A customer asks you to clarify the character limit on a particular field, an agent queries the codebase and drafts the response. Not a lot to consider when you copy paste the number.
A high decision density task is expensive no matter how small it looks. Reviewing a new hires first large PR requires a different level of attention and detail. While an agent can help, the responsibility of the micro go/no-go decisions lies with me.
Leveraging an AI agent doesn’t eliminate switching, it decreases the decision density, which is most of what makes context switching expensive in the first place.
Most flow-state advice treats “one task at a time” as a precondition. Why? You enter flow state “when skill and challenge are matched closely enough that effort disappears”. Once you begin to automate the rhythm of moving between tasks, it stops feeling like context switching in the cognitively expensive sense and starts to feel more like a musician moving through a familiar piece. It’s fun.
Agents lower decision density but how do you find your rhythm? To get practical, here’s what’s worked for me:
All agents notify - Every agent working in the background pings me when it needs something, even the company’s internal agent. The notification is how I triage: if the next step seems small (a quick security approval), I switch in right away and unblock. If not, I make a mental note and finish what I’m doing first. This doesn’t make any task cheaper, but it ensures I’m intentional about every switch.
Keyboard shortcuts - If you’re a vim user, you know, the best way to find flow state while you code is to never have your hands leave the keyboard. My keyboard shortcuts allow me to cycle through the different apps/windows where my agents are working. Try it for an hour, it’ll start to feel like muscle memory.
Know your limits - I know myself. I can’t context switch in and out of code reviews, writing, or deep creative work, and I can’t run more than one very large coding project at a time. So I don’t try. These are high decision density tasks that don’t benefit from rapid context switching.
A good old prioritized todo list - I never lose track of any task and what’s most important. This also takes care of the cognitive load of sequencing.
It’s worth calling out, my old flow state, as someone who wrote a lot of code, was harder to enter and harder to leave. Getting pulled away from a coding project felt like getting yanked out of a dream (ak! I can’t lose this thread!). But it was pure. You were building, for the love of building.
This new flow state feels more like a sprint to the finish line. You’re holding disparate context, juggling more open loops, and you’re quite drained by the end of the day. Not as romantic.
But, if you’re motivated by output and impact, there’s still a high. Less “I lost track of time because I love my craft.” More “I lost track of time because I’m delivering.”
—
Our workflows are changing by the week, so who knows, this may all just be a short term optimization. But I don’t think context switching is an excuse anymore. What I know is that those who develop their ability to context switch quickly and maintain the quality of their output will have an advantage. And maybe, if you’re lucky, you’ll find flow state while doing so.
