Until you’ve had some really great pair programming experiences, you may not believe just how enjoyable and empowering it can feel. You feel like you’re on fire—a dynamic duo that is more than the sum of its parts. When you have to go back to programming alone, you feel like you’re missing half of yourself.
Like any powerful tool, it matters who wields it and how it’s used. Pairing can join people together and make new technologists feel like they have a place in the programming world, and it can also exaggerate power differences and make a person feel like even more of an outsider. Be mindful of the power you have and of those who come to the pairing table with a history of having their contributions ignored and devalued. Be sure to keep a running dialogue, give up control easily, be open to feedback, and reflect honestly on what’s working well and what’s not.
Even great pairing experiences can still leave you feeling like you just did double the work—perhaps because you did! The intense focus and lack of distractions are tiring, so an ergonomic pairing setup and good pair-care are key to make the practice sustainable. Make sure you have parity in a dozen ways between you and your partner, so it’s not too easy for one to dominate—and if possible, get comfortable pairing IRL before you try it remotely.
I hope you find pairing as fulfilling as I have and that you develop your own insights into what makes pair programming work well on your team. My wish is that every team is able to lower their stress and produce better software through broader adoption of these collaborative coding techniques.
In the end, we’re all looking to improve ourselves, get more done, and work more happily with others. When you’re deeply immersed in the joy of pair programming, you’ll start looking for opportunities to pair on non-programming tasks, from unloading the dishwasher to reconciling the checkbook. There’s little work that isn’t better when shared with a partner!