Your SlideShare is downloading. ×
www.PairCoaching.net
Everything YOU wanted to know
about
PairProgramming
but were
afraid
to ask...
Yves Hanoulle
PairCoach...
What is the succesfull outcome of this talk?
It’s a Topless talk...
Questions by Post-it
4
Aha Wall
Referee cards
6
You.About()
 Who is a programmer?
 Who is a manager?
 Who has done PairProgramming?
 Who likes pairing?
The goal is to enlarge your toolbox
PairProgramming what is it?
What is
this
Russian
thinking
?
Driver - Navigator
Experience
one team
Pair Programming
Isn’t it waste?
Why would two people do the job of one? I
Why would two people do the job of one? II
Why would two people do the job of one? III
Why would two people do the job of one? IV
Why would two people do the job of one? V
Why would two people do the job of one? VI
Why would two people do the job of one? VIII
Why would two people do the job of one? IX
Why would two people do the job of one? X
Why would two people do the job of one? XI
This is why two people do the job of one !!!
Won’t a junior developer slow down senior developer?
It’s about the speed of the team!
The power of the junior
The EGO of the senior
My cost will double I
My Costs will double II
My cost will double III
“IBM reported spending about $250
million repairing and reinstalling
fixes to 30,000 customer-repo...
Less distraction...
It’s Fun...
Let’s talk about the resistance
Small work area
Strong Code Ownership
Inconsistent workstation setup
People don’t care
Everyone settles into their own “Comfort Zone” over time
Hard and dangerous tasks
Boring tasks
New Team Member
New Framework
New Language
Need more experts
Have a higher Truck Number...
Knowledge Sharing
Tacit
knowledge
Explicit
Knowledge
Just Do IT
PingPong Programming
Keyboard and Mice Pairing
Pairing Station I
Pairing Station II
 Promiscue pairing
Pairing Rotation
Distributed PairProgramming
Promiscue pairing
Side-By-Side programming
Screen Pairing
Pomodoro Technique
Ask for help
Rescue
Pairing Smells
Distracted Pair
No pair rotation
Manager decides the pair
Nobody talks about the elephant
Selective Pairing
Some people can’t do it
Some people can’t do it... III
Discussions are needed for GREAT results
Productivity Alone
Productivity Together
What is the succesfull outcome of this talk?
Pictures
 Naresh Jain: http://www.slideshare.net/nashjain/pair-programming
 Jurgen Appelo: http://www.noop.nl/2011/04/th...
Url’s
 http://www.slideshare.net/nashjain/pair-programming
 http://nat.truemesh.com/stairmaster.html#
 http://www.mitch...
History
 Version 4: Created for a mini conference for students
 Version 8: adapted for internal PairProgramming training...
I give Free Lifetime support on everything I do
 Blog, slides, books, pictures :
http://www.hanoulle.be
 Social Media @Y...
Me.About()
Creative Collaboration Agent
in EMEA.
Partner of Els Ryssen
Father of Joppe 2002, Bent 2004, Geike 2007
@YvesHa...
PairCoaching.net the way to leading greatness
Thank you !!
Everything you wanted  to know about PairProgramming but were afraid to ask
Everything you wanted  to know about PairProgramming but were afraid to ask
Everything you wanted  to know about PairProgramming but were afraid to ask
Everything you wanted  to know about PairProgramming but were afraid to ask
Everything you wanted  to know about PairProgramming but were afraid to ask
Everything you wanted  to know about PairProgramming but were afraid to ask
Upcoming SlideShare
Loading in...5
×

Everything you wanted to know about PairProgramming but were afraid to ask

9,678

Published on

(Previously called PairProgramming is like sex)
I created this presentation to explain to IT students what is PairProgramming. The second part of my talk they had to PairProgram themselves.
(Hence the title: nobody can explain sex in a book or presentation, you have to do it, to know what it does to you.)

