Pair Programming is when two people write code together on one machine. This collaboration helps improve code quality, readability, and simplicity. Not only is it an on-the-fly code review, since it has two pairs of eyes looking it over, but it is also a form of design review, thereby beating regular code reviews on several fronts. Pairing also helps with Sprint progress by moving the focus to completing stories and limiting the WIP. There are too many other benefits to list in a short glossary entry.
Ironically, some of the earliest programming work (before it was called programming) was done in pairs: “Betty Snyder and I, from the beginning, were a pair. And I believe that the best programs and designs are done by pairs, because you can criticise each other, and find each others errors, and use the best ideas.”
– Jean Bartik, one of the original programmers of the ENIAC computer. (source – https://martinfowler.com/articles/on-pair-programming.html)
Mythbusting – Collective Code Ownership
Pair Programming vs. Code Reviews – It’s a no Brainer
Resource Links:
- Abstract Evaluating performances of pair designing in industry
- An alternative take on the ‘Driver’ and ‘Navigator’ roles in pair programming
- Arlo Belshi – On Setting Up A Successful Pairing Environment
- Code Reviews Bad – Pair Programming Good
- Considerate Pair Programming – Part 1
- Considerate Pair Programming – Part 2
- Considerate Pair Programming – Part 3
- Creating the Motivation to Pair Program
- Cross-Functional Pair Programming
- How To Make Pair Programming More Effective
- On Pair Programming – this is a deep article
- Pair Programming (YouTube video with two teenagers)
- Pair Programming Antipatterns
- Pair Programming Chapter from Shore and Warden’s book – Agile Development
- Pair Programming Considered Extremely Beneficial
- Pair Programming Costs and Benefits
- Pair Programming Lessons from Improv
- Pair-programming makes people share
- Pairing, Competence, and Recognition
- Root causes of friction in pairs: Expert Induced Amnesia
- So what do the Driver and Navigator really do?
- The ‘Needs’ Aspect of Pair-Programming
- The effectiveness of pair programming: A meta-analysis
- Two Elements of Pair Programming Skill
- Two Years of Pair Programming
- Undesirable pair programming behaviours – The Thrasher and The Divider
- What if we rotate pairs every day?
- What it’s Like to Pair for a Year
PAIR PROGRAMMING BOOKS
- Pair Programming: A book on problem solving – YvesHanoulle, talboomerik, and Clare Sudbery
See Also:
Agile Engineering Practices
Ensemble Programming
Mark Levison has been helping Scrum teams and organizations with Agile, Scrum and Kanban style approaches since 2001. From certified scrum master training to custom Agile courses, he has helped well over 8,000 individuals, earning him respect and top rated reviews as one of the pioneers within the industry, as well as a raft of certifications from the ScrumAlliance. Mark has been a speaker at various Agile Conferences for more than 20 years, and is a published Scrum author with eBooks as well as articles on InfoQ.com, ScrumAlliance.org an AgileAlliance.org.
*Thank you for visiting the World's Largest Opinionated Agile Reference Library. This content is created and the links are curated through the lens of Agile Pain Relief Consulting's view of what is effective in the practice of Scrum and Agile. We don't accept submissions and emails to that effect are marked as spam. Book listings may use affiliate links that could result in a small commission received by us if you purchase, but they do not affect the price at all. From experience, this won't amount to anything more than a cup of coffee in a year.« Back to Glossary Index