π Additional Pair Programming Tips
You've been pair programming for a while now. Chances are you've gotten the hang of it. Now that you have your own pair programming experiences to draw from, take some time to review these tips. Keep them in mind as you continue to partner with new classmates throughout your time at Epicodus:
Share the keyboard. Be aware how much you and your partner are each 'driving' and take regular turns. Even those with good intentions can become excited about exploring something new and may not even realize they're monopolizing the keyboard.
Pay attention when your partner is driving, too. Be an active participant in the programming process. Don't just wait for your turn. The 'driver' isn't expected or granted power to make all decisions just because they're currently typing.
Listen to your partner even if you think you already know the answer. There's always more than one way to solve a problem. Just because you have a solution you feel confident in, doesn't mean the conversation is over. Discuss it with your partner, remain open to their ideas, too.
Embrace debugging. Sure, it's not always fun when code breaks. But debugging is an incredibly important skill, and often considered more difficult to master. Embrace the opportunity to hone your debugging skills when errors occur. Getting your hands dirty and untangling code is often the best way to really solidify your understanding.
Say "I don't know." Donβt be embarrassed to admit when you simply don't understand something. After all, we're here to learn! If you pretend to know something you don't, you risk robbing yourself of a learning opportunity.
Share everything. You and your partner are in this together. All contributions, solutions, successes, mistakes, and unpredictable bugs should be "ours," not "yours" or "mine."
Take breaks, but stay on the same page. Sometimes you simply need a break from the screen. Just make sure to touch base with your partner. Let them know when you leave and when you'll return. Or better yet, synchronize your breaks. Don't just abandon ship.
Learn from your partner. You'll have pairs with both higher and lower confidence in the material than you. When your confidence is higher, don't assume this means you can't learn from your partner. Sure, maybe theyβre still shaky with event handling; but maybe theyβre also great at debugging; or are a downright CSS wizard. Everyone brings something to the table!
Embrace different dynamics. Each new partner is a different experience. Everyone has unique approaches, experiences, mindsets, routines, etc. You'll be required to work with a similarly wide variety of people in your development career. Practice communicating in different dynamics, be flexible to approaches that differ from yours, and take this opportunity to learn how to work and communicate with a wide variety of people.
Check in regularly. Check in regularly with your pair. As you know, you can learn a lot in 8 hours of class. If something's preventing you from making the most of these hours with your partner, discuss it.
Be careful about offering unsolicited advice. This can come across as patronizing. Instead, you can ask if advice would be helpful first β or phrase a suggestion as a question instead. For instance, instead of "You should do this...", try "What if we tried this?"
If it's just not working, speak with your instructor. Sometimes it just doesn't work. If you've tried everything discussed here, and pairing issues still persist let your instructor know! Again, you've seen how much you can learn in 8 hours. We don't want you to unnecessarily sacrifice a day of learning. Your instructor can help work something out.