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
84
Fearlessly Improving Legacy Code - PhillyXP
asciamanna
1
260
Beyond Unit Testing - The Real Value of TDD - Agile5
asciamanna
1
200
Extreme Programming: Past, Present, and Future
asciamanna
1
390
Beyond Unit Testing - The Real Value of TDD - Client Talk
asciamanna
1
330
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
890
Other Decks in Programming
See All in Programming
モジュラモノリスにおける境界をGoのinternalパッケージで守る
magavel
0
3.4k
CopilotKit + AG-UIを学ぶ
nearme_tech
PRO
1
120
24時間止められないシステムを守る-医療ITにおけるランサムウェア対策の実際
koukimiura
2
180
Go Conference mini in Sendai 2026 : Goに新機能を提案し実装されるまでのフロー徹底解説
yamatoya
0
490
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
510
要求定義・仕様記述・設計・検証の手引き - 理論から学ぶ明確で統一された成果物定義
orgachem
PRO
5
1.8k
米国のサイバーセキュリティタイムラインと見る Goの暗号パッケージの進化
tomtwinkle
1
370
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
580
登壇資料を作る時に意識していること #登壇資料_findy
konifar
5
2.1k
PostgreSQL を使った快適な go test 環境を求めて
otakakot
0
390
並行開発のためのコードレビュー
miyukiw
2
2.2k
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
200
Featured
See All Featured
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
130
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
110
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
250
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
430
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
Docker and Python
trallard
47
3.8k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
Faster Mobile Websites
deanohume
310
31k
Ruling the World: When Life Gets Gamed
codingconduct
0
160
Claude Code のすすめ
schroneko
67
220k
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