[Extracted from XpMailingList]
Many of us who have tried bi- and tri- programming report that pairing is better. Why?
Here are the reasons I can think of at the moment:
-- KentBeck
Here we have been known to do both PairProgramming, and TriProgramming on occasion. Here are my thoughts on the matter:
-- DjMoon
Sometimes in our outfit, when a pair is struggling over some design problem, they'll draw in a third person as a FlyingDesignConsultant to thrash things out. I don't know whether this counts as TriProgramming, but it seems to work well. -- StephenHutchinson
Moved here from PairProgramming
Why not TriProgramming?
Think about the BasketballMetaphor. A third guy on the court could only interfere with the other two. -- PCP
Maybe TriProgramming is not better than PairProgramming, but what about the comparison of TriProgramming with PairProgramming+LoneProgramming? If you have an odd number of programmers (for whatever reason), is it better to let the remaining one code alone, or form a triple?
Another possibility is PairProgramming + lone person does odd tasks (e.g. administrivia, learning, etc.) and rotate. The lone person is not just wasting time, he is preparing for his next pairing session. This may seem inefficient on the surface, but that may be offset by the fact that you won't have any parallel development, and therefore no check-in conflicts and no merging.
See also: PairProgrammingPlusPlus, PairProgramming