3 ms·
I think imposing pair programming 100% is a bit weird. I find pair programming is excellent for some tasks. For simple tasks it's a hindrance.
by UK-AL 10y ago
I think imposing pair programming 100% is a bit weird. I find pair programming is excellent for some tasks. For simple tasks it's a hindrance.
- jacques_chester 10y agoThere are some tasks where soloing is unambiguously better (reading docs springs to mind) or where pairing confers very little advantage (writing a large draft). Lots of people don't like the idea of pairing by default. I was skeptical about its utility, except as a way to learn. But these days I find that I don't want to solo if I can help it. On days when I'm soloing I have to use more ritalin to manage my ADHD than on days when I'm pairing.
- barrkel 10y agoI find I have no time to think when I'm pairing. I tend to build experimental abstractions and chop and change them quickly to best fit with the problem, and vocalising what I'm trying to do slows me down 10x - not just is it tedious to explain the bigger picture I have in my mind about the change I'm performing, but while vocalising I don't have time to think further. And when I'm not at the keyboard, the slowness of my pair and the inelegance of their code - it's hard to formulate the right nudges or wait for their cogs to spin and realise the issues with their approach. I'd love to work with better programmers, but they're hard to find.
- jacques_chester 10y agoPairing is a skill, it take practice and not everybody will find it applicable. When I first learned to drive a car I couldn't talk at the same time.
- katpas 10y agoI definitely agree that it's a skill to be learnt and it's something I enjoy. Is it really useful to do it all the time though? Like there must sometimes be edge cases where people will achieve more alone, e.g. if it's something simple/repetitive, isn't it more productive to just hammer through?
- jacques_chester 10y agoSometimes, yes, it would be as effective to solo. But we're reluctant to break pairs because it means the same fan-in/fan-out problem reappears. So for repetitive stuff we often wind up throwing together something to do it for us. Additionally, in Pivotal Labs, one goal is to teach the practice of pairing. It works best by total immersion. By analogy, French teachers try to make the class speak French at all times, even if sometimes it's easier to speak a mix of English and French.