DEV Community

Discussion on: Why Pair Programming Should Be Part of Every Team Dynamic

Collapse
 
jonrandy profile image
Jon Randy 🎖️ • Edited

Pair programming is truly awful. Slows down development, creates arguments, interrupts thought processes, tends to reduce all code to the lowest common denominator of understanding within the team.... Ugh

Collapse
 
johnslegers profile image
John Slegers

In my experience, it depends a lot on the knowledge gap between two developers.
If you want to train a junior dev, pair programming with a senior dev can be a very efficient method for achieving that goal. But if you just put two juniors together or two seniors together with a minimal knowledge gap between both, it's probably a lot more efficient to just let both write their own code and review one another's code afterwards!

Collapse
 
keraito profile image
Chak Shun Yu

I think that pair programming as a concept yields a lot of value, but in reality pair programming sessions can really differ in their effectiveness. Not every session is held equally and if not done properly, it can definitely lead to more harm than good.

Some scenarios, like putting a senior dev and junior dev together for onboarding purposes, are more straightforward than others. In other scenarios, sometimes it required a bit more effort to make pairing a success. In another article, I talked about exactly this, namely how I think pair programming sessions can be made more effective. Personally I think active communication is especially important, to make sure everyone is on the same page and are on equal playing fields. When this applies, then pair programming sessions can elevate quality to a higher level. But to do so, active communication and an active stance to improve the sessions is key.