3 ms·
I think I do it terribly when I pair with someone. It doesn't feel natural, far from it, sometimes even feels tortured. But it still works wonders.. 1. You sta
by forkerenok 8y ago
I think I do it terribly when I pair with someone. It doesn't feel natural, far from it, sometimes even feels tortured. But it still works wonders..
1. You stay focused
2. Often it turns out that me and my pairing partner are out of sync on either what should be done or how it should be done. And in those cases, often, the truth (for the lack of better term) is in the middle.
3. Doing quality peer code reviews is hard and takes discipline. If you lack it, pair programming is a good shortcut.
4. You get immediately two people owning (or, rather, invested into) the thing. So the effort is less likely to lose steam.
I'm not denying though that there probably are other ways of interaction (async or not) that may still bring these benefits.
EDIT: more things.
5. Having someone in peer code review question what you have been busy with in the last couple of days hits harder, compared to when someone filtering out what you put in the code as you explain your ideas.
6. Bonding.
- codyb 8y agoTo add just one thing to this (which covers most bases I think), it really depends who you're pairing with. I've had really great times with a buddy at work, paired up, complementing eachother's skillsets, getting things done, and having a great day at work. And I've worked with far less agreeable personalities who're always right about everything, in your face, and just plain not enjoyable to be around for any extended period of time. That's probably the biggest takeaway from pair programming for me. With someone good? Have a wonderful time accomplishing a lot. With someone bad? Have a stressful time... maybe accomplish something.
- BurningFrog 8y agoFor me: 7: Learning. I never learned - or taught - as much about programming as when I was pairing. Everyone has their clever little tricks they've come up with, and spreading them around as problems come up is wonderful.
- gumballhead 8y agoAnother benefit is establishing team norms and best practices, which is also a goal of code review, but pairing accomplishes it in a bottom up way rather than a heavy top down way. I've worked on teams where review was a very important part of our process and it was common for code to be under review for days or even longer.