Devs who have done lots of pair programming, did you find this way more productive in general? What are some of the main advantages and pitfalls you experienced?

For further actions, you may consider blocking this person and/or reporting abuse
Devs who have done lots of pair programming, did you find this way more productive in general? What are some of the main advantages and pitfalls you experienced?
For further actions, you may consider blocking this person and/or reporting abuse
Latest comments (22)
My last team went through a cloud readiness dojo training. It focused on a lot of pair programming. Afterwards we would continue the same. It really helps you to get all the value of a code review in realtime and also allows you to help one another with ways to work faster. there aren't really a lot of opportunities to share your ways of better searching the codebase and find/replace with regex outside of pairing.
I like it a lot for tasks, that are a bit more tricky. Banging out API design prototypes with a second pair of eyes is quite productive because you have a potential 'consumer' with you. After a while you can switch, change perspective and repeat the process. Debugging with a partner tends to be quite helpful as well. You are forced to 'externalize' your thoughts (speaking out loud to explain what you are doing) which often helps (me at least) to not trip over logical errors.
For common routine tasks I wouldn't use pair programming. Everything, that is routine doesn't really benefits from a second person. Super creative work (e.g. working on a really weird algorithm or other hacky thing) might also not be the best target as I usually don't have the capacity to vocalize my thoughts in this context. The results from this kind of work could (and maybe even should) be a good reason to get a colleague and evolve on the design.
Thanks for the extensive insight πβ€
I'd love to do it more, it's a great way to share information, learn and become better at getting feedback. Maybe the biggest blocker is the Impostor Syndrome: being worried the other person watching me work will find out I'm not a good coder and they'll judge me for it. A safe working environment might help.
I generally enjoy pair programming because it gives one an insight on how other people approach problems. It's especially beneficial in a senior-junior dev relationship, if the senior developer isn't condescending and the junior is a fast learner. Some junior devs might be intimidated by senior developers and view correction as being reprimanded for their mistakes, this comes when the senior dev is irritable. Generally for me it's a good experience and I've learnt a lot, especially on matters js. You have to find a partner you're comfortable working with.
I like it. We have a large code base and often there's domain knowledge that only one or two people have (not good but that's how it is) so it's easier to get on a call and chat about it and do some pairing instead of spending a few days trying to figure it out on my own.
If you are co-located, and working with someone who is working on the same thing you are, and you both practice reasonable personal hygiene, and you both have compatible ideas of how to go about developing software...
...that can work well. I've done it for two stretches, each stretch about a month long. It was enjoyable.
With the pandemic, and everyone on the team working-from-home, pair programming doesn't seem like a good fit for the situation.
I made the career change to a dev position years ago. In my first job I pair programmed with a senior dev and learned so much. His productivity probably went down, but there were small things I was able to teach him. Or catch small defects that if I hadn't caught at the time would have caused a large time sink to track down.
Overall I'm the kind of person that does well when I have someone to bounce ideas off of, so pair programming starting out was a huge help.
No experience yet, but I am really excited about it since I believe it will help me learn a lot
Never done it, but it sounds truly awful