Published in: Education, Technology, Design
10 Comments
16 Likes
Statistics
Notes
  • On November 17 (2011) I am giving a workshop where this presentation is part of http://www.ilean.be/course/pp201111
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • @Yves: I see. I usually argue that TDD is and should be development. You could drive design from BDD which could be less fine grained than TDD (as in working at a higher level of abstraction).
    I also argue that the tests that one writes stems from some sort of requirement, constraint or expectation on the software. Design is one kind of constraint and therefore I don't see that tests can (or should) drive design. But this all comes down to what you put into the word 'design'.
    I'm not saying that you're wrong - these are the questions or arguments I usually put forward to get a discussion going in order to better understand what the other person actually means with TDDesign. :)
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • @Adolfo that is one of the reasons. There are more, like 'you can't learn it from a book.' what else?
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • @Frederik: originally TDD was called Test Driven Development. These days a lot of people (including me) say that TDD works because it is more a design technique then a development technique.
    That is why I call it Test Driven Design. Although you can do PP without TDD and viceversa, the two techniques support eachother. That is why usually when I talk about ne, I add a small part about the other, for if I have time to space.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Well, PairProgramming is typically associated with TDD (as in Development, not Design). My assumption might've been wrong.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
9,678
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
1
Comments
10
Likes
16
Embeds 0
No embeds

