DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

How does AI transform chaos engineering from an experiment into a critical capability? Learn how to effectively operationalize the chaos.

Data quality isn't just a technical issue: It impacts an organization's compliance, operational efficiency, and customer satisfaction.

Are you a front-end or full-stack developer frustrated by front-end distractions? Learn to move forward with tooling and clear boundaries.

Developer Experience: Demand to support engineering teams has risen, and there is a shift from traditional DevOps to workflow improvements.

Related

  • Scrum Smarter, Not Louder: AI Prompts Every Developer Should Steal
  • Misunderstanding Agile: Bridging The Gap With A Kaizen Mindset
  • When Agile Teams Fake Progress: The Hidden Danger of Status Over Substance
  • What They Don’t Teach You About Starting Your First IT Job

Trending

  • From Monolith to Containers: Real-World Migration Blueprint
  • The Missing Infrastructure Layer: Why AI's Next Evolution Requires Distributed Systems Thinking
  • How Node.js Works Behind the Scenes (HTTP, Libuv, and Event Emitters)
  • How to Improve Software Architecture in a Cloud Environment
  1. DZone
  2. Culture and Methodologies
  3. Agile
  4. Pairing vs. Mobbing

Pairing vs. Mobbing

Pairing and mobbing are the fastest ways I know to propagate knowledge across a team, improve quality, and reinforce new habits.

By 
David Bernstein user avatar
David Bernstein
DZone Core CORE ·
Jan. 04, 17 · Opinion
Likes (7)
Comment
Save
Tweet
Share
8.7K Views

Join the DZone community and get the full member experience.

Join For Free

I was talking to some friends at Agile 2016 about which they thought was more effective: pair programming done well or mob programming done well? We ended up deciding that the jury is still out on this question, at least for the time being.

In terms of learning and spreading knowledge across a team, we felt that both pairing and mobbing were comparable, with mobbing a bit more efficient. The same, we felt, is true for the quality of code produced, with both paring and mobbing yielding significantly higher code quality than software developed by a programmer working alone.

However, in terms of productivity, we weren’t sure which was better. We thought it probably depends upon the team and the type of problem they’re solving.

I find that pairing done well can be much more productive than having developers work by themselves. We’re far less likely to make mistakes and introduce bugs into code when we work in pairs.

Debugging is still the number one time sink in developing software, so if we can reduce the time required by debugging by writing fewer bugs, it can greatly boost the number of features we can deliver.

I have personally not had enough experience with mob programming to get a sense of how productive a team can be when they’re working with the same problem at the same time, but I do have a lot of experience with pair programming and I am always surprised at how much more productive we can be together than just working on our own.

One might think that mob programming is highly inefficient because the whole team is working on the same story at the same time, but it turns out there are a lot of parallel tasks that can be worked on by different team members as a story is being implemented. The result is that most everyone is engaged most of the time when mobbing. Click here to see a time-lapse video of a team mobbing for a day condensed into five minutes.

In my experience, as soon as you have people start to work together, they spend much more time focused on solving problems and much less time doing other things. Pair programming boosts productivity on any team as long as they learn how to do it well.

Writing software can be a personal activity, so learning how to build software collaboratively and out of a conversation rather than out of our heads can be a different skill set for some developers. However, the benefits can be enormous. Pairing and mobbing are the fastest ways I know to propagate knowledge across a team, improve quality, and reinforce new habits.

I have heard a lot of people’s opinions about pairing and mobbing who have never tried either. I know from my own experiences that pairing is very different than I thought it would be. So, what about your experiences? Have you successfully done pairing or mobbing? Did you feel the team’s productivity increased or decreased?

Pairing (computing) agile Mob programming

Published at DZone with permission of David Bernstein, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Related

  • Scrum Smarter, Not Louder: AI Prompts Every Developer Should Steal
  • Misunderstanding Agile: Bridging The Gap With A Kaizen Mindset
  • When Agile Teams Fake Progress: The Hidden Danger of Status Over Substance
  • What They Don’t Teach You About Starting Your First IT Job

Partner Resources

×

Comments

The likes didn't load as expected. Please refresh the page and try again.

ABOUT US

  • About DZone
  • Support and feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • [email protected]

Let's be friends: