Pair Programing

Pair Programing means programming side by side with another developer

How to Steps

  1. Come up with a clear and defined goal that is reachable within 1-2 hours.
  2. Plan Roles.
    • Driver: Types & Talks
    • Navigator: Watches & Talks
  3. Get setup. Multiple keyboards or a projector can help everyone see the code that is being written.
  4. Make a plan for what you're going to accomplish.
  5. Start!

Do's and Don'ts

  1. The navigator should give directions to the driver. When/if the driver makes some changes they should narrate what they are doing.
  2. Watch for errors and typos but give drivers the chance to correct typos and dropped commas before you point them out.
  3. Keep your eye on the small details, but also on the big picture. Are you approaching problems with the right architecture and the right approach?
  4. Celebrate wins.
  5. Switch fluidly and often (usually every 8-25 minutes)
  6. Generally the more experienced developer should navigate.

Myth Busting

Pair Programing will make you code slower

False Pair Programming is a faster way to code because you don't get stuck and your code has fewer bugs. Being stuck and having bugs takes up 80% of your time while coding.

I'm too much of a beginner, no one more advanced will want to pair with me

False developers of any skill level can pair. Probably it is nicer to have people at near the same skill level, but in a learning environment everyone is close enough to get the benefits of pair programming.

If you don't have two keyboards and two mice you can't pair program.

False Although it is nice to have extra hardware, you can pair program with just a laptop.

References

https://en.wikipedia.org/wiki/Pair_programming

http://www.wikihow.com/Pair-Program

https://www.youtube.com/watch?v=ET3Q6zNK3Io