6 Comments
User's avatar
Roman Nikolaev's avatar

I like pair programming. I used it quite a bit in one place, which even had special rooms with two terminals set up side by side to access your own workstation remotely (this was before working on laptops became the default).

The upsides you already mentioned. The main downside for me personally is that pair programming can be exhausting - you need to be β€œon” all the time, working and interacting with your partner.

Marcos F. Lobo πŸ—»πŸ§­'s avatar

Thanks for sharing your thoughts Roman!

Same for me, you need to be "on" all the time. Any trick for that?

My trick is take official breaks from time time, like 1 break per our or something like that.

Roman Nikolaev's avatar

Yes, breaks work.

Another tactic is to work for, let’s say, four hours a day max in this mode.

Marcos F. Lobo πŸ—»πŸ§­'s avatar

I will give it a try! Thanks!

Fran Soto's avatar

Interesting your learnings, Marcos.

Personally I have never pair programmed. I assume you are rotating your pairs regularly so that knowledge silos are not created. In my case, I'm on-call for any changes that anyone in my team does, so being involved in regular code reviews help my own understanding of the codebase

Marcos F. Lobo πŸ—»πŸ§­'s avatar

Yes, we rotate, between the pair (driver & and compass), and mixing pairs too (changing pairs), so the silos "should" not happen. For me this is the most difficult part: Change the pair and get up to speed as soon as possible to start typing