Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ping Pong Pair Programming - PhillyXP
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Anthony Sciamanna
February 01, 2018
Programming
1
470
Ping Pong Pair Programming - PhillyXP
Ping Pong Pair Programming talk from PhillyXP user group.
Anthony Sciamanna
February 01, 2018
Tweet
Share
More Decks by Anthony Sciamanna
See All by Anthony Sciamanna
Beyond Unit Testing: The Real Value of Test-Driven Development
asciamanna
0
78
Fearlessly Improving Legacy Code - PhillyXP
asciamanna
1
260
Beyond Unit Testing - The Real Value of TDD - Agile5
asciamanna
1
190
Extreme Programming: Past, Present, and Future
asciamanna
1
390
Beyond Unit Testing - The Real Value of TDD - Client Talk
asciamanna
1
320
PhillyXP Mob Programming Workshop
asciamanna
1
250
Beyond Unit Testing: The Real Value of Test-Driven Development - PhillyXP
asciamanna
0
370
Beyond Unit Testing: The Real Value of Test-Driven Development - Slalom
asciamanna
0
220
Mob Programming - Whole Team Collaboration - PhillyXP
asciamanna
1
880
Other Decks in Programming
See All in Programming
AgentCoreとHuman in the Loop
har1101
5
240
Fragmented Architectures
denyspoltorak
0
160
Oxlint JS plugins
kazupon
1
960
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
380
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
4
2k
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
2
1.9k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
580
Oxlintはいいぞ
yug1224
5
1.3k
ぼくの開発環境2026
yuzneri
0
230
コントリビューターによるDenoのすゝめ / Deno Recommendations by a Contributor
petamoriken
0
200
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
190
KIKI_MBSD Cybersecurity Challenges 2025
ikema
0
1.3k
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
240
Side Projects
sachag
455
43k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
320
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Into the Great Unknown - MozCon
thekraken
40
2.3k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
110
Context Engineering - Making Every Token Count
addyosmani
9
660
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.3k
Transcript
The Ultimate Developer Collaboration Technique PING PONG PAIR PROGRAMMING Anthony
Sciamanna @asciamanna Nick Goede @ngoede February 1, 2018
The Problem
Pair Programming is really interesting, everybody talks about it but
no one does it. - Bryan Helmkamp, Founder and CEO Code Climate, Baruco 2013 “
Traditional Pair Programming Challenges What we’ve heard…
I never get to type!
None
Whenever I am driving my pair just looks at their
phone.
None
I can’t ever get into flow when pairing.
None
Talking about everything I’m doing slows me down.
I have to solve the BIG problems before pairing
Programming By Coincidence AKA Debugger Driven Development
Software Death Spiral
Ping Pong Pair Programming
Pair Programming Test-Driven Development Ping Pong Pair Programming
None
Nick Anthony Writes a failing test Makes the test pass
Writes the next failing test Makes the next test pass Only when all tests pass either person can refactor Continue until there are no more tests to write
Solutions
I never get to type!
Whenever I am driving my pair just looks at their
phone.
Rapid Switching Intervals
I can’t ever get into flow when pairing.
Save States
None
Talking about everything I’m doing slows me down.
Collaborative Iterative
Evolutionary Design & Refactoring
Collaboration & Communication
Code Comprehension
None
Demo The Bill Payer App Allows users to view, manage,
and autopay their bills
Task Calculate mortgage grace date • Business Days are weekdays
• If due date is a non-business day then pay bill on next business day
Anthony https://youtu.be/WZsLNrnS4yk
Nick https://youtu.be/WujNniqzf9U
Anthony https://youtu.be/OoSvlJv24hE
Nick https://youtu.be/Kl6UbPtJNGo
Anthony https://youtu.be/kUkD_Ak6PLc
Nick https://youtu.be/5VEuhMLS_Mk
Task Calculate water bill grace date • Business Days are
weekdays • If due date is a non-business day then pay bill on previous business day
Anthony https://youtu.be/6coH9P0Yuxg
Nick https://youtu.be/CSzFSzsKaXM
Anthony https://youtu.be/1gfihiwx8dw
Nick https://youtu.be/4SfL6WWsCjo
Nick https://youtu.be/1eFAMNBStCo
Anthony https://youtu.be/P_u5OWjAcWo
Try Ping Pong Pair Programming! Effective and a lot of
FUN
CONTACT US! For more information about this talk go to
bit.ly/phillyxp-4p Nick Goede @ngoede Anthony Sciamanna @asciamanna