Pair

Pair Programming is a method of coding in a pair that leads to improved code quality, team communication, knowledge share and huge learning gains.  Several large scale studies of computer science students have shown improved outcomes when student pair program on coding problems.  In the past, pair programming has been restricted to those able to meet in the same location, however the ubiquitous nature of the internet has unleashed the remarkable power of remote pair programming, which we strongly encourage everyone to use as part of Agile Ventures.

If you want to remote pair program you'll first need to find someone to pair with, for which we recommend joining the AgileVentures Slack Community. Slack is a real-time chat tool that all AgileVenturers use to communicate and coordinate.  You'll get an invite automatically if you sign up to AgileVentures.

In the Slack community you can join "channels" for different projects, and see if there's anyone interested in pair programming with you.  There's more on this process in our "getting started" pages.  Also, if you'd like to pair or mob program with AgileVentures Mentors then please take advantage of our Premium Mob and F2F offers.


Technologies for Remote Pair Programming

You'll also need some screen share tools.  From most simple to most complex here are a few
The last two can nicely be paired with an Amazon EC2 instance.  

Other great RPP resources:
Selection of help videos and protocols

Quotes from Remote Pair Programmers in edX's Massively Open Online Class "Engineering Software as a Service":

Dag Andre Ivarsøn:
I've really learned how to use the debugger during these pairing sessions, and we really drive each other forwards :-) It really helps having someone to talk to.

Antoine ModuloM:
I'm convinced that 4 brains is really better than one. I've learned a lot and we go through homework 3 till the end. Thank you all!

Sunil Manandhar
Pair programming helped me boost my confidence; it helped me gain a motion from where I'd usually stop. There was socializing, sharing, and a synergistic effect. I've improved a lot!

Semyon Vodyannikov:
When you program alone, if you are stuck, you go spend your time on facebook or theonion.com. But if you pair, you don't get distracted and there is always someone who can give you a hand :)


General Pair Programming Tips


Do's:

  • Talk
  • Listen
  • Rotate Roles
  • Be Patient
  • Respect
  • Take Breaks
  • Prepare
  • Personal Hygiene
  • Have Fun


Don't:

  • Be Bossy
  • Be Intimidated
  • Be Quiet
  • Suffer in Silence

More on remote pair programming


Revisions