SlideShare a Scribd company logo
Put down the pitchforks
and pick up a keyboard
Mob
Program
ming
“All the brilliant people working
on the same thing, at the same
time, in the same space, and on
the same computer”
- Woody Zuill
Concerns in a nutshell
• It’s wasteful/inefficient
• You’re using [x] people to do 1 or 2 people’s work!
• We don’t have the resources to work that way
Concerns in a nutshell
There’s more to programming than code…
• Implement a ‘walking skeleton’
• Decide if it’s fit-for-purpose
• Agree on refactoring
• Reviewing with stakeholders
• Analysing requirements
• Deciding how to solve a problem
• Agreeing on an approach
• Creating examples/scenarios
KNOWLEDGE
SHARING
CODE REVIEW
CONSISTENCY
DEBATE
LEARNING
INCLUSIVE
EMERGENT
DESIGN
Driver NavigatorsCentral Monitor
(HDMI / DVI / VGA)
Tea and biscuits
Similarly-specced machines
(plus a wireless keyboard/mouse)
Pens, paper,
whiteboards
for sketching
Monitor and webcam
Isolated from noise
(incoming and outgoing!)
Tricks of the trade
• Line numbers
• Sidebar
• Mobbing remotely
MOBBING:
THE CHALLENGES
NOT EVERY TASK IS SUITABLE
SPLITTING ISN'T A SIN
BEWARE RABBIT HOLES
DON’T MAKE ONE PERSON DRIVE FOR TOO
SUPPORT THE DRIVER
TRUST REQUIRED
DON'T FORCE IT
Conclusion
• Can be more productive (in the right situations)
• Knowledge-sharing means less ramp-up time on related tasks
• It’s worked for us – it might work for you
• It’s easy to try
• Contact us if you’d like some advice
#MobProgramming

More Related Content

Similar to Mob programming - put down the pitchforks and pick up a keyboard

e3-chap-19.ppt
e3-chap-19.ppte3-chap-19.ppt
e3-chap-19.ppt
SarcasticSam1
 
體驗劇場_1050503_W11_原型設計_楊政達
體驗劇場_1050503_W11_原型設計_楊政達體驗劇場_1050503_W11_原型設計_楊政達
體驗劇場_1050503_W11_原型設計_楊政達
Visual Cognition and Modeling Lab
 
Software Craftsmanship and Agile Code Games
Software Craftsmanship and Agile Code GamesSoftware Craftsmanship and Agile Code Games
Software Craftsmanship and Agile Code Games
Mike Clement
 
Interaction Design
Interaction DesignInteraction Design
Interaction Design
Kajsa Gren
 
[I3 d]03 interactivity
[I3 d]03 interactivity[I3 d]03 interactivity
[I3 d]03 interactivityjylee6977
 
UX for VR ignite talk
UX for VR ignite talkUX for VR ignite talk
UX for VR ignite talk
Delightex
 
Prototyping 2013.12.12.
Prototyping 2013.12.12.Prototyping 2013.12.12.
Prototyping 2013.12.12.
zhenxun
 
Tablet pc
Tablet pcTablet pc
Tablet pcjaved22
 
UX LX in short...
UX LX in short...UX LX in short...
UX LX in short...
pubsmith
 
Rettig.Interaction Design History.V1.5
Rettig.Interaction Design History.V1.5Rettig.Interaction Design History.V1.5
Rettig.Interaction Design History.V1.5
pemi hua
 
Beginner's Guide to UI Design
Beginner's Guide to UI DesignBeginner's Guide to UI Design
Beginner's Guide to UI DesignMáirín Duffy
 
Game Design 2 (2013): Lecture 5 - Game UI Prototyping
Game Design 2 (2013): Lecture 5 - Game UI PrototypingGame Design 2 (2013): Lecture 5 - Game UI Prototyping
Game Design 2 (2013): Lecture 5 - Game UI Prototyping
David Farrell
 
Wireframe like a UX Pro
Wireframe like a UX ProWireframe like a UX Pro
Wireframe like a UX Pro
Peter Van Dijck
 
How Do I UX?
How Do I UX?How Do I UX?
How Do I UX?
Dave Stadler
 
UX skillsharing at Betahaus Sofia
UX skillsharing at Betahaus SofiaUX skillsharing at Betahaus Sofia
UX skillsharing at Betahaus Sofia
Damjan Obal
 
Getting started in mobile games
Getting started in mobile gamesGetting started in mobile games
Getting started in mobile gamesahamidi27
 
What's up about Plasma-MID?
What's up about Plasma-MID?What's up about Plasma-MID?
What's up about Plasma-MID?
OpenBossa
 
SPTechCon 2014 San Francisco Visual Tools and Gamestorming Workshop
SPTechCon 2014 San Francisco Visual Tools and Gamestorming WorkshopSPTechCon 2014 San Francisco Visual Tools and Gamestorming Workshop
SPTechCon 2014 San Francisco Visual Tools and Gamestorming Workshop
Michelle Caldwell, PSM, SSGB
 
Home OS
Home OSHome OS
Home OS
sarahbukhari
 

Similar to Mob programming - put down the pitchforks and pick up a keyboard (20)

e3-chap-19.ppt
e3-chap-19.ppte3-chap-19.ppt
e3-chap-19.ppt
 
