5 pair-programming tips and tricks for coaching a remote team

7 minute read

Remote work is an extra challenge for technical agile coaching. Here are 5 opportunistic remote pair-programming tips and tricks to show a better way of working.

Drawing of 2 yaourt pots hanging from the clouds, with a sign board directing to 'A Better Way'. As technical agile coaches, we can leverage on the opportunities of remote pair coaching to show a better way to our coachees.

[…] nothing works better than sitting with them and test-driving some feature or reshaping their existing code–helping them get their work done. [Jeff Langr on extremeprogramming@groups.io]

Collaboration is generally a disappointing afterthought in so many applications [Jay Bazuzi in extremeprogramming@groups.io]

Programming in pairs is only 20 years old - the industry still needs time to catch up to us. [Phlip in extremeprogramming@groups.io]

[…] when remote I have a tendency to forget or hesitate to switch driver [Tim Ottinger in extremeprogramming@groups.io]

Whether we wanted it or not, 2020 has thrown us into remote work. This turned out to be a great challenge for many technical agile coaches:

  • As firm believers in collaboration, we prefer face to face interaction
  • How can we do our job and influence a team if we are not sitting with people?
  • Pair programming tools are not yet up to our standards.

Even though I had regularly been working remotely for a few years, 2020 gave me a hard time to adapt:

  • COVID lock-downs made my schedule chaotic 
  • Remote coaching made communication low-fidelity

2020 also forced me into re-discovering new ways of coaching.

Here are 5 pair-programming tips and tricks that will increase your influence when coaching a remote team. Some are simple must-haves to compensate for not being together. Others are new possibilities unlocked by remote pair programming! All are opportunities to show the way of working that is more effective and sustainable.

#1 Turn Cameras On

Photo of a retro camera. Turning your camera on when remote pair coaching is a good way to show that you face-to-face communication is still of great importance, even in remote work

I remember my first remote talk very well. I had absolutely no clue about how the audience was reacting. Midway through the presentation, I had to pause and ask, “Is anyone here?” to make sure that at least 1 person was listening.

The same thing can happen when you remote pair program. Without the cameras on, we wreck what’s left of non-verbal communication. It becomes too easy to lose attention and to let the driver drive alone.

We should start every pair-programming session by asking our buddy to turn his camera on. The answers can be surprising! Someone once said:

I cannot. I’m still in pyjamas!

The quick-fix was a sweat-shirt :-)

Asking coachees to start their cameras highlights the value of face-to-face communication.

Lesson#1: Teamwork and collaboration remain crucial for remote work

(As a bonus, we also help each other to keep their social skills sharp)

#2 Don’t Get Disturbed

Photo of noise-canceling earmuffs. Having a quiet place to work is super important. If your office is too noisy, investing in a noise canceling headset is the cheapest solution. This will show to your remote pair coachee that you take your work environment seriously.

Would you ever start browsing your phone while pair programming with a coachee? I’m sure you would not! It remains valid when coaching a remote team. The lack of social pressure makes the browser a real trap when coaching remotely.

Here are a few tricks in case mere willpower is not enough to keep you away from emails:

  • Disable all notifications on your laptop and your phone.
  • Close all the apps you don’t need right now.
  • You might also configure a different browser for pair programming only. Don’t set up your social media accounts or email on this browser.
  • I’ve even read of people creating dedicated accounts exclusive to pair programming.
  • At some point, I used a premium version of RescueTime to see how much time I was losing with emails. This motivated me to batch all communication work at the end of the day.

Being at home also comes with its set of distractions. If you don’t have a calm desk, a good pair of headsets is a must-have. I use a Jabra Evolve 75. It does not feature the best noise cancelation out there. Yet my pair buddies thank me for its microphone that filters out surrounding sounds!

Intense pair coaching sessions are a demonstration of the power of energized work.

Lesson#2: Energized teamwork is the most effective way to create value. We must protect this time at all costs.

#3 Stay Focused

Photo of a lens in front of a landscape. Being able to focus, even in remote work, is key to energized and sustainable work. When coaching a remote team with pair programming, we must show the example and make sure to stay super-focused.

The next step after avoiding distraction is remaining focused!

Staying focused for hours of remote pair programming is not a willpower achievement. It’s impossible! If pair programming is already tiring, remote pairing is even more. We need to learn to recognize when we need a break.

As a coach, even if you are paid by the hour, it’s OK to ask for a break. If you don’t, you will not deliver your best.

