Yay for the mention of the Pomodoro Method, it is quite effective and has gotten me through college.
Your reasoning however for learning to be interrupted in our life, is something I am not necesarily sure about. Are humans just simply bad at long stretches of focus? I am not sure but i am and thats why I use the pomodoro.
Are humans just simply bad at long stretches of focus?
This is a great question. I think the answer is: It depends on what you mean by focus.
Humans are certainly capable of long periods of concentration, of all sorts. Sitting in a tree waiting for the prey to come into range. Sitting under the tree patiently digging out edible roots. Sitting in a band jamming for twelve hours straight. Sitting facing the wall in Zen meditation.
But, in programming, the word focus has a specific and somewhat paradoxical meaning. When we are focused on programming it feels as if we are focused on something. And yet when you think about what you're actually doing in programming the word focus seems less and less appropriate.
Here's programming: You think about the feature you want to build, and then you think about the existing system that you want to attach it to, and then you think about the big picture, and then you think about an individual data structure. And then you sketch the module on a whiteboard, and then you write an empty module file, and then you use a C debugger to find and fix a bug in the module loader, and then you patiently write an editor macro to change a giant text file from XML to JSON, and then you write a unit test for the JSON parser. Then you write the parser. Then you stare at the parser and try to imagine explaining it to a junior PHP developer. And then you sigh and mentally kick yourself for overdesigning and quickly reimplement the parser, except without the tricky metaclass and the tail recursion and the nifty hack that reads like obfuscated Perl, and then you sigh again and get some coffee. And then you find the module loader is still broken after all and you do ten minutes of research into alternative module loaders, during which you realize that maybe you should have used an entirely different framework for this system and make a note to research the alternative framework for your next system.
And this is what programmers call "focus": Bouncing up and down among five or six layers of abstraction, hopefully doing no individual task for longer than five minutes at a time. (After all, this is programming: If you've got an hour of rote typing to do, why isn't there a macro that can do it for you?) But you're focused on something, because the hours are flying by and if someone interrupts you, you tend to want to throw things at them.
And perhaps this is why we programmers have such trouble with focus: The state we call "incredibly productive focus" is actually oddly difficult to distinguish from ADD. But it's focused ADD, and that's the secret.
The Pomodoro Method seems to consist of setting yourself up to be interrupted every 25 minutes, and picking a task that can fit. This is great if you're busy learning something, since studying in well-defined chunks with time in-between will aid retention. It's murder if you're doing work that involves flow and a complex mental state, like programming, since it can easily take 20 minutes to get into a fully productive state of flow.
I use a mechanical timer and I use the pomodoro method for routine tasks like marking, doing reports &c (I'm a teacher). It helps my motivation with fairly basic tasks.
For anything where flow might be important, I don't use the pomodoro and I block out a stretch of time. I work on those tasks at home as a large open plan office becomes impossible.
I have experimented with Pomodoro, but for me it was actually more because I thought it might be a good way for me to remember to take breaks. I don't usually have the problem of not being able to sustain focus for long periods. Sometimes I do but more often than not, my problem is forgetting to take breaks, a habbit which - as I get older - I'm finding my body less forgiving of.
Whenever I read about people having trouble maintaining focus or I see people around me with the same issue, I wonder what it is about my life experience that may have made the difference. There's a few things that spring out to me:
1. I was introduced to meditation at a young age
2. I spent a lot of my youth playing pen and paper based RPGs
3. I spent a lot of my youth reading novels when I wasn't playing pen and paper RPGs
4. I spent a lot of my youth painting miniatures for table-top war games and playing said war games when I wasn't reading or playing pen and paper RPGs
A common thread I can see through all these activites is that one is using one's mind, one's imagination, more so than having images and entertainment thrust at you by a monitor or TV.
I believe these activities assisted in cultivating an improved ability to focus generally, and particularly to focus on tasks that are not immediately accessible. This focus has served me well in my professional life.
I have a tool called 'messagebox' that pops up a dialog, and a script 'now' which outputs pretty-formatted current time and date; doubles as a work log:
#!/bin/bash
if [ -n "$1" ]; then
task="$@"
else
task_file=$(mktemp)
export task_file
rlwrap bash -c 'read -p "current task: " -r task; echo $task > $task_file'
task="$(<$task_file)"
rm $task_file
fi
# don't keep a handle open to current directory
cd "$HOME"
echo "$(now): $task" >> ~/.pomodoro
(
sleep 25m
messagebox 'Pop!'
) &
echo "25 minutes starting now"
Your reasoning however for learning to be interrupted in our life, is something I am not necesarily sure about. Are humans just simply bad at long stretches of focus? I am not sure but i am and thats why I use the pomodoro.