Monday, November 21, 2011

Tips for keeping focus

Keeping focused on an activity can be a daunting effort - you know you need to do something, you sit down to do it and you might even get started - but before you notice you get a phone call, an urgent email, you get distracted, forget what it was you were trying to do, start a different task, give someone some help and BAM! - the day is done and what was is that I was going to do today?

This is true in almost any field of life - for children that need to do their homework, for managers needing to draft a budget or prepare for a meeting, at home when we want to make a meal or clean the living room with all the kids running around... 

Even in an agile workplace where it's natural and accepted for team-members to "swarm" together on a task or keep communicating between themselves and with the PO/SM, there are always times when we need some quiet-time without distractions to get something done - be it a team-member that needs to get a technical task done, a PO needing to groom those stories, or a scrum-master needing to prepare a retrospective or go over some metrics to figure out how to help the team further.

"Mel is out of focus!"
Focus is one of the five Scrum values, but it's not just a scrum-thing - it's an everyday life skill. So what is focus all about anyway?

In the Woody Allen film "Deconstructing Harry" (1997), Mel - an actor - is literally "out of focus". He is not only blurred in film but in real life.

Sadly departing from this comic interpretation of focus, seeking a more relevant definition from Wikipedia brings up the following:

Focus (cognitive process), selectively concentrating on one aspect of the environment while ignoring other things

So focus boils down to paying attention, taking into consideration that there is a limit to how much we - as human beings - can process and keep in mind at any given moment.

  • Focus is giving full attention to only one, relevant part of the big picture, intentionally ignoring other parts.
  • Focus means keeping concentrated on the task at hand - not getting distracted.
  • Focus means staying relevant - working on only that which is needed, avoiding the unnecessary.
  • Focus means doing all this while keeping a clear mind, staying effective, avoiding fatigue and keeping fresh.

Here are some tips to help keep focus:
1. Clear your desk:
All you usually need on your desk to get a task done is a computer, a block of paper, a pen and a timer (more on this later).
The more clutter you have on your desk the more clutter you'll have on your mind, So just take everything off - even if you don't have time to start sorting all the papers and notes,
Clean desk = Clean mind.

just put them aside in a pile for now. You'll have a chance to sort them out later.