No notes for slide
  • Write this down during 1 minute then share this with your neighbour
  • If during the course, you have questions, please write them on a post it.
  • Two guys working on the same taskBoth have the same target
  • One person executes, the other watches and gives directions
  • Two site or two people working as one team
  • "yep, dat is de drill. In de eerste plaats een veiligheidsmaatregel. Als je verongelukt, of er is een probleem met je persluchttoestel is er direct iemand op de hoogte. Ook handiger om aan de slang te sleuren of te overleggen."
  • The junior developer slows down the senior?The speed of your team is not about the fastests developer, it is about the slowest developerIf you speed up the slowest developer, you speed up the teamUse the
  • The junior developer slows down the senior?The speed of your team is not about the fastests developer, it is about the slowest developerIf you speed up the slowest developer, you speed up the teamUse the
  • Pairing experiment at University of Utah
  • How many people can YOU afford to loose
  • Write this down during 1 minute then share this with your neighbour
  • Transcript of "Everything you wanted to know about PairProgramming but were afraid to ask"

    1. 1. www.PairCoaching.net Everything YOU wanted to know about PairProgramming but were afraid to ask... Yves Hanoulle PairCoaching.net
    2. 2. What is the succesfull outcome of this talk?
    3. 3. It’s a Topless talk...
    4. 4. Questions by Post-it 4
    5. 5. Aha Wall
    6. 6. Referee cards 6
    7. 7. You.About()  Who is a programmer?  Who is a manager?  Who has done PairProgramming?  Who likes pairing?
    8. 8. The goal is to enlarge your toolbox
    9. 9. PairProgramming what is it? What is this Russian thinking ?
    10. 10. Driver - Navigator
    11. 11. Experience
    12. 12. one team
    13. 13. Pair Programming
    14. 14. Isn’t it waste?
    15. 15. Why would two people do the job of one? I
    16. 16. Why would two people do the job of one? II
    17. 17. Why would two people do the job of one? III
    18. 18. Why would two people do the job of one? IV
    19. 19. Why would two people do the job of one? V
    20. 20. Why would two people do the job of one? VI
    21. 21. Why would two people do the job of one? VIII
    22. 22. Why would two people do the job of one? IX
    23. 23. Why would two people do the job of one? X
    24. 24. Why would two people do the job of one? XI
    25. 25. This is why two people do the job of one !!!
    26. 26. Won’t a junior developer slow down senior developer?
    27. 27. It’s about the speed of the team!
    28. 28. The power of the junior
    29. 29. The EGO of the senior
    30. 30. My cost will double I
    31. 31. My Costs will double II
    32. 32. My cost will double III “IBM reported spending about $250 million repairing and reinstalling fixes to 30,000 customer-reported problems. That is over $8,000 for each defect!” -“A Discipline for Software Engineering”, 1995, Humphrey, W.S.
    33. 33. Less distraction...
    34. 34. It’s Fun...
    35. 35. Let’s talk about the resistance
    36. 36. Small work area
    37. 37. Strong Code Ownership
    38. 38. Inconsistent workstation setup
    39. 39. People don’t care
    40. 40. Everyone settles into their own “Comfort Zone” over time
    41. 41. Hard and dangerous tasks
    42. 42. Boring tasks
    43. 43. New Team Member
    44. 44. New Framework
    45. 45. New Language
    46. 46. Need more experts
    47. 47. Have a higher Truck Number...
    48. 48. Knowledge Sharing Tacit knowledge Explicit Knowledge
    49. 49. Just Do IT
    50. 50. PingPong Programming
    51. 51. Keyboard and Mice Pairing
    52. 52. Pairing Station I
    53. 53. Pairing Station II  Promiscue pairing
    54. 54. Pairing Rotation
    55. 55. Distributed PairProgramming
    56. 56. Promiscue pairing
    57. 57. Side-By-Side programming
    58. 58. Screen Pairing
    59. 59. Pomodoro Technique
    60. 60. Ask for help
    61. 61. Rescue
    62. 62. Pairing Smells
    63. 63. Distracted Pair
    64. 64. No pair rotation
    65. 65. Manager decides the pair
    66. 66. Nobody talks about the elephant
    67. 67. Selective Pairing
    68. 68. Some people can’t do it
    69. 69. Some people can’t do it... III
    70. 70. Discussions are needed for GREAT results
    71. 71. Productivity Alone
    72. 72. Productivity Together
    73. 73. What is the succesfull outcome of this talk?
    74. 74. Pictures  Naresh Jain: http://www.slideshare.net/nashjain/pair-programming  Jurgen Appelo: http://www.noop.nl/2011/04/the-feedback-door.html  Vera Peeters personal collection  Dilbert : http://www.dilbert.com/  British Monarchy http://www.flickr.com/photos/britishmonarchy/  Jan Tielens: http://www.flickr.com/photos/JanTielens  Picture Bill Gates: http://www.labnol.org/internet/favorites/13-year-old-bill-gates- with-paul-allen/330/  One-Agency: http://www.one-agency.be/jobs  Pomodoro: http://www.pomodorotechnique.com/  Drupal Image: http://www.zabisco.com/  B Marick & C Haines: http://www.exampler.com/blog/2008/12/10/screen-pairing/  Yves Hanoulle & Els Ryssen http://www.flickr.com/photos/yveshanoulle/  Lots of picture already years on my drive. If you recognise one, please tell me and I add credentials.
    75. 75. Url’s  http://www.slideshare.net/nashjain/pair-programming  http://nat.truemesh.com/stairmaster.html#  http://www.mitchlacey.com/docs/XR4PromiscuousPairingandBeginnersMind.pdf  http://collaboration.csc.ncsu.edu/laurie/Papers/Kindergarten.PDF  http://www.britannica.com/bps/additionalcontent/18/34706583/Pair-Programming-as-a-Modern- Method-of-Teaching-Computer-Science  http://www.pomodorotechnique.com/  The Core Protocols http://alturl.com/b9fn  The Costs and Benefits of Pair Programming (Laurie Williams & Alistair Cockburn)  Strengthening the Case for Pair-Programming (- Laurie Williams, Robert R. Kessler, Ward Cunningham & Ron Jeffries)  On the Economic Feasibility of Pair Programming (Hakan Erdogmus & Laurie Williams )  http://www.netobjectives.com/ap/download/pairing.pdf  http://salfreudenberg.wordpress.com/2013/06/08/pair-programming-and-expertise/  http://salfreudenberg.wordpress.com/2013/06/15/pair-programming-uptake-and-peripheral- awareness/  http://altabel.wordpress.com/2013/05/24/pair-programming-pluses-and-minuses-bonuses-and- anti-patterns/
    76. 76. History  Version 4: Created for a mini conference for students  Version 8: adapted for internal PairProgramming training  Version 11: Uploaded a new version to be used for public training  Version 15: Added extra material  Version 20: renamed the presentation + removed content
    77. 77. I give Free Lifetime support on everything I do  Blog, slides, books, pictures : http://www.hanoulle.be  Social Media @YvesHanoulle  Linkedin: http://www.linkedin.com/in/YvesHanoulle  Mobile: +32 476 43 38 32  Skype: YvesHanoulle  Free life time:  My life not yours
    78. 78. Me.About() Creative Collaboration Agent in EMEA. Partner of Els Ryssen Father of Joppe 2002, Bent 2004, Geike 2007 @YvesHanoulle
    79. 79. PairCoaching.net the way to leading greatness Thank you !!

    ×