Human Task Switches Considered Harmful

Joel Spolsky’s article Human Task Switches Considered Harmful argues that context switching is particularly devastating for programmer productivity.

The Core Problem

Programming requires holding vast amounts of information in working memory simultaneously—”everything from names of variables, data structures, important APIs, the names of utility functions.”

The Cost of Switching

When Spolsky’s company paused development for a three-week client emergency, “it seemed to take another three weeks to get back to full speed.” He estimates his own task-switch overhead at roughly six hours—meaning in an eight-hour workday, multitasking reduces actual output to just two productive hours.

The Solution

Never let people work on more than one thing at once.

This approach paradoxically increases overall productivity and leads to faster task completion. Good management means removing obstacles so developers can maintain deep focus on a single objective.

The Fundamental Insight

Context switching carries such high cognitive costs for programmers that sequential task completion actually beats concurrent work.

My Takeaway

This validates what every productive programmer knows intuitively: protect your focus ruthlessly. As a founder, creating an environment where deep work is possible matters more than most process improvements.


How do you protect your focus? I’d love to hear at persdre@gmail.com.