Sunday, September 20, 2009

A "Buddy System" for Software Engineers

What's the difference between "head count" and "mind count"?

This post shares an interesting article recommended by a reader of this blog. (Thanks, Chris.)

A recent New York Times article describes a "buddy system" called pair programming that claims increased productivity (specifically, faster coding and quicker debugging) for software engineers.


The thoughtless IT manager might wonder about the business sense of putting two expensive "heads" on one job. The smart manager, however, realizes that, when it comes to cognitive effort, productivity and head count are, at best, only loosely correlated, and recognizes the psychological reasons why, when it comes to writing code, two "minds" can indeed be better than one:
  • Increaded focus and attention on assigned tasks
  • Less time wasted doing "off-topic" things
  • Heightened motivation to finish coding jobs on time and within budget
  • Less "ego involvement" and more common sense in the coding process
  • Built-in mentoring for the junior member of the pair
A few more cognitive activites that might benefit from a "paired-mind" approach:
  • Root Cause Analysis (2nd- or 3rd-level problem resolution)
  • Short-Term Task Management (e.g., implementations, migrations)
  • Product or Technology Reseach, and Selection of Candidate Solutions
Can you think of any others? Leave a comment here, or on the corresponding LinkedIn or Facebook discussion topics.

No comments:

Post a Comment