There is a hard limit
on the hours you can spend
holding a whole problem in your head.
For most people
it is three,
on a good day,
in one stretch.
Not eight.
Not two blocks of four
with lunch in between.
You already know this.
You plan as if it were untrue.
The plan says two hard things today,
so at four in the afternoon
you open the second one,
read the same paragraph
of your own code
four times,
and produce something
you will rewrite tomorrow.
That is not laziness.
That is a tank that is empty,
being asked for one more lap.
Plan the day around the cap.
One deep block.
Name it before the day starts,
because deciding what it is
is itself expensive
and you cannot afford
to spend the good hours choosing.
Then build the rest of the day
out of the work
that survives a tired brain.
Reviews.
Replies.
The upgrade that is mechanical.
The test that is obvious
but nobody has written.
The documentation you can write
because you already understand it.
That work is real work.
It is not the consolation prize
for having failed to focus twice,
and treating it as filler
is why it never gets done.
The afternoon has a use.
Give it the tasks
it can actually finish.
Two things follow from this.
You will finish fewer hard things
per week than you would like,
and the number is honest,
which makes your estimates honest.
And you will stop ending days
feeling like you wasted them,
because the second half of the day
was never supposed to look
like the first.
Watch what you do
with the first hour back
after the deep block ends.
Most people spend it
pretending the block is still running,
staring at the hard problem
out of guilt.
That hour is the one
you can most easily reclaim.
Close the file.
Go and do something
that finishes.
Protect one stretch.
Spend the rest
on the work that does not need you
at full strength.
The tank refills overnight.
It does not refill over lunch.
– Serguey Asael Shinder
Top comments (0)