Sep 27, 2019
Today’s guest is Chris Lucian, the Director of Software Development at Hunter Industries and co-founder of the mob programming movement! Chris is passionate about the advancement of software craftsmanship and machine learning. He seeks the continuous improvement of himself, his family, his company, and his community. He believes that we can explore the unexplored potential in all things when looking at our processes with automation and creativity in mind.
In this week’s episode, Chris joins Dan to discuss mob programming. He shares the origin story behind mob programming, what it is and how it is utilized and dispells some of the general misconceptions around it. Chris also highlights many of the key benefits of mob programming and explains some of the best practices!
Key Takeaways
Key takeaways from the origin story behind mob programming:
After getting hired into an organization he was shocked by how everybody was working separately in cubicles and soon developed mob programming
After implementing mob programming, their quality went through the roof and their cycle time went from a year and a half to twice a day and they stopped getting bug reports from production
What is mob programming?
A software development approach where the whole team works on the same thing, at the same time, in the same space, and at the same computer
This approach relies on face-to-face and side-by-side communication, team alignment, collaboration, and whole team involvement
What are coding katas?
The intentional practice of your coding craft
Practicing together by writing code through games such as the Tic Tac Toe Game and the Bowling Game (linked below)
Helps to build a habit or reflex out of coding
Misconceptions around mob programming:
When multiple people are working on a single piece workflow it will cost more for the company
It is a waste of time to implement for the ‘simple stuff’
The benefits of mob programming:
Paired programming helps mitigate risk from siloing and provides an increase in quality
High-bandwidth learning
The code moves all the time
Really optimized for flow efficiency with less time being spent on waste activities like bug fixes
Removing impediments becomes really fast
A higher consciousness of experiments on the team to run about how to make things better and faster
Mobbing on the simple stuff incentivizes programmers to make all that simple stuff go away permanently
Physical cost-wise, four cubicles costs more than a single mobbing station with a high-end computer and two 80” screens
Standup meetings become eliminated because the team is already aligned
Group consciousness is constantly being developed
Psychological safety and feedback becomes necessary through mob programming (which are critical components to a successful team)
The codebase keeps moving forward and nothing gets in its way
Mob programming best practices:
Dedicated learning time
Do frequent retrospectives
Don’t just ‘try’ something; frame it as an experiment (regardless of the outcome, it provides invaluable learning)
Mentioned in this Episode:
Mob Mentality Show (Youtube Channel)
Google Study on the Top 5 Traits of Successful Teams
Companies that are Mob Programming
Mob Programming RPG by Willem Larson
Trello Board — Software Profession Resources
Scrum Gathering Tokyo 2019: “Learning to Experiment” (Chris’ Keynote)
Agile Coaches’ Corner Ep. 5: “Exploring an Experimental Mindset with Adam Ulery”
Chris Lucian’s Book Pick:
Thinking, Fast and Slow, by Daniel Kahneman
Want to Learn More or Get in Touch?
Visit the website and catch up with all the episodes on AgileThought.com!
Email your thoughts or suggestions to Podcast@AgileThought.com or Tweet @AgileThought using #AgileThoughtPodcast!