Pair Programming

Pair programming is the practice of having two programmers work at a single computer. They take the role of the Driver, who handles the keyboard and mouse, and the Navigator who observes and comments. Both participants should talk more-or-less continuously, and the two should swap roles periodically. Pair programming is observed to increase enjoyment, performance, and learning of both participants.

Talks from Tapestry Workshops

Speaker Tile Workshop Material
Atlas, James Paired Programming Delaware 2011 Slides (pptx)
Exercise (docx)
Heckman, Sarah Paired Programming Virginia 2012/2015 Slides 2012 (pptx) Slides 2012 (pdf) Slides 2015 (pptx)
Sherriff, Mark Paired Programming Virginia 2011 Slides (ppt)
Warner, Linda Pair Programming Florida 2013 Slides (ppt)
Williams, Laurie Pair Programming North Carolina 2012 Slides (pdf) on implementing it
Slides (pdf) on why to do it
Web site
Vieira Mejia, Camilo Cognitive Load, Pair Programming, etc. Indiana 2013 Slides (google)
Examples (google)

External Resources

  • Web site focussing on the research aspects of pair programming.
  • Web site focussing on how to add pair programming to a classroom.
  • NCWIT's Pair Programming in a Box, a collection of handouts and materials to help you implement pair programming in your classroom.
  • Introductory Video (youtube) designed to be shown to students before they first pair program. 10 minutes.
  • CATME, a tool for creating and evaluating pairs (or larger groups)
  • PairEval, a tool for creating and evaluating pairs

Comments

We find three aspects contributes to a good pairing.

  1. Similar level of ability. Ideally, each participant thinks the other participant is just slightly better than they are. Practically, this means matching students of similar competence.
  2. Similar demographics. Pair programming includes a lot of communication; this is easier the more similar the participants are culturally. This is more important when the students are uncomfortable with pairing.
  3. It seems to work best to pair one person high in Sensing with another high in Intuition on the Myers-Briggs personality index.

Students are more likely to endure a sub-optimal pairing if they know it's just for one or two assignments. Switching pairings also helps distinguish between an unfortunate matching and a problem student in grading.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License