All writing

Work & Career

Translated from the original Chinese essay · Read the Chinese original →

"I'm really not slacking off, but at the end of the day, why does it feel like I haven't accomplished anything?"

If this sounds familiar, it may not be a lack of focus—it's that you're juggling too many threads.

We tend to think low productivity is procrastination, but more often, it's cognitive resources being quietly drained by task switching. Just like thread switching in a computer, our brains incur a "context switch cost." A meeting, a Slack popup, an interrupted train of thought—each one acts like a CPU thread switch: flush the cache, save the context, restore the state, and enter a new task. This whole chain continuously consumes cognitive energy, leaving us busy all day with no sense of output.

It's not that you're not doing enough; it's that you're switching too often.


01. The Switching Overhead of a Multithreaded Brain

In the engineering world, thread switching has a cost. When a CPU switches between threads, it must save and restore context, interrupt the execution flow, and reload instructions and data. Even though these actions happen extremely fast, they accumulate into significant performance loss.

Similarly, our multithreaded behavior at work—writing some code, checking messages, replying to an email, joining a meeting, then returning to debug—turns us into processors that constantly switch contexts.

The problem is that the human brain doesn't have such a precise scheduling mechanism. You don't record state as accurately as an operating system; instead, you have to manually recover by "rethinking where I was." And that recovery process is essentially cognitive reconstruction.

This is the "cognitive fatigue" caused by context switching. Every time your attention shifts, friction arises between the old and new tasks. It's not a lack of energy; it's that your focus is scattered too thoroughly.


02. Procrastination Isn't Laziness; It's Cognitive Residue

Many programmers doubt themselves with "Am I procrastinating too much?" But behind that is often attention residue. This concept, proposed by psychologist Sophie Leroy, means that when we switch from one task to another, our attention doesn't transfer immediately; part of it remains on the original task, reducing efficiency on the new one.

For example, you just finished reading a requirements document and are about to start coding, but your brain is still digesting the "why" behind what you just read. You think you've entered execution mode, but your cognition is still stuck in analysis mode.

Over time, this stuck feeling turns into "I always seem to start slowly" or "Why can't I get into it even though I have time?" We mistake it for procrastination, and the more anxious we get, the less efficient we become, trapping ourselves in a vicious cycle.


03. Single-Threaded Task Mode: A Solution to Save Attention

We can't completely block out distractions, but we can proactively build a single-threaded task mode to reduce the switching penalty.

Its core isn't forcing yourself to do only one thing, but allowing yourself to have only one primary context in each block of time.

Specific practices include:

  • Set only 3 key items to advance each day, avoiding the false plan of "I need to finish 8 things today";
  • Arrange your schedule by context consistency, such as handling only requirement-related tasks in the morning and only coding in the afternoon;
  • Reserve time for handling fragmented requests, batching responsive tasks instead of interrupting constantly;
  • Set task buffer periods to avoid back-to-back tasks, giving your cognition space to warm up and cool down.

These strategies aren't about getting everything done, but about letting attention take root in the right place.


04. The Approach from The Twelve Week Year Is Worth Trying

Many people are already numb to annual goals and quarterly reviews. Instead of setting one big goal a year, why not do a small sprint every 12 weeks?

The book The Twelve Week Year proposes a simple yet effective mental model: compress a year into twelve weeks, with each cycle being a complete loop of "goal setting → action → review."

Its value lies not only in narrowing the goal scope so we can see clearly what matters most right now, but also in shortening the feedback loop so we see results faster and maintain motivation. Furthermore, it reinforces an execution-first mindset, ensuring plans actually land without being diluted by interruptions.

In our work, this method is especially suited for important tasks without clear deadlines, such as skill improvement, knowledge organization, internal tool optimization—the very goals most easily interrupted by multithreading and buried by daily chores.


05. What We Need Isn't More Effort, but Fewer Switches

Many professionals are already working hard enough. What we lack isn't more hustle, but more focus.

Imagine your state when writing code: before getting into the flow, you have to review the old code, sort out the logic, and open the IDE to debug. In this process, every interruption—a meeting, a notification, Slack, a colleague tapping you—forces you to start over. You're not slacking; your thread has been preempted too many times.

In engineering terms, we need to reduce context switches, improve cache hit rate, and extend thread runtime. In human terms, we need to build a stable attention field for ourselves, allowing thinking to grow.

Stop labeling yourself as a procrastinator, and stop believing that being busy all around equals efficiency. True efficiency is escaping from multithreaded chaos and rediscovering that focused version of yourself.


A Final Reminder

Sometimes we have no choice but to multithread—for example, as a tech lead, you have to manage multiple projects and respond to multiple interruptions. But even so, we can still protect our cognitive space in a structured way: treat "task switching" as a task itself, put "interruption handling" into the plan, schedule buffer time, and reduce cognitive jumps.

We are not machines; we can't be as precise as a thread scheduler. But we can design a work rhythm that better suits the human brain.

Stop blaming yourself for procrastinating again. It's not laziness; it's a system design problem.