Emily Bates highlights how generative AI disrupts traditional mob programming by causing disengagement and communication breakdowns, but proposes new collaboration techniques like collaborative prompt writing, real-time commentary, and collective review to maintain team engagement and effectiveness. She emphasizes the importance of adapting communication patterns and holding retrospectives to integrate AI smoothly, ultimately enhancing collaborative coding and mentoring through combined human and AI efforts.
In this video, Emily Bates, a technical coach and software developer, discusses the challenges and solutions of integrating generative AI tools into mob programming, a collaborative coding practice she has long advocated. Mob programming involves a team working together on the same code, with roles rotating frequently to keep everyone engaged and aligned. Traditionally, this method relies on clear communication patterns, such as the “intention, location, details” approach, to prevent common failure modes like disengagement or chaotic overlapping conversations. However, the introduction of generative AI disrupts these dynamics, often causing teams to fall into these failure modes more easily.
Emily explains that when using AI in mob programming, teams tend to experience two main issues: first, everyone becomes silent and passive while the AI “typist” works, leading to disengagement; second, once the AI finishes, the group often talks over each other, causing confusion and loss of focus. Additionally, the AI’s response times can interfere with the usual timed role rotations, and the communication pattern shifts as the human “talker” mainly dictates prompts rather than collaboratively leading the coding effort. These changes make the collaborative experience less satisfying and effective.
To address these challenges, Emily shares several new interaction patterns that help maintain collaboration while leveraging AI. One key technique is “collaborative prompt writing,” where team members individually write prompts in a shared document before combining and refining them together. This approach encourages equal participation, reduces dominance by louder voices, and provides coaching opportunities. Another technique involves pausing roles to discuss next steps and using real-time transcripts to feed the AI, ensuring everyone stays aligned on the task.
Emily also recommends having a team member provide a running commentary on the AI’s output as it generates code, helping the group stay engaged and focused rather than silently reading and interpreting the AI’s work independently. After the AI completes its task, the team should slow down, review the changes together, and discuss what to keep or discard. This collective review helps maintain shared understanding and decision-making. Finally, she emphasizes the importance of holding retrospectives after sessions to reflect on the process, name the interaction and prompting patterns used, and build a shared vocabulary for working effectively with AI tools.
In conclusion, Emily remains optimistic about the value of collaborative coding with AI, especially for mentoring junior engineers and producing better software through multiple human minds working together. While generative AI disrupts traditional mob programming practices, adopting new communication and collaboration patterns can restore and even enhance team dynamics. She encourages teams to experiment with these techniques and continue developing a language and approach for “agentic” software development that integrates human and AI contributions effectively.
Useful Links
- Mob Programming and Ensemble Programming Techniques by Woody Zuill — Foundational mob programming communication and collaboration patterns referenced as basis for traditional practice.