You’re about to try remote pair programming for the first time, congratulations!
Set aside fears and biases, here are some pieces of wisdom shared by our daily users, that you can rely on to make sure your first session is a success!
One of the biggest benefits of remote pair programming, is that you get to share knowledge and learn from others, from the comfort of your own desk or home . Make sure you have everything you need, from a nice drink to your favorite backlit keyboard. If you’re pairing from home, remember that a good wifi connection is crucial for a smooth session.
Another advantage of remote is to use a tool allowing you to work cross OS and IDEs, such as (you guessed it) Drovio.
Your pairing partner needs you to follow and stay focused, so go ahead and click that “Do not disturb” button, whether that means activating the option on your computer or maybe letting the cat out of the room for a while?
Be prepared to shine bright and keep your camera on for your first PP sessions. First, it will help you start the session with proper greeting and encourage a more relaxed small-talk. Moreover, visual clues will help you make sure you’re both on the same page. At some point you might notice your pair looking a bit confused or lost, but too shy to express it and ask you to slow down.
Going from solo to duo programming is a big change, and your first Pair Programming sessions will definitely leave you exhausted. Set aside 30 minutes to an hour maximum for your first session, and keep the same timeframe for the first week(s). Once both roles feel natural to you, you’ll be able to get adventurous and plan 2 or 3 hour long sessions.
Also, make sure you pick up an easy task, one that you’re probably able to figure out on your own. The goal here is to understand the roles and dynamics of this new duo, not to get stuck on an impossible bug.
Senior or junior, experienced pair programmer or not... doesn’t seem to matter that much, as long as you start with someone you are comfortable with. Everyone is afraid of making mistakes and feeling judged. Surprisingly, we noticed that senior engineers tend to ask more questions than junior ones during PP sessions.
As pleasant as it can be to conquer this new territory with your favorite colleague, keep in mind that you’ll soon have to try Pair Programming with another partner, in order to prevent falling into some bad habits.
This one may seem obvious, but it is necessary for both participants to make sure they understand and share the same objective. This will make more sense once the tasks get harder, as you’ll need to decide and validate the different steps needed to solve a bigger issue, that will help you stay on track later on.
With great power come greater responsibilities.
As the Navigator, you’re naturally taking a more “judgmental” role, so make sure your Driver feels supported and encouraged. Resist the urge to shout “that’s not how it’s done!” and try asking “Why” or “How” questions instead.
As the Driver, your main duty is to remember to also communicate: describe what you are doing and why. You should never go silent for more than 3 minutes.
It’s not easy to understand when you should switch roles, so pairing novices often apply the Pomodoro technique: work for 25 min, take a 5 min break, switch roles and work for another 25 min. This is perfect for a first session.
Once you get more experienced, you’ll be able to determine WHAT will trigger switches instead of WHEN, although timeboxing can totally remain your method of choice.
If you’ve taken time to research pair programming, you’ve probably found different techniques advocating for different rules and requirements. Finding your go-to method and rhythm of choice takes time, so make sure you’re actually enjoying the sessions, rather than feeling guilty for not following rules by the book. If you feel frustrated at the end of a session, talk about it with your partner and try to understand what bothered you. If you feel proud of the work accomplished, celebrate, this is a big step!
Those simple ground rules will help you make sure your team is on the right track and reap benefits sooner than you think. If you’re feeling stuck, our team will be happy to help you, just drop us a message at firstname.lastname@example.org and we’ll come back to you!