SlideShare a Scribd company logo
Mob Programming
May 2016
Peter Kofler, ‘Code Cop’
@codecopkofler
www.code-cop.org
Copyright Peter Kofler, licensed under CC-BY.
Peter Kofler
• Ph.D. (Appl. Math.)
• Professional Software
Developer for 15+ years
• “fanatic about code quality”
• I help development teams
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
I help development teams with
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
●
Professionalism
●
Quality and
Productivity
●
Continuous
Improvement
Mentoring
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
●
Pair Programming
●
Programming
Workshops
●
Deliberate
Practice, e.g.
Coding Dojos
Developing Quality
Software Developers
Pair Programming
●
Two programmers
●
work together
●
on the same thing
●
at one workstation.
Pair programming is a dialogue between
two people simultaneously programming
(and analysing and designing and testing)
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
Mob Programming
●
All the brilliant people
●
working at the same time,
●
in the same space,
●
at the same computer,
●
on the same thing.
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
http://mobprogramming.org/
Enterprise CTO
not impressed by
mob programming.
“We often have hundreds
of developers working
on the same thing.”
(Hacker News Onion)
Mobbing Roles
Driver
●
Writes code and “does not think“.
(intelligent input device)
●
Only listens to navigator.
●
Asks for help when lost.
●
Participates in discussion when not typing.
●
Rotates every 4 minutes.
(e.g. Coding – Commit – Rotate)
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
Navigator
●
Formulates the ideas of the team.
●
Tells the driver what to do.
●
Does not tell short-cuts (unless asked).
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
The Team
●
Focuses on the code.
●
Does not zone out/use mobile phone etc.
●
Proposes changes.
●
Gives ideas.
●
Asks questions.
●
Might google for some API/details.
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
Facilitator
●
Teams new to Mob Programming might
need a dedicated facilitator with
experience in team dynamics.
●
Does not type or discuss.
●
Cares for the rules.
●
Mitigates emotional aspects of mobbing.
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
The Rules
3 Simple Rules
●
Driver does not think.
●
Navigator formulates the ideas of team
and driver only listens to navigator.
●
Start with 4 minute rotation.
(Volunteer will check the timer.)
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
I heard them first from Nancy Van Schooenderwoert, https://twitter.com/vanschoo
Sandro Mancuso's “Fast Mob“
● Fastest driver.
(We do not want to lose time for rotating or learning short-cuts.)
● Driver is not rotating.
● Driver is the one who types fastest/knows IDE best.
● Driver uses his/her best known environment.
● Constantly move forward.
(If the mob does not decide,
the driver starts typing and moves
forward in any direction.)
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
http://codurance.com/2015/11/01/practicing-well-crafted-design/
Mitigate Emotional Aspects
(for new/young team with strong opinions)
●
Give preference
(i.e. allow other approaches and see what happens)
●
Stick to a given idea for a few minutes
before questioning it (again).
●
Objections and other/different ideas are
noted, but team moves on.
●
Don't discuss (too much).
●
Don't shout or interrupt.
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
Hints for working on the
projector or large screen
●
Colours (Contrast is different.)
●
Font size (e.g.
presentation mode)
●
Line numbers
●
Map references on
the monitor →
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
Image by https://twitter.com/sf105/status/706810807301050370
Peter Kofler
@codecopkofler
www.code-cop.org
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
CC Images
●
mob https://www.flickr.com/photos/67471462@N00/446597008/
●
Bruce http://www.flickr.com/photos/sherpas428/4350620602/
●
pairing http://www.flickr.com/photos/dav/94735395/
●
driver http://www.flickr.com/photos/48694743@N00/517658329/
●
rules http://www.flickr.com/photos/mc_sensei/3935815039/
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY

More Related Content

What's hot (20)

PDF
Brutal Coding Constraints (ITAKE 2017)
Peter Kofler
 
PDF
Coding Dojo: Functional Calisthenics (2016)
Peter Kofler
 
PDF
The Brutal Refactoring Game (2013)
Peter Kofler
 
