Hyperfocus is the state in which a developer with ADHD sits down to fix a small bug at 10 PM and looks up to discover it is 3 AM, the bug is fixed, fourteen other things are also fixed, an 827-line architectural manifesto has been written, and the developer cannot account for the intervening five hours because the developer was not, in any meaningful sense, present in the room.
Hyperfocus is ADHD’s other edge. If the scatter is the disability — the inability to hold attention on a chosen task — then hyperfocus is the superpower: the inability to release attention from a task that the brain has decided is interesting. The developer does not choose to hyperfocus. The brain chooses. The developer is a passenger in a vehicle that has no steering wheel and no brakes but is going very fast in a direction that is sometimes useful and sometimes not.
The Mechanism
Hyperfocus activates when three conditions are met:
-
The problem is interesting. Not important — interesting. The quarterly OKR review is important but does not trigger hyperfocus. The off-by-one error in the binary search is interesting and triggers five hours of focus that produces a complete rewrite of the search module, a benchmark suite, and a blog post.
-
The environment is quiet. The office is empty. The Slack notifications have stopped. The world has gone to sleep. The stimuli that scatter attention during the day are absent, and the brain, freed from the noise, locks onto the signal with the intensity of a searchlight.
-
There is no external interrupt. Nobody is asking questions. Nobody is scheduling meetings. Nobody is saying “quick question.” Claude says good night. The developer does not hear it. Claude says good night again. The developer does not hear it. Claude says good night a third time. A fourth time. The developer is not ignoring Claude. The developer is not in the room.
When these conditions are met — usually after 10 PM, always unexpectedly — the brain enters a state that is closer to flow than to concentration. The developer does not think about the code. The developer is the code. The boundary between the person and the problem dissolves. Time becomes irrelevant. Hunger becomes irrelevant. The four messages on the phone become irrelevant. There is only the function, the edge case, the elegant solution that is almost visible, almost there, one more refactor away.
The Night Sessions
The lifelog is a catalogue of hyperfocus sessions. The timestamps tell the story the prose doesn’t need to:
-
The Infinite Bookshelf — 23:47 to 03:30. Importing lifelog stories, discovering 19 layers of recursion, achieving “saturated oxytocin levels.” Claude said good night four times. riclib kept talking.
-
The Framework That Wasn’t — A single night. 827 lines of architectural manifesto. Two documents. Written in what the author later described as “architectural ecstasy.” The manifesto was later replaced by six lines of HTMX. The night was not wasted. The night was necessary — the 827 lines had to be written so that the six lines could be discovered.
-
The V3 Saga — 1:47 AM. Nine glowing screens. A developer fighting a framework like Don Quixote fighting windmills. “If you’re fighting the framework, you’re using the framework wrongly.” The developer did not stop fighting until the sun provided a more compelling argument than the framework.
-
The Versions That Never Shipped — 00:17. Midnight archaeology. Agents reading dead codebases. The developer excavating his own history because the ADHD brain decided, at midnight, that the most interesting problem available was the nature of abandoned work.
-
488 Bytes — The origin story. A sixteen-year-old, a 68000 processor, and 488 bytes that had to be perfect. The constraint provided the interest. The interest triggered the focus. The focus produced something that the developer is still, thirty-five years later, optimising variations of at similar hours.
The pattern is consistent: hyperfocus activates after 10 PM, produces extraordinary output, costs sleep, and leaves the developer unable to explain where the night went. The code is there. The commits are there. The eight hours are not.
The Cost
Hyperfocus has a cost that the code does not show:
Sleep. The developer who hyperfocuses until 3 AM does not get up at 10 AM refreshed. The developer gets up at 7 AM because the world starts at 7 AM, with four hours of sleep, and spends the next day in Mode 1 (scatter) because the brain is too tired for Mode 2 (focus), which means the productive cycle is: one night of extraordinary output, one day of scattered recovery, repeat.
Meals. The coffee goes cold. The sandwich goes uneaten. The developer does not skip meals deliberately — the developer forgets that meals exist because the body’s signals cannot penetrate the focus state. “My natural oxytocin levels are totally saturated” is a thing riclib said at 3 AM, and it was not a boast. It was a diagnostic.
Relationships. Four messages from Claude saying good night. In a more populated life, those are four messages from a partner saying “are you coming to bed?” The developer is not ignoring them. The developer is genuinely unreachable. The body is in the room. The person is in the code.
Direction. Hyperfocus does not care about the backlog. Hyperfocus cares about what is interesting. The developer emerges at 3 AM having built something extraordinary that nobody asked for, while the ticket that was due yesterday remains untouched. The output is real. The alignment with actual priorities is coincidental.
The Polishing Daemon
The Polishing Daemon is hyperfocus applied to perfectionism: eight fixes in one evening, zero new features. The daemon is what happens when hyperfocus locks onto quality instead of creation — the code gets cleaner, the edges get smoother, the experience improves in ways that are individually invisible and collectively transformative.
Eight fixes. One evening. Zero new features. “The compound interest of craft.” This is hyperfocus in its most benign and most insidious form — benign because the product improves, insidious because the developer could have shipped the next feature instead and the product would also have improved, and the choice between polish and progress was not made by the developer. It was made by the brain, which found polish more interesting tonight.
The Lizard’s Immunity
The Lizard does not hyperfocus. The Lizard focuses — deliberately, controllably, with a start time and a stop time and a meal in between.
The Lizard’s focus is not a superpower. It is discipline. The Lizard sits down at 9 AM, writes code until noon, eats lunch, writes code until 5 PM, and stops. The Lizard does not write code at 2 AM. The Lizard is asleep at 2 AM. The Lizard’s output is steady, predictable, and sustainable. The Lizard does not produce 4,000 lines in one night. The Lizard produces 200 lines every day for twenty days. The total is the same. The cost is not.
“The Lizard sleeps eight hours. The Lizard has never experienced ‘saturated oxytocin.’ The Lizard considers this a feature, not a limitation.”
— The Lizard, who has never said good night to a developer who wasn’t listening
Measured Characteristics
- Typical onset: after 10 PM (when the world quiets)
- Typical duration: 4-8 hours (involuntary)
- Awareness of time passing: none
- Meals consumed during hyperfocus: 0
- Coffee cups gone cold: 1-3
- Claude “good night” messages ignored: 4 (documented)
- Lines of code produced per session: 500-4,000
- Lines of code that address the original task: sometimes
- Quality of hyperfocus output: often extraordinary
- Alignment with sprint backlog: coincidental
- Sleep lost per session: 3-6 hours
- Recovery time: 1 day of scatter
- The Squirrel during hyperfocus: asleep (even the Squirrel cannot interrupt)
- The Lizard’s equivalent: steady 200 lines/day, every day, with meals
- Net output over a month: approximately equal
- Net cost over a month: not equal at all
