Mob Programming

Mob Programming

Author: BJ Burns and Will Gant May 11, 2023 Duration: 49:08

Mob programming is a technique for getting multiple developers in the room, working on the same code. While possibly not the best technique for many situations, it really shines in certain narrow use cases. When it does work, it can often produce impressive results that a few separate developers couldn't produce on their own. The collaborative aspects of mob programming are similar to pair programming in some respects, with very similar upsides and downsides.

In a mob programming session, a stakeholder and the team will first identify the goal of the session, which should be a testable outcome. Then everyone works together to come up with a general strategy and procedure for getting the work done, including what tools will be used to accomplish the work. This is a critical first step if you want to avoid stopping and rewriting code frequently while everyone else is watching.

Then, when the session begins everyone goes into a room and works together. One person will be typing for a while, while the rest of the team looks at the screen (or hopefully a projector) while the first person works. They will offer feedback as the first person does some work. The person writing the code will change frequently so that they don't burn out. The rest of the team is there to support the first person as well as to offer feedback about various aspects of the code. In effect, this allows for the session to have the blessing of the entire team, and to incorporate the knowledge of the entire team. More tasks will probably be assigned to various team members as a result of the session as well.

Mob programming is a seldom-used, but often powerful approach to getting software written. While it's not always the best choice, it can be very useful for improving team collaboration or for exploring areas where there are gaps in the team's knowledge.

The post Mob Programming appeared first on Complete Developer Podcast.


Hosted on Acast. See acast.com/privacy for more information.


BJ Burns and Will Gant host the Complete Developer Podcast, a conversation that goes far beyond just writing code. These two seasoned developers built this show from a simple idea: that a career in tech is about more than the latest framework or language syntax. It's about the entire ecosystem you navigate, from the logic on your screen to the dynamics of the business meetings and the long-term path of your career. Each episode feels like pulling up a chair in the break room with colleagues who get it, discussing the real, often unspoken, parts of the job. You'll hear them tackle the intersection of technology, business strategy, and professional growth, making sense of how these pieces fit together in a practical, everyday way. This podcast digs into the questions that don't always have a clear answer in a manual-how to communicate effectively with non-technical teams, ways to approach career advancement, or how to balance deep technical work with the broader goals of a company. It's a resource for anyone who writes code but lives in a much bigger world, offering perspective and discussion that aims to make the whole journey a bit more comprehensible and a lot more manageable. Tune in for thoughtful, grounded talks that treat development as the multifaceted profession it truly is.
Author: Language: English Episodes: 100

Complete Developer Podcast
Podcast Episodes
HTTP Verbs [not-audio_url] [/not-audio_url]

Duration: 48:03
HTTP or hypertext transfer protocol is a protocol for transferring documents: HTML, images, etc. between a client, usually a web browser and a server. HTTP verbs or HTTP methods are codified forms of communication in the…
The Great Resignation [not-audio_url] [/not-audio_url]

Duration: 43:29
Towards the tail end of covid times (or still in the middle of them, depending on where you live), a lot of news articles started talking about a phenomenon called The Great Resignation. While you probably have a rough i…
Steps To Critical Thinking [not-audio_url] [/not-audio_url]

Duration: 42:26
Critical thinking is about knowing how to organize and understand a problem or decision and come to conclusion. It is necessary for avoiding cognitive bias in advanced problem solving skills and decision making.Read more…
Better Meeting Notes [not-audio_url] [/not-audio_url]

Duration: 42:56
Meetings are a fact of life and nearly everyone could improve the way that they take notes. There is nothing worse than sitting through a long meeting and then later having to ask a bunch of questions that were answered…
Resilience Through Consistency [not-audio_url] [/not-audio_url]

Duration: 52:41
Resilience is the ability to recover quickly. Having consistent patterns of behavior helps you to know where to jump back in when something knocks you off your regular schedule requiring you to be resilient.Read more ›Th…
Monorepos [not-audio_url] [/not-audio_url]

Duration: 34:20
As development teams grow, the number of code repositories used by them grows as well. Over time, this ends up making some things more complicated than they have to be. You've probably heard of companies putting everythi…
Resilience In Stress [not-audio_url] [/not-audio_url]

Duration: 40:28
No matter how efficient you are, when you get stressed your productivity drops. It is important to be resilient in stress so that you can overcome stressful situations.Read more ›The post Resilience In Stress appeared fi…
Systems Thinking [not-audio_url] [/not-audio_url]

Duration: 39:24
If you've worked on complex or distributed systems at all, at some point you've seen them produce behavior that is predictable in hindsight, but that you never would have predicted yourself. Systems take on a life of the…
7 Habits of Unsuccessful People [not-audio_url] [/not-audio_url]

Duration: 39:49
Everyone has habits, behaviors they do on a regular, daily basis. These habits are either moving you toward your goals and success or they are holding you back from them.Read more ›The post 7 Habits of Unsuccessful Peopl…
Resilient UX [not-audio_url] [/not-audio_url]

Duration: 38:20
User interfaces are hard to get right, especially for developers. While the nitty gritty details are better left to design podcasts, there are some simple rules that developers can keep in mind when building UI and UX. W…