3 ms·
The company that I currently work at uses pair programming extensively - not 100% but strives for 3 hours per day. Although I understand its value, actually do
by jonstjohn 15y ago
The company that I currently work at uses pair programming extensively - not 100% but strives for 3 hours per day. Although I understand its value, actually doing pair programming can be exhausting and tedious. I've also found myself working twice as hard/fast during non-pairing hours b/c I knew that pairing would sometimes be painfully slow. Lately, I've tried to work productively with my pairing partner in tandem, rather than sitting in front of a monitor together 3 hours a day.
I love the company that I work at, so I'm not likely to let pair programming dissuade me from staying there, but when if and when I do look for a new job (or start my own company), I would be very wary of a shop that uses pair programming extensively. I really love working in a team and directly with others on projects, but pair programming can be very tedious, particularly if there is a big gap in experience between the two people in the pair.
We also use code reviews for all code that goes to production. I find this to be extremely valuable. For more complex pieces of code, we do 'design proposals' that are circulated within our small team (4 developers) to get feedback and improve the design of our code.
- osivertsson 15y agoYes, it is my experience too that pair programming works best when you both are at roughly equal levels of experience and both really want to succeed with the task at hand. Code reviews in groups often work really good despite different levels of experience though. It is exhausting to do pair programming, but when it really does work the feeling of progress and mutual knowledge sharing is awesome. In these optimal cases me and my coworkers have worked in pairs for 5-6 hours per day. Pushing on for longer would not have gained anything, rather the opposite.
- AlisdairO 15y agoIn support of pair programming with a knowledge disparity, I have to say I've found it a fantastic way of bringing new team members up to speed. Yes, it's a bit of a pain in that it can bring productivity down for a while, but I really feel that it has long-term benefits.
- mtts 15y agoI work with a lot of interns these days, doing what's essentially pair programming with them and I don't feel their lack of expertise brings me down at all. Instead, I find having to explain everything I do to them brings a clarity to my own mind that is difficult to obtain otherwise. Of course it does help that when my explanations truly fail, I still have the nuclear option (Hey, they pay me to teach you this stuff, so just believe me) available, but (I'd like to think) I only rarely use it.
- MaysonL 15y agoMy experience is that pair programming works almost as well when one of the pair is virtual, or time-shifted [i.e.: code review or review rehearsal]. And it's much more efficient.
- pairing 15y ago3 hours is not extensive.... That would means the majority of your day is still solo.