If you find your computer screen is all dusty and your keyboard is blackened with sticky remains from late-night eat-while-you-work sessions (we've all had them) - take a few moments to clean the dust and wipe the keyboard. This too can have a magical effect - clearing your mind to keep fresh and focused on the task at hand.

2. Use the Pomodoro technique:
The idea is simple - work for 25 minutes (this is called a "pomodoro") and then take a 5 minute break. There are many specialized timers and lots of articles about the technique, but basically all you need is a timer and some practice.

I use a simple cheap sports-timer that beeps 10 minutes before the time is done and again 5 minutes before - that addition is great for getting a sense of "almost there - let's start summarizing". 

My timer - Six minutes left
until I take a break..
While you are working (in the 25 minute timeframe) - keep all distractions out, close the door if you can, don't even answer the phone or look at you emails. You'll have time to look at emails and return phone-calls during the 5 minute break or if you'll find you need to dedicate more time for them - you can do it after you finish one "pomodoro" and before you start another.

During the breaks - you might want to really go out and take a short stroll, go to the toilet, get a drink of water, make some coffee, read an article in the internet, or even go help someone with another task - but be sure to take those breaks from your current task! They are really needed after a concentrated 25 minutes of focused work and sometimes they can let you "zoom out of focus", seeing the big picture again and get an important "aha" moment - realizing things you've forgotten or overlooked.

If people physically approach you during the 25 minute session - take a look at the timer and politely ask them if you could get back to them in 13, 17, or 8 minutes - whatever the timer says is left. Be sure to take a note of getting back to them - really write it down - it will be both useful for you to remember to do it without having to actualy keep the reminder in your mind, and will show the other person that you are taking him/her seriously and not just waving them away, so they will be more comfortable leaving you alone to get your work done.

Child-sized Pomodoro:
My 9 year old once had a big homework assignment and could not keep focus on it, it was just too big and he could not "see the end". I suggested he split up his work into short cycles and we decided trying 15 minutes homework, and then 10 minute breaks (including snacks of course!). This helped him keep focused on a small part at a time, as well as keep the breaks in sight - all in all reducing stress and making the homework manageable for him. 
This has been working out great ever since - except sometimes I find my timer has disappeared from my desk and I need to go looking for wherever he had left it....

3. Use a shopping list:
When going shopping at a supermarket, everyone knows it's best to use a list - that'll make you remember what's needed and avoid getting things you can do without. When working on a task this is true as well.

When you start the task - make a list of the specific things you need to "shop for" - for example if you're working on a coding task, you might write down:

- get data from the external webservice
- format the output
- handle null values
- run the acceptance tests
- check into the CVS

As you work on the task be sure to attend only one item at a time - just like in the supermarket, you can't really get both the milk and the bread at once, and trying it will just get you into trouble. Tick off the items as you complete them and go to the next one, until you're done.

Here is my shopping list for this blog post -
I guess I can tick off "picture of shopping list" now,
but I just realized I'll need to add "layout pictures" :)
Throughout working on the task you might realize new items you hadn't thought of before (like in the supermarket - "Oh, I need sugar as well!") - in that case, just add them to the list and keep focused on the item at hand, knowing that you'll get to cover all the items before you're done.

Some of the items you might realize don't really belong in your current task - for instance, you might suddenly realize some code you've written requires a redesign in the UI, and the UI guy is doing that task. Or while grooming the backlog you'll realize you need to talk to a stakeholder about a story. So write it down anyway, so at least once you're done (or in the next pomodoro break) you can go to the UI people and inform them of the required changes or schedule a talk with that stakeholder for later in the day.

Although there are many neat todo-list apps out there, try and keep it low tech - a piece of paper is best. If you absolutely must type the list - just use Notepad, and don't bother saving the file when your done. The most high-techish list I'd recommend is for programmers, where the IDE let's you put in task-comments. Visual Studio has this feature - so when you type a comment starting with "//todo" - it'll appear in the "tasks" window along with other todo's, and double clicking an item in the list will bring you directly to the line containing the comment. But at times even that will be an overkill.

All in all using a shopping list is like having a "mini DoD" - tailor made for the current task. It lets you know when the task is really done and helps stop delaying declaring it done. When you've got all the items on your shopping list - it means go to checkout and head back home.

4. Turn off those notifications:
Most email programs like MS Outlook bring up a little popup or ring a bell when a new email arrives.
Do yourself a favor and turn those notifications off. These are distractions, and unless you're expecting a really urgent mission-critical notification such as a stock buy/sell notice or a rocket crisis alert - it's most likely that any email can wait up to 25 minutes before you reply or even see it. 
Same goes for instant messaging apps - you'll be best to have those off at least until your next break.

Don't play a sound, Don't briefly change the mouse cursor,
Don't display a new mail alert.. JUST SAY NO!
I cannot stress this one enough - as simple as it sounds - so I'll just stress it again. Really turn them off.

Trust that if a real emergency comes up - people will either come to you in person or the phone will keep ringing and ringing until you pick it up. Save the distractions for only the absolutely urgent emergencies - such as if the baby cries - as mine just did..

5. Inform others of your efforts:
Rene Descartes shut himself in a room so he could focus on his existence (Meditations of First Philosophy - 1641). Most of us however don't have that  luxury - our distractions come from working and living with others.

"I don't read emails, Therefore I am"
Descartes got focus!

Picture By After Frans Hals
[Public domain],
via Wikimedia Commons
So inform others of your intentions to keep focus - share your shopping lists, show off your timer, inform others that you don't read emails while your focusing on a task and that you do take breaks. This will make it clear to others that you're not just being unsocial but are doing your best to get work done, as well as defining your boundaries as to when you can be available for both socializing and working together.

Ask for help - another team member might be willing to keep on the lookout for when you are losing focus and remind you to get back on track, or they might take on the role of intercepting external interruptions while you're focusing on your task. Take turns at this helping each other. When pair-programming, have the "navigator" take charge of the shopping list, taking responsibility to keep you both focused on only what's needed. When the task is a meeting - have someone be responsible for tracking time and keeping everyone focused on the meeting agenda. This is not being a "meeting cop" - it's helping everyone keep focused and efficient.

Especially when working in a team - if everyone agrees on using pomodoro's, have the pomodoro's synchronized so they start and end at the same time, giving everyone a chance to spend the break together, or to start a task coordinating together before splitting up. Sometimes one team-member might take the role of "time-master" - being responsible for the timer and telling everyone when it's time for a break. This helps build up good team dynamics as well, so long as it's agreed on by everyone and not imposed upon.

*** updated ***
6. Pair Programming
My colleague Inna Korochik reminded me of this one - thanks Inna for pointing it out, as well as for the other valuable feedback!

Pairing is by itself a good means of keeping focus. As the song goes - "Birds do it. Bees do it. Even educated fleas do it" - and in fact policemen do it, aircraft pilots do it, and so do students crunching for exams - working in pairs is a well known means for staying focused on the mission in hand, having someone other than yourself guard and guide you from drifting astray and letting you focus on just doing the work.

Surprisingly (or not) - this is one of the most controversial subjects in the software industry, although pairing is a well-established best practice in Agile software development. If done wrongly it can be a waste of two workers time, but if done right - it can maximize both their time and let each member amplify the other's abilities to reach a point where 1+1=3.

Focus on Focusing:

Keeping focus is not always easy, and not always fully achievable - there is no "100% focus" (unless you're Descartes of course). It is however something that can be reached for, and like any other skill, the more you practice it the better you'll get at it, until it becomes a second nature.

Losing focus means losing time, and time is one of your most valuable and ultimately limited assets. Respect your own time by doing an effort to keep focused, and others will respect your time too. Respect other people's time and their focus - don't be a distraction. If you're asked to wait before interrupting someone else, ask when can you come back to them. Act upon others as you expect others to act upon you.

And in the end, remember - it's not about how much time the task took you or about how many "pomodoro's" you achieved in a workday. It's not even about making that task "perfect". It's about doing your best to keep focused on the task at hand, alleviation stress and finishing the day with a sense of  "I got done what I wanted, what I intended to, what I committed to" - no matter if it's to my team, to my manager, to my children or to myself.


  1. This is a great approach. It has some overlap with what David Allen says in Getting things done. Get it out of your head and onto paper.

  2. Thanks Andrew.
    Yes, I use GTD and some of the ideas here are affected by it, especially the writing down part.
    Although as I recall, GTD deals more with coping with the "big picture" - managing the overwhelming stream of "stuff" and turning it into manageable tasks, and less on how to focus on a specific task.