PDF
Software Craftsmanship Journeyman Tour (2013)
Peter Kofler
 
PDF
Coding Dojo: Mars Rover (2014)
Peter Kofler
 
PDF
Code Retreat Graz, Austria 2013
Peter Kofler
 
PDF
Coding Dojo Object Calisthenics (2016)
Peter Kofler
 
PDF
TDD as if You Meant It (2013)
Peter Kofler
 
PDF
Coding Dojo: Bank OCR Outside-In (2015)
Peter Kofler
 
PDF
Designing Test Cases for the Gilded Rose Kata (2013)
Peter Kofler
 
PDF
Extract Method Refactoring Workshop (2016)
Peter Kofler
 
PDF
Coding Dojo: Baby Steps Push Challenge (2021)
Peter Kofler
 
PDF
Idiomatic R for Rosetta Code (2013)
Peter Kofler
 
PDF
Refactoring the Tennis Kata (2013)
Peter Kofler
 
PDF
Deliberate Practice, New Learning Styles (2015)
Peter Kofler
 
PDF
Coding Dojo: Adding Tests to Legacy Code (2014)
Peter Kofler
 
PDF
Coding Dojo: Naming with Dices (2021)
Peter Kofler
 
PDF
Using Automated Code Reviews to Achieve Continuous Quality (ASQF Agile Night ...
Peter Kofler
 
PDF
Pair Programming (2015)
Peter Kofler
 
PDF
Outside-in Test Driven Development - the London School of TDD
Peter Kofler
 
Brutal Coding Constraints (ITAKE 2017)
Peter Kofler
 
Coding Dojo: Functional Calisthenics (2016)
Peter Kofler
 
The Brutal Refactoring Game (2013)
Peter Kofler
 
Software Craftsmanship Journeyman Tour (2013)
Peter Kofler
 
Coding Dojo: Mars Rover (2014)
Peter Kofler
 
Code Retreat Graz, Austria 2013
Peter Kofler
 
Coding Dojo Object Calisthenics (2016)
Peter Kofler
 
TDD as if You Meant It (2013)
Peter Kofler
 
Coding Dojo: Bank OCR Outside-In (2015)
Peter Kofler
 
Designing Test Cases for the Gilded Rose Kata (2013)
Peter Kofler
 
Extract Method Refactoring Workshop (2016)
Peter Kofler
 
Coding Dojo: Baby Steps Push Challenge (2021)
Peter Kofler
 
Idiomatic R for Rosetta Code (2013)
Peter Kofler
 
Refactoring the Tennis Kata (2013)
Peter Kofler
 
Deliberate Practice, New Learning Styles (2015)
Peter Kofler
 
Coding Dojo: Adding Tests to Legacy Code (2014)
Peter Kofler
 
Coding Dojo: Naming with Dices (2021)
Peter Kofler
 
Using Automated Code Reviews to Achieve Continuous Quality (ASQF Agile Night ...
Peter Kofler
 
Pair Programming (2015)
Peter Kofler
 
Outside-in Test Driven Development - the London School of TDD
Peter Kofler
 

Similar to Mob Programming (2016) (20)

PDF
Mob Programming : How To Never Stop Producing Value - Scrum Gathering Talk 03...
André De Sousa
 
PPTX
Mob programming - Without the Torches and Pitchforks
Jeremy Wood, MBA, PMP, CSM, CSP, LSSBB, SPC4, SA
 
PDF
Remote Mob Programming
Camille Bell
 
PDF
Pair Programming (2014)
Peter Kofler
 
PDF
Mob Programming for Continuous Learning
Mike Clement
 
PPTX
Mob Programming - Whole Team Collaboration
Nick Goede
 
PPTX
Pairing and mobbing
Sarah Dutkiewicz
 
PPTX
Mob programming - put down the pitchforks and pick up a keyboard
owennell
 
PPTX
Mob Programming - Put down the pitchforks and pick up a keyboard
Neil Studd
 
PDF
Demystifying pair programming, swarming and mob programming - Shrikant Vashis...
Technical Agility institute
 
PDF
Mob Programming - Entwicklertag Frankfurt 2016
Sven Amann
 
PDF
It's XP, Stupid
Mike Harris
 
PPTX
MOB PROGRAMMING
Scrum Breakfast Vietnam
 
PDF
Mob Programming and the Power of Flow by Woody Zuill at #AgileIndia2019
Agile Software Community of India
 
PDF
Married to the Mob (programming)
Derek Graham
 
PDF
The Road To Technical Team Lead
benwaine
 
PDF
My Favorite Topic: Me (2011)
Peter Kofler
 
PDF
Married to the Mob (programming)
Derek Graham
 
PDF
Coding Dojo: Fun with Tic-Tac-Toe (2014)
Peter Kofler
 
PDF
EuroSTAR Webinar - Mob testing
Maaret Pyhäjärvi
 
Mob Programming : How To Never Stop Producing Value - Scrum Gathering Talk 03...
André De Sousa
 
Mob programming - Without the Torches and Pitchforks
Jeremy Wood, MBA, PMP, CSM, CSP, LSSBB, SPC4, SA
 
Remote Mob Programming
Camille Bell
 
Pair Programming (2014)
Peter Kofler
 
Mob Programming for Continuous Learning
Mike Clement
 
Mob Programming - Whole Team Collaboration
Nick Goede
 
Pairing and mobbing
Sarah Dutkiewicz
 
Mob programming - put down the pitchforks and pick up a keyboard
owennell
 
Mob Programming - Put down the pitchforks and pick up a keyboard
Neil Studd
 
Demystifying pair programming, swarming and mob programming - Shrikant Vashis...
Technical Agility institute
 
Mob Programming - Entwicklertag Frankfurt 2016
Sven Amann
 
It's XP, Stupid
Mike Harris
 
MOB PROGRAMMING
Scrum Breakfast Vietnam
 
Mob Programming and the Power of Flow by Woody Zuill at #AgileIndia2019
Agile Software Community of India
 
Married to the Mob (programming)
Derek Graham
 
The Road To Technical Team Lead
benwaine
 
My Favorite Topic: Me (2011)
Peter Kofler
 
Married to the Mob (programming)
Derek Graham
 
Coding Dojo: Fun with Tic-Tac-Toe (2014)
Peter Kofler
 
EuroSTAR Webinar - Mob testing
Maaret Pyhäjärvi
 
Ad

More from Peter Kofler (9)

PDF
Writing Tests with the Unity Test Framework
Peter Kofler
 
PDF
Pragmatic Introduction to Python Unit Testing (PyDays 2018)
Peter Kofler
 
PDF
GDCR15 in Las Palmas, Gran Canaria
Peter Kofler
 
PDF
Designing Test Cases for the Gilded Rose Kata v2 (2015)
Peter Kofler
 
PDF
Pragmatic Introduction to PHP Unit Testing (2015)
Peter Kofler
 
PDF
Coding Dojo for Testers/Testing Dojo: Designing Test Cases with FitNesse (2014)
Peter Kofler
 
PDF
Code Refactoring - Live Coding Demo (JavaDay 2014)
Peter Kofler
 
PDF
Coding Dojo: Bank OCR (2014)
Peter Kofler
 
PDF
Prime Factors Code Kata - Practicing TDD (2014)
Peter Kofler
 
Writing Tests with the Unity Test Framework
Peter Kofler
 
Pragmatic Introduction to Python Unit Testing (PyDays 2018)
Peter Kofler
 
GDCR15 in Las Palmas, Gran Canaria
Peter Kofler
 
Designing Test Cases for the Gilded Rose Kata v2 (2015)
Peter Kofler
 
Pragmatic Introduction to PHP Unit Testing (2015)
Peter Kofler
 
Coding Dojo for Testers/Testing Dojo: Designing Test Cases with FitNesse (2014)
Peter Kofler
 
Code Refactoring - Live Coding Demo (JavaDay 2014)
Peter Kofler
 
Coding Dojo: Bank OCR (2014)
Peter Kofler
 
Prime Factors Code Kata - Practicing TDD (2014)
Peter Kofler
 
Ad

Recently uploaded (20)

DOCX
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
PDF
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
DOCX
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Staying Human in a Machine- Accelerated World
Catalin Jora
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Staying Human in a Machine- Accelerated World
Catalin Jora
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 

Mob Programming (2016)

  • 1. Mob Programming May 2016 Peter Kofler, ‘Code Cop’ @codecopkofler www.code-cop.org Copyright Peter Kofler, licensed under CC-BY.
  • 2. Peter Kofler • Ph.D. (Appl. Math.) • Professional Software Developer for 15+ years • “fanatic about code quality” • I help development teams PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  • 3. I help development teams with PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY ● Professionalism ● Quality and Productivity ● Continuous Improvement
  • 4. Mentoring PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY ● Pair Programming ● Programming Workshops ● Deliberate Practice, e.g. Coding Dojos
  • 6. Pair Programming ● Two programmers ● work together ● on the same thing ● at one workstation. Pair programming is a dialogue between two people simultaneously programming (and analysing and designing and testing) PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  • 7. Mob Programming ● All the brilliant people ● working at the same time, ● in the same space, ● at the same computer, ● on the same thing. PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY http://mobprogramming.org/
  • 8. Enterprise CTO not impressed by mob programming. “We often have hundreds of developers working on the same thing.” (Hacker News Onion)
  • 10. Driver ● Writes code and “does not think“. (intelligent input device) ● Only listens to navigator. ● Asks for help when lost. ● Participates in discussion when not typing. ● Rotates every 4 minutes. (e.g. Coding – Commit – Rotate) PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  • 11. Navigator ● Formulates the ideas of the team. ● Tells the driver what to do. ● Does not tell short-cuts (unless asked). PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  • 12. The Team ● Focuses on the code. ● Does not zone out/use mobile phone etc. ● Proposes changes. ● Gives ideas. ● Asks questions. ● Might google for some API/details. PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  • 13. Facilitator ● Teams new to Mob Programming might need a dedicated facilitator with experience in team dynamics. ● Does not type or discuss. ● Cares for the rules. ● Mitigates emotional aspects of mobbing. PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  • 15. 3 Simple Rules ● Driver does not think. ● Navigator formulates the ideas of team and driver only listens to navigator. ● Start with 4 minute rotation. (Volunteer will check the timer.) PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY I heard them first from Nancy Van Schooenderwoert, https://twitter.com/vanschoo
  • 16. Sandro Mancuso's “Fast Mob“ ● Fastest driver. (We do not want to lose time for rotating or learning short-cuts.) ● Driver is not rotating. ● Driver is the one who types fastest/knows IDE best. ● Driver uses his/her best known environment. ● Constantly move forward. (If the mob does not decide, the driver starts typing and moves forward in any direction.) PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY http://codurance.com/2015/11/01/practicing-well-crafted-design/
  • 17. Mitigate Emotional Aspects (for new/young team with strong opinions) ● Give preference (i.e. allow other approaches and see what happens) ● Stick to a given idea for a few minutes before questioning it (again). ● Objections and other/different ideas are noted, but team moves on. ● Don't discuss (too much). ● Don't shout or interrupt. PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  • 18. Hints for working on the projector or large screen ● Colours (Contrast is different.) ● Font size (e.g. presentation mode) ● Line numbers ● Map references on the monitor → PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY Image by https://twitter.com/sf105/status/706810807301050370
  • 19. Peter Kofler @codecopkofler www.code-cop.org PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  • 20. CC Images ● mob https://www.flickr.com/photos/67471462@N00/446597008/ ● Bruce http://www.flickr.com/photos/sherpas428/4350620602/ ● pairing http://www.flickr.com/photos/dav/94735395/ ● driver http://www.flickr.com/photos/48694743@N00/517658329/ ● rules http://www.flickr.com/photos/mc_sensei/3935815039/ PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY