Even though mob programming has been around in the way it’s currently known since 2011, I’ve been quite late to join the party. My first experience with it dates back to October 2016, when I had the pleasure of facilitating a workshop with Maaret about Exploratory Testing & Throw-away Test Automation. Maaret’s style was to facilitate using mob testing, so she showed me how it’s done. As a first observation, I remember being amazed and amused. Amused, because it clearly exposed some problems, such as people’s inability to communicate effectively when they’re used to working alone and thinking alone. It was nice to observe how quickly we can learn to overcome such barriers and go from working solo to group-centered working.
It’s only now that I’ve taken the step to get the journey started ‘for real’, with my own team. Starting wasn’t easy. Back in January, I had a discussion with the developers. They were discussing a problem during a retrospective that I thought could have been solved with mob programming. When I tried to explain mob programming to them, I failed miserably. They thought it was a bad idea and couldn’t see how it would be productive to program with a group. Clearly, I failed to explain it well. I needed a second chance.
Thankfully, our department has bi-weekly knowledge sessions and I signed up with the topic “The Force of Mob Programming” because it would give me the chance to tell the story of mob programming to a lot of developers at once. This opportunity would also force me to get my story straight, find ways of doing mob programming justice by explaining it in a good way and get people to see why it can be beneficial.
Two weeks ago, it finally was my turn to speak and I was really curious how people would respond! I structured my talk as follows:
- What are typical productivity killers in an agile environment and why is that a problem
- What is mob programming and what does it solve
- The history of mob programming (The story of how Woody Zuill and his team started working this way back in 2011 and how they learned together)
- Going over common misconceptions about mob programming
- how can it possibly be productive
- is it for everyone
- how many people can be in a mob
- How can mob programming work for us
- Would you like to try it?
I ended my talk with an open invitation for people to try it. To my delight, a lot of people raised their hands when I asked them if they were open to trying this out. We had a nice engaged discussion afterward and a couple of questions were addressed. Overall, I felt like the talk has been a success in the sense that it got people thinking, but it’s just the beginning.
The real magic will be in doing it, experiencing it, not talking about it.
Luckily, the developers in my team were also interested in trying it out and I will be the facilitator. That really made me happy because when we had the initial discussion about mob programming they were really opposed to the idea. We had a refactor coming up that is necessary and we thought it would be a great candidate for mob programming. A room was booked, the time was set and then it would be time to truly experience it…..
How that went? I’ll write about that next. Keep you posted!