Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
The practice of Pair Programming is often one of the hardest sells when introducing agile software development practices to people, particularly to managers. "But I'll be paying twice as much money for the same amount of work," they may moan. So far, [http://www.cs.utah.edu/~lwilliam/Papers/ieeeSoftware.PDF the studies that have been done] contradict this fear. On top of this, code written in pairs is automatically peer-reviewed, without fail and with a greater understanding and attention to detail than the typical code inspection. | The practice of Pair Programming is often one of the hardest sells when introducing agile software development practices to people, particularly to managers. "But I'll be paying twice as much money for the same amount of work," they may moan. So far, [[http://www.cs.utah.edu/~lwilliam/Papers/ieeeSoftware.PDF|the studies that have been done]] contradict this fear. On top of this, code written in pairs is automatically peer-reviewed, without fail and with a greater understanding and attention to detail than the typical code inspection. |
The practice of Pair Programming is often one of the hardest sells when introducing agile software development practices to people, particularly to managers. "But I'll be paying twice as much money for the same amount of work," they may moan. So far, the studies that have been done contradict this fear. On top of this, code written in pairs is automatically peer-reviewed, without fail and with a greater understanding and attention to detail than the typical code inspection.
Remember, the work of software development is not typing, but thinking. It's called knowledge work for a reason.
One typical misconception about pair programming is the assumption that the developers are divided into teams of two. Such a static arrangement loses much of the power of the practice. Promiscuous pairing promotes the frequent (several times a day) changing of the pairs. Not only does this forestall problems with pairs that don't get along or that don't challenge each other, but it promotes communication throughout the entire team.
Even Barry Boehm's book, Balancing Agility and Discipline: A Guide for the Perplexed [0321186125] reportedly (I've not yet read it) recommends the practice of Pair Programming.
See also:
Some other professions that pair
Pilots & copilots
- Ad writers
- Police patrols
- Doctors (and nurses and interns) in surgery
- Trial lawyers
- News anchors
Composers & lyricists
Driver & navigator (in road rallies, for example)
Grinder & tailer (sailboat winches)
- Conversationalists
- Snipers (from hearsay)
- Authors
- Rescue divers
- Climbers
- Cavers
- Paramedics