Mob Programming

Noun · Hacker Culture · Origin: 2014

Definitions

  1. Mob Programming is a collaborative software development approach where the entire team works together on the same code, at the same time, using a single computer and screen. One person types (the driver) while the rest of the team collectively directs the work (the navigators). The driver role rotates frequently, often every 10-15 minutes. Developed and popularized by Woody Zuill, mob programming extends pair programming to the full team, enabling real-time knowledge sharing, immediate code review, and collective decision-making. The practice eliminates handoffs, reduces work-in-progress, and ensures everyone on the team understands the entire codebase. Critics question the efficiency of having multiple developers focused on a single task, but proponents argue that the reduction in bugs, rework, and communication overhead more than compensates. Mob programming works particularly well for complex problems, onboarding new team members, and building shared understanding of system architecture. Remote mob programming uses screen sharing and video conferencing tools.

    In plain English: When the whole team crowds around one computer and works on the same code together. One person types while everyone else helps think through the problem out loud.

Related Terms