5 ms·
You don't think this depends at all on the particulars of the developer(s)? E.g. their personalities, experience, skill level?
by Veuxdo 5y ago
You don't think this depends at all on the particulars of the developer(s)? E.g. their personalities, experience, skill level?
- rednerrus 5y agoIt seems counterproductive to have developers on your team who aren't capable of collaborating in this way.
- Veuxdo 5y agoThere's a chasm between "developer who always pair-programs all the time" and "developer who isn't capable of pair-programming".
- erik_seaberg 5y agoI need to quiet space to think (or at least thick headphones) to solve hard problems. I can’t understand how some people work without ever getting that. Do pairs agree to shut up until someone gets an idea?
- _carbyau_ 5y agoI am not sure everyone has the same idea of pair programming. I have never done it but it simply seems like: 2 people solve a single need. How? "Deploy personal + company resources as appropriate to get the job done together" - however they damn well want to in that framework. It is between them. The pair could: Use a whiteboard for 5 minutes every 3 hours and go their separate ways otherwise. Sit together hunched over a single laptop. Work from two entirely separate locations with collaboration software so they can see each others cursor and typing as they voicechat. I mean, isn't it all about simply getting along and getting a job done?
- epolanski 5y ago> Do pairs agree to shut up until someone gets an idea? Hard problems are quite rare, most development is mundane. When facing hard problems, generally related to non-obvious bugs, there are many ways to solve them, and yes taking time off to think about it separately is absolutely one of them. This isn
- SomeCallMeTim 5y agoThe studies I've seen about pairing show that it's OK for beginners or lower-skill developers, but absolutely less productive for expert/senior developers. So yes, you're correct.
- dgb23 5y agoI would say that there is still a benefit of pairing an expert with a novice now and then. Not for productivity but for long term effects. They cannot be _too_ far apart though.
- SomeCallMeTim 5y agoOccasional pairing, especially for knowledge transfer, is great. It's the 100% pairing, or worse, 100% mob programming (up to six people with one screen!) that I can't believe would ever be more efficient than the programmers working independently. Sure, have a party and mob-program for fun for an afternoon, or solve a particularly sticky problem that way, or use it to transfer knowledge about the system to the wider team. Have a blast, and teach everyone something useful at the same time. By all means. Just don't pretend (as pairing/mobbing advocates do; not you) that two people sitting at a computer can be as efficient at day-to-day coding as two people coding separately, unless at least one of the two is a junior or near-incompetent developer who would contribute negative productivity on their own.
- JohnKacz 5y agoForgive my possible laziness in searching, but do you by chance have links to some of the studies you reference?
- SomeCallMeTim 5y agoSorry, don't have the references handy.
- jkaptur 5y agoThere are high-profile cases of world-class developers pairing: https://www.newyorker.com/magazine/2018/12/10/the-friendship-that-made-google-huge https://www.newyorker.com/magazine/2018/12/10/the-friendship...