Pomodoros & Pair Programming
TL;DR
- Next time you pair program, try using the Pomodoro Technique to improve your productivity and mix things up a bit.
- Breaks up difficult or tedious stories
- Keeps morale high and dev's brains fresh
- Time box learning or research which is sometimes easier to do solo
- Not always possible - everything in moderation
I currently work in a team where we pair program most of the time, and I’ve found that applying the principles of the Pomodoro Technique to when pairing - focus for a bit then a short break - has helped me work more effectively.
What’s a Pomodoro when it’s at home?
The Pomodoro Technique is a time management strategy where work is split up into chunks of 25 minutes (Pomodoros) separated by 5 minute breaks. After 4 x 25 minute “Pomodoros” you’re allowed a longer 20 minute break. During a Pomodoro all distractions that prevent you from fully concentrating on your current task should be ignored, like social media, conversations with colleagues or your phone. This 2 minute video on the Pomodoro Technique website elaborates on this, and of course there’s this great website called Google that you can use to find out more information.
Pomodoro is the Italian word for tomato and you can time your 25 minutes using a traditional kitsch tomato kitchen timer (or buy an official one from the website!) - hence the name.
How can this help me with Pair Programming?
Pair programming can be is very intense and draining. It can be difficult to find natural breaks when you’re working together - you don’t want to be the one to admit defeat and ask for a toilet break! By introducing the concept of Pomordoros, breaks happen automatically and it gives you just enough time to check your emails and get a drink. As you’re working in a pair this can also help you avoid the temptation to stop work for longer than 5 minutes between Pomodoros - easy to do when you’re on your own.
Breaking little and often helps keep you mentally fresh and is particularly beneficial when you’re bug-fixing or working on a tricky story together - sometimes the 5 minute break from the screen is all you need for inspiration to strike. And the knowledge that a fresh brew is less than 25 minutes away can help keep morale up when you’re fixing a particularly demoralising bug.
One of the problems I have with pair programming is finding time for concepts to sink in - sometimes you just need to read about something yourself and try out a couple of code snippets without someone staring over your shoulder at your screen. Well guess what, Pomodoros can help! Try using a Pomodoro working apart from your partner at your own machine to research a new or tricky concept, then reunite at the next Pomodoro to discuss review what you’ve just learnt. Time boxing your learning like this means you keep focused on the current story but also prevents you aimless searching Stack Overflow as you’re aware of that 25 minute deadline. Everybody wins! :D
But hey, no one’s perfect, and one of the ways Pomodoros fall down in an Agile team is the no distractions rule. In theory you’re supposed to ignore all interruptions and anything that prevents you getting your current task done - write it down on a piece of paper and deal with it when the Pomodoro is over. In practice this isn’t possible - try telling your product owner they can speak to you about the major production incident that’s just occurred when your Pomodoro is up!
I don’t use Pomodoros religiously but they are a useful tool in your toolbox of pair programming tools <insert better metaphor here> - give them a go! It’ll only cost you 25 minutes!