Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

The Ultimate Developer Collaboration Technique: Ping Pong Pair Programming

562 Aufrufe

Veröffentlicht am

Pair programming is challenging for uninitiated developers. It has long been considered to yield higher quality code but many developers avoid it because of the challenges and the changes to their workflow. Ping Pong Pair Programming, however is a technique that is easy to learn, addresses the frustrations of traditional pair programming, and encourages other development practices that also yield higher quality code. In this talk we describe the challenges of traditional pair programming, how Ping Pong Pair Programming overcomes them, layout the basics of Ping Pong Pair Programming and then demonstrate how it works in practice.

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

The Ultimate Developer Collaboration Technique: Ping Pong Pair Programming

  1. 1. The Ultimate Developer Collaboration Technique PING PONG PAIR PROGRAMMING Anthony Sciamanna @asciamanna Nick Goede @ngoede Heart of Agile Pittsburgh – April 27, 2017
  2. 2. Nick Anthony 20082005 Acquisition - 2013 Early 2014 Nine years of experience working together, practicing and coaching teams on XP XP Organization 2000
  3. 3. The Problem
  4. 4. Pair Programming is really interesting, everybody talks about it but no one does it. - Bryan Helmkamp, Founder and CEO Code Climate, Baruco 2013 “
  5. 5. Traditional Pair Programming Challenges What we’ve heard…
  6. 6. I never get to type!
  7. 7. Whenever I am driving my pair just looks at their phone.
  8. 8. I can’t ever get into flow when pairing.
  9. 9. Talking about everything I’m doing slows me down.
  10. 10. Developers new to TDD & pair programming think they have to solve the big problems before they start pairing
  11. 11. Programming By Coincidence AKA Debugger Driven Development
  12. 12. Ping Pong Pair Programming
  13. 13. Pair Programming Test-Driven Development Ping Pong Pair Programming
  14. 14. 2. Write only enough production code to make the test pass 1. Create a failing unit test (not compiling counts as a failing test) 3. Refactor only when all unit tests are passing Ping Pong Pair Programming
  15. 15. Nick Anthony Writes a failing test Makes the test pass Writes the next failing testMakes the next test pass Only when all tests pass either person can refactor Continue until both people agree there are no more tests to write
  16. 16. Solutions
  17. 17. I never get to type!
  18. 18. Whenever I am driving my pair just looks at their phone.
  19. 19. I can’t ever get into flow when pairing.
  20. 20. Talking about everything I’m doing will slow me down.
  21. 21. DEMO The Bill Payer App Allows users to view, manage, and autopay their bills
  22. 22. USER STORY As a bill payer I want my mortgage bill paid on its due date or the first business day after its due date (when it falls on a non- business day), so that I can maximize the time that I keep my money in my account without incurring penalties
  23. 23. Anthony https://youtu.be/WZsLNrnS4yk
  24. 24. Nick https://youtu.be/WujNniqzf9U
  25. 25. Anthony https://youtu.be/OoSvlJv24hE
  26. 26. Nick https://youtu.be/Kl6UbPtJNGo
  27. 27. Anthony https://youtu.be/kUkD_Ak6PLc
  28. 28. Nick https://youtu.be/5VEuhMLS_Mk
  29. 29. USER STORY As a bill payer I want my water bill paid on its due date or the first business day before its due date (when it falls on a non-business day), so that I can maximize the time that I keep my money in my account without incurring penalties
  30. 30. Anthony https://youtu.be/6coH9P0Yuxg
  31. 31. Nick https://youtu.be/CSzFSzsKaXM
  32. 32. Anthony https://youtu.be/1gfihiwx8dw
  33. 33. Nick https://youtu.be/4SfL6WWsCjo
  34. 34. Nick https://youtu.be/1eFAMNBStCo
  35. 35. Anthony https://youtu.be/P_u5OWjAcWo
  36. 36. Try Ping Pong Pair Programming!
  37. 37. CONTACT US! We love talking about Agile Software Development, XP, developer practices, helping development teams improve how they work and their code, etc. Nick Goede @ngoede ngoede@gmail.com http://nickgoede.com Anthony Sciamanna @asciamanna asciamanna@gmail.com http://anthonysciamanna.com Github Repo – Each Step of Ping Pong Pair Programming Demo https://github.com/asciamanna/ping-pong-pair-programming-talk

×