The Buddy System: A Look at Pair Programming Agile Day Twin Cities November 2, 2012
Slide 2
Agenda • Who Am I? • Who Are You? • The Buddy System • What’s the Big Deal? • Why is it so Hard? • Let’s Pair! • Questions
Slide 3
Who Am I?
• Jenna Pederson • Programmer-geek, lover of learning • 10+ years in the software space
Slide 4
Who Are You?
Slide 5
The Buddy System • Two programmers, one computer
• Operate as a single
unit to keep an eye on and support each other
• Take on
complementary roles Image: tomsaint / http://www.flickr.com/photos/tomsaint/
Image: oklanica / http://www.flickr.com/photos/oklanica/
Why is Pair Programming Hard?
Slide 12
Common Excuses and the Solutions
Slide 13
• Programmers are Introverts. • I have a personal “bubble” and I don’t want you in it.
• You’re going too fast for me to keep up.
• You’re going too slow. I’m getting bored.
• My partner is always multi-tasking on a second computer.
• My pair is a keyboard hog.
Slide 14
• My partner is telling me which characters to type!
• How do I convince management? • It costs twice as much to hire two people to do one person’s job.
• My team is distributed and remote pairing is hard.
• My team sets their own hours. • I’m getting sick of my pair partner. • My pair partner smells.
Scoring a Bowling Game • A “game” has 10 frames • Score for a frame is the number of
pins knocked down in both “rolls” + extras for strikes and spares
• Player can “roll” a ball to knock down some pins
• At the end, a game can be “scored”