The cost of interrupting someone … analysed

“Based on a analysis of 10,000 programming sessions recorded from 86 programmers using Eclipse and Visual Studio and a survey of 414 programmers (Parnin:10), we found:

  • A programmer takes between 10-15 minutes to start editing code after resuming work from an interruption.

  • When interrupted during an edit of a method, only 10% of times did a programmer resume work in less than a minute.
  • A programmer is likely to get just one uninterrupted 2-hour session in a day

We also looked at some of the ways programmers coped with interruption:

  • Most sessions programmers navigated to several locations to rebuild context before resuming an edit.
  • Programmers insert intentional compile errors to force a “roadblock” reminder.
  • A source diff is seen as a last resort way to recover state but can be cumbersome to review

The full article – http://blog.ninlabs.com/2013/01/programmer-interrupted/ – includes graphs, analysis techniques, suggested tools / features that help to fix the problems, etc. Good reading.

Also some good comments, for instance:

The less-quoted benefit of Pair Programming

“I was surprised to discover whenI first started pair programming 13 years ago, how one person ia a pair can hold the context while the other person in the pair gets interrupted. We could get back to work in seconds.”

The less-quoted benefit of TDD

“I was also surprised by test-driven development, how it helps keep track of where you are. Here are some of the factors I’ve noticed:
* The test tell you how far you have gone.
* Your test list serves as a reminder of where you need to still get to.
* The focus on small steps meas at any instance there are fewer balls in the air.”

One thought on “The cost of interrupting someone … analysed

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Current month ye@r day *