Non-Solo Development | Glossary

Definition:

In Extreme Programming (XP), pair programming is a practice that suggests two developers should work together sharing one keyboard as they code. This is also a type of code review/ design in real-time as one person watches when the other codes. The key benefit is better quality coding before the code is generated.            

Non-solo development produces higher quality code, code with fewer defects, and less technical debt.  Most all of us have seen the chart that shows the cost of a defect growing exponentially during the development lifecycle.  Fixing a bug in a maintenance mode requires someone (or a pair) to wrap their brain around often complex algorithms in order to understand the logic, make the repair, and not break something else.  This is far more costly later, rather than when the code is “fresh in your head”. Having a second set of eyes present while code is being authored often catches these bugs before they happen.  

Further Reading:

Book: Disciplined Agile Delivery by Scott W. Ambler and Mark Lines