2017-08-27

Does Pair Programming “Work”?

Tom Breur
27 August 2017

Pair programming is a core practice in XP, one of the (very) early Agile methods. As legend has it, the fundamentals of XP were conceived in the mid-nineties, when Kent Beck was part of a team building the Chrysler Comprehensive Compensation System (C3). The project was stuck, on a crash course to disaster, when it somehow mysteriously found its way again with the help of early Agile legends like Kent Beck and Ron Jeffries.

Pair programming is controversial. The notion of two people working together full-time, whereby one does all the coding (the “driver”), and the other seems to be sitting “idle” (the “navigator”), flies in the face of old-school management notions of “productivity.” A handful of years back I listed (slides 3-4) some counter intuitive Agile practices, and this one probably sits at the top. In line with this, after Chrysler was acquired by Daimler-Benz, development on C3 was stopped and XP was even banned from the company!

Interestingly, Pair Programming is mostly damned by people who have never tried it themselves. The notion that the “navigator” sits idle does not correspond at all with my own experience, and others who have practiced it. Pair programming is intense and can be exhausting! Scientific studies on the effects of productivity with pair programming show about 50/50 results. No clearly established benefits one way, or the other. Usually lower defect rates get reported, and that may well have an exponential effect on net productivity. But that effect only shows up with a (severe) delay, so may be hard to demonstrate. No conclusive evidence there, yet. Since a primary driver for pair programming is knowledge sharing within the team, switching up pairs is standard practice.

Maybe a better question would be: “How does pair programming work?” Or: “For whom does pair programming work?” Or: “Under what circumstances will this practice enable higher (team!) productivity?”, etc.

Given how much we spend on software development, as an industry (Gartner: IT spend globally $3.5 Trillion), I hope we see more in-depth research. With Google as my friend, I found several PhD Theses (By Sallyann Freudenberg here, or Mark Anthony Poff here, for example), but they all seem plagued by relatively small sample sizes (with corresponding problems in Statistical Power). Until then I would suggest two things:
1 – give it a try
2 – do what works for you


No comments:

Post a Comment