I have practiced pair programming off and on now for around 10 years. I have always felt that the teams I worked with that practiced pair programming, yielded better results. I think I understand the reluctance of some developers to embrace pair programming. I wanted to make a good old pros and cons list. If there is anything to add let me know.
PROS | CONS |
---|---|
Continuous code reviews | Vulnerability |
Simpler design | Tiring/draining |
Concentration / focus | More total man-hours |
Up skill / on boarding | Loss of time to think/creativity |
Bus factor solution | Personality clashes |
Less bugs | |
Team building / collaboration |
Out of the Cons, I believe a feeling of vulnerability is what actually stops developers from attempting pairing. Suddenly someone has a deep window into not only how you program but how you solve problems. It is pretty personal. It is vital that developers about to start pairing, are very careful to be kind, when correcting and expect to be corrected. It is amazing how many tricks and hints I have picked up along the way from pairs, after being open to their suggestions.
comments powered by Disqus