體驗劇場_1050503_W11_原型設計_楊政達
體驗劇場_1050503_W11_原型設計_楊政達體驗劇場_1050503_W11_原型設計_楊政達
體驗劇場_1050503_W11_原型設計_楊政達
 
Software Craftsmanship and Agile Code Games
Software Craftsmanship and Agile Code GamesSoftware Craftsmanship and Agile Code Games
Software Craftsmanship and Agile Code Games
 
Interaction Design
Interaction DesignInteraction Design
Interaction Design
 
[I3 d]03 interactivity
[I3 d]03 interactivity[I3 d]03 interactivity
[I3 d]03 interactivity
 
UX for VR ignite talk
UX for VR ignite talkUX for VR ignite talk
UX for VR ignite talk
 
Prototyping 2013.12.12.
Prototyping 2013.12.12.Prototyping 2013.12.12.
Prototyping 2013.12.12.
 
Tablet pc
Tablet pcTablet pc
Tablet pc
 
UX LX in short...
UX LX in short...UX LX in short...
UX LX in short...
 
Rettig.Interaction Design History.V1.5
Rettig.Interaction Design History.V1.5Rettig.Interaction Design History.V1.5
Rettig.Interaction Design History.V1.5
 
Beginner's Guide to UI Design
Beginner's Guide to UI DesignBeginner's Guide to UI Design
Beginner's Guide to UI Design
 
Game Design 2 (2013): Lecture 5 - Game UI Prototyping
Game Design 2 (2013): Lecture 5 - Game UI PrototypingGame Design 2 (2013): Lecture 5 - Game UI Prototyping
Game Design 2 (2013): Lecture 5 - Game UI Prototyping
 
Wireframe like a UX Pro
Wireframe like a UX ProWireframe like a UX Pro
Wireframe like a UX Pro
 
How Do I UX?
How Do I UX?How Do I UX?
How Do I UX?
 
UX skillsharing at Betahaus Sofia
UX skillsharing at Betahaus SofiaUX skillsharing at Betahaus Sofia
UX skillsharing at Betahaus Sofia
 
Getting started in mobile games
Getting started in mobile gamesGetting started in mobile games
Getting started in mobile games
 
E3 chap-05
E3 chap-05E3 chap-05
E3 chap-05
 
What's up about Plasma-MID?
What's up about Plasma-MID?What's up about Plasma-MID?
What's up about Plasma-MID?
 
SPTechCon 2014 San Francisco Visual Tools and Gamestorming Workshop
SPTechCon 2014 San Francisco Visual Tools and Gamestorming WorkshopSPTechCon 2014 San Francisco Visual Tools and Gamestorming Workshop
SPTechCon 2014 San Francisco Visual Tools and Gamestorming Workshop
 
Home OS
Home OSHome OS
Home OS
 

Recently uploaded

Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 

Recently uploaded (20)

Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 

Mob programming - put down the pitchforks and pick up a keyboard

Editor's Notes

  1. TODO: ONCE WE’RE SET, CONVERT FONT TO IMAGE
  2. NEIL AUDIENCE: TYPICAL PROBLEMS IN DEVELOPMENT Challenges we face – mini retro Waiting for answers: “Question Queue Time” All difficult to solve, but all can be made easier with mob programming
  3. OLI WHO HERE HAS HEARD OF MOB PROGRAMMING BEFORE? WHO’S ACTUALLY DONE IT? Invented by Woody Zuill when he was working at Hunter Industries Most of this is what we try to do in agile anyway. The last bit is the interesting extra twist.
  4. NEIL 10 lines – definitely an exaggeration “I am someone who writes code, they don’t write as much code as I do” Measuring progress by lines of code is BS!
  5. NEIL …Not many of these things require hands on a keyboard …Many of them involve multiple people having a conversation …With mobbing, those people are already in the same place at the same time
  6. OLI
  7. NEIL We had a row of pairing monitors to begin with This is good. Haven pods are even better (isolation from noise/distraction) Same VS versions, same Resharper versions, same preferences for e.g. line endings
  8. NEIL
  9. OLI Talk about what we can still do better? (or use that as a lead-in to the next slide)
  10. NEIL
  11. NEIL That’s OK. We’re not saying you should mob 24/7. We favour mobbing, but evaluate each task for suitability.
  12. OLI - …but don't be too precious about the mob​ (splitting is not a sin)​
  13. OLI - Rabbit-holes become more expensive if they drag the whole mob away​
  14. NEIL Don’t let one person drive too long. Don’t let it always be your most senior person. Pomodoro, whatever length fits – supposedly strict. We tend to rotate at appropriate point (e.g. tests green, section finished).
  15. NEIL Just because driver is in the hotseat, doesn’t mean navigators should switch off. Your role is just as important. You’ll be driving again soon, you’ll need to know what’s going on! As Oli said, if you need to split, just announce it and make sure you catch up on return.
  16. OLI -Everyone’s in the limelight – needs a safe/trusting environment​  
  17. NEIL You can't force a team to work this way. Things Oli said – trust, openness, freedom of communication – comes with time. New teams need to learn each other’s boundaries, what they’re comfortable with. If you throw everyone in at the deep end – everyone might hate it! Small steps, frequent retros.
  18. NEIL -you can't force a team to work this way
  19. NEIL 1 & 2 OLI 3 & 4 Both – thanks!!