A good trick is to use a Pomodoro timer to take a break every 25 minutes. As a bonus, you can take this break to switch drivers. There are many online Pomodoro timers available. I remember using marinaratimer.com with a previous team. If you are using Trello, you can also give Pomello a try. You’ll get a log of the time you spend on each task for free.

Taking breaks with your coachee is a way to prove that we stick to a sustainable pace. A pause is also the occasion to discuss non-work-related topics and build relationships.

Lesson#3: A sustainable pace is what makes us effective

#4 Keep Track of the Plan

Here is the Ninety-ninety rule:

The first 90 percent of the code accounts for the first 90 percent of the development time. The remaining 10 percent of the code accounts for the other 90 percent of the development time. [Tom Cargill, Bell Labs]

My “Aha! Moment” with XP was when I understood how it fixes the Ninety-ninety rule. With the right practices in place, when we reach the end of our TODO list, we are done!

Sharing a TODO list is a powerful way to show the power of XP when pair coaching.

Photo of a man taking notes on a paper notebook next to his computer. Taking digital notes when remote pair coaching is even better than traditional paper notes in co-localized pairing. We can use this to walk coachees through a more organized, predictable, productive, and sustainable way of programming.

Online shared tools give us persisted and historized TODOs for free! I bought a Coggle license to draw a mind map, but free tools like Google docs or MindMup would do the trick.

My whole coaching […] comes down to showing people tiny steps they can take that make them feel better about what they do, over a good long while. [GeePaw (Mike Hill) on extremeprogramming@groups.io]

As coaches, keeping a TODO list is an opportunity to show how:

  • to remain organized
  • that XP lets you go through a task with predictability, without an indefinite amount of ‘fix time’ at the end
  • to do a bit of refactoring at each step
  • to apply YAGNI by putting items in a ‘Parking lot

Lesson#4: Good practices make programming more organized, predictable, productive, and sustainable.

#5 Use your machine wisely

Here is another opportunity from remote pair coaching: the navigator has a computer!

There are many ways to become a better navigator when remote pairing:

  • Run mini spikes, using an online interpreter, like OnlineGDB
  • Research APIs on the internet
  • Investigate what people think about a design question

There is a risk of getting out of touch with the driver, though! So:

  1. Keep it short!
  2. Have a dual-screen to keep the driver in sight
  3. Don’t drift to the internet (cf #2)

Cover of Kent Beck's book 'eXtreme Programming eXplained: Embrace Change. When coaching a remote team, using the goods of remote work is a great way to show XP's philosophy of embracing change

As an XP coach, this is a perfect opportunity to show what embracing change means in practice.

Lesson#5: One way to embrace change is to use your context to run experiments and discover better ways to work.

Bonus: explain ‘Why’ and ‘How’ so it snowballs

Photo of ripples on a still lake. Without some form of snowball effect, coaching is useless. We want changes to last after we have left the place. This still holds true, if not more, when coaching a remote team. Whenever we are pair remote coaching, we should explain the 'Why' and 'How' behind any of the previous practices to maximize their chances of being copied by other pairs.

As change agents, we want best practices to spread and stick. Except if we sold mob-programming to the team, we cannot be pairing with everyone all the time! When pair-coaching a remote team, we want team members to stick to best practices without us.

Fortunately, these pair programming tips and tricks are easy to copy. Just spend a bit of time to explain:

  • Why we use these practices, so coachees will want to apply them
  • How to use these practices, so they will know how to apply them

Lesson#6: Anyone can nudge others to try better ways of working.

Summary: What to do next time you do remote pair coaching?

As a coach, your goal is to show a better, more effective, and more sustainable way of working to developers. You can show this better way of working when remote pair coaching by doing the following:

A drawing with the 5 steps to show a better way when remote pair coaching: 1. Cameras on; 2. Disable all notifications; 3. Pomodoro for breaks and switch; 4. Share a TODO list; 5. Navigate with your machine; Remember: explain the Why & How for good practices to spread
By Philippe Bourgau, under CC BY-SA 4.0, high resolution image

Feel free to print this card and stick it on your screen. Give it a try for a while and share your feedback. If you know other remote pair programming tips and tricks, I’d love to read about them too!

If you want to learn more about remote pairing, these posts might interest you:

I usually write about 15 minutes worth of reading per month. I won't transfer your email. No Spam, unsubscribe whenever you want.

As a gift for subscribing, you'll receive an illustrated mini-ebook "How to start a team coding dojo"!