How to Run a Mob Programming Session in English
Learn the English phrases for facilitating a mob programming session — rotating the driver, navigating disagreements, and keeping the whole group engaged.
Mob programming — where an entire team works on the same problem, at the same computer, at the same time — puts a premium on clear, real-time verbal communication. Unlike pair programming, where two people can rely on shared context built up over time, a mob session often includes people who think differently and need the facilitator to keep language precise, inclusive, and moving at a good pace.
Opening the Session
Set expectations clearly at the start, especially with a rotating driver-navigator setup.
- “We’ll rotate the driver every 10 minutes — whoever is at the keyboard just types what the group decides, they don’t make unilateral decisions.”
- “If you’re not driving or navigating right now, you’re still part of the mob — feel free to jump in with a suggestion at any point.”
- “Let’s agree on the goal for this session before we start typing: we want a working test for this edge case, not a finished feature.”
Guiding the Driver
The driver’s job is execution, not decision-making — the facilitator’s phrasing should reinforce that.
- “Go ahead and type exactly what we just agreed on — don’t improvise a different approach on your own while you’re driving.”
- “If you see a better way while you’re driving, say it out loud rather than just doing it — let’s decide as a group.”
- “You’re up next as navigator — can you describe out loud what we want the driver to type, one step at a time?”
Managing the Navigator Role
The navigator directs at a higher level than dictating exact syntax, and phrasing should reflect that.
- “As navigator, try to describe intent — ‘let’s extract this into a helper function’ — rather than dictating every character.”
- “Let’s pause the navigator for a second; a few people have follow-up questions about that approach.”
- “Good navigating — that was clear enough that the driver didn’t need to ask any clarifying questions.”
Handling Disagreements
Disagreements are common and healthy in a mob — the language you use should keep them productive.
- “I hear two different approaches here — let’s timebox five minutes to each and vote before committing to one.”
- “I don’t think we’ve reached agreement yet — can whoever’s not convinced explain what’s still unclear?”
- “Let’s park this disagreement for now, get something working, and revisit the design question afterward with fresh eyes.”
Keeping Everyone Engaged
Facilitators actively draw in quieter participants, since a mob can otherwise be dominated by a few voices.
- “We haven’t heard from you in a while — does this approach make sense from where you’re sitting?”
- “Let’s make sure everyone gets a turn driving today, even if some of you are less familiar with this part of the codebase.”
- “If anyone’s lost at any point, please say so immediately — there’s no such thing as a bad question in a mob session.”
Wrapping Up
Close with a clear summary and next steps, since mob sessions can otherwise end without a shared sense of what was decided.
- “Let’s recap what we actually built today and what’s still left before we call this feature done.”
- “Before we break, can someone volunteer to write up the decision we made about the retry strategy, so it’s documented for people who weren’t here?”
- “Great session — let’s schedule the next mob slot for tomorrow to keep momentum on this feature.”
Vocabulary Reference
| Term | Meaning |
|---|---|
| Driver | The person currently typing at the keyboard, executing what the group decides |
| Navigator | The person currently directing what the driver should type, at a higher level than dictating syntax |
| Rotation | The scheduled swap of who is driving and navigating, typically every 5-15 minutes |
| Timebox | A fixed, limited amount of time allocated to explore or debate an option before deciding |
| Mob | The whole group participating in the session, as distinct from just the current driver and navigator |
Key Takeaways
- Reinforce the driver’s role as execution, not decision-making — encourage them to say suggestions out loud rather than silently improvising.
- Guide navigators toward describing intent rather than dictating exact syntax, which keeps the whole mob engaged in the thinking.
- Use timeboxing language to resolve disagreements productively instead of letting debates stall the session.
- Actively invite quieter participants into the conversation — mob sessions can otherwise be dominated by the most vocal few.
- Close every session with a clear recap of what was built and decided, so absent teammates and future readers have a clear record.
Navigating Disagreements with Precision – A Nuance for Clarity
Let’s be honest; even in the most collaborative mob sessions, tensions can arise. It’s not about avoiding disagreement entirely – healthy debate is vital – but rather about expressing it constructively and efficiently. Many non-native speakers find direct confrontation daunting, leading to silence or overly polite evasion. However, a little strategic phrasing can dramatically improve the situation. Start with acknowledging the differing perspectives without judgment. Instead of saying something like, “I don’t agree with that,” which can feel confrontational, try, “That’s an interesting point; I was approaching this from a slightly different angle.” This immediately establishes curiosity and invites further discussion.
Another key phrase is to frame disagreement as a seeking clarification opportunity rather than a direct rejection. If the driver’s suggestion isn’t working, instead of saying “That won’t work,” which can sound dismissive, try, “Could we explore why that approach might not be ideal? Perhaps there’s a different way to achieve the same outcome.” This shifts the focus from personal opinion to shared problem-solving. Furthermore, when addressing a heated moment – and they will happen – using phrases like “Let’s step back for a moment” or “Can we take a breath and revisit this?” demonstrates self-awareness and encourages everyone to regain composure. Don’t shy away from acknowledging the emotional element; saying something like, “I can see why that feels frustrating,” validates the other person’s feelings while still steering the conversation back towards solutions.
In Slack conversations related to PR descriptions, for example, instead of simply stating “This is wrong,” a more nuanced approach might be: “I’m noticing some potential challenges with this implementation regarding [specific issue]. Perhaps we could discuss alternative strategies or add some clarifying comments in the description?”. Practicing these phrases and incorporating them into your daily communication will significantly enhance your ability to navigate disagreements effectively within a mob setting, fostering a truly collaborative environment. Remember, clear and respectful communication is the cornerstone of successful mob programming – it’s not about winning an argument; it’s about building the best possible solution together.