4 ms·
The premise of Mob Programming[1] seems ludicrous to me. I can't imagine a scenario where this would be efficient in creating a product. The irony of the concep
by pg_bot 9y ago
The premise of Mob Programming[1] seems ludicrous to me. I can't imagine a scenario where this would be efficient in creating a product. The irony of the concept is that it is sold along "lean and agile principles". Has anyone found success using this model?
1: “All the brilliant people, working on the same thing, at the same time, in the same space, and at the same computer.“
- mrmrcoleman 9y agoI found that it is excellent for finding out who is comfortable with which parts of the code base. That information can inform choices that would eventually lead to more productivity overall. This was perhaps 4 hours per week though. I'm sceptical about this being a good way to do things all the time.
- sillysaurus3 9y agoFWIW, the justification is interesting. From https://thecuriousdeveloper.com/2013/09/15/get-a-good-start-with-mob-programming/ https://thecuriousdeveloper.com/2013/09/15/get-a-good-start-... --- Why we tried it When asked to implement a rather big task, like an epic, you’re often in a state where you have a pretty good picture of what needs to be done on high level, but on a lower level it can be very fluffy and unclear. Fluffy enough to stand in the way of being able to ”slice the cake” in nice, independent, deliverable user stories. Fluffy enough to give us problems if our aim is to have a structured, ordinary sprint backlog prepared, and to burn that backlog down continuously by developing small software increments for a couple of weeks. You know you’re in that fluffy state when: - Someone asks where a good place to start this epic is and all possible ways you can think of are either intertwined and far from independent steps or just one big mega user story - You get a urge to just start coding, hack away for a while and see where you end up - You may even wish that you, for a while at least, could forget everything related to user stories, epics, backlogs and burn downs and just do some Programming, Motherfucker http://programming-motherfucker.com/ http://programming-motherfucker.com/ --- Now, if this technique can supposedly solve that critical problem -- and it is critical; I spend >N% of my time in that sate -- we should give it the benefit of the doubt and just try it. It sounds like the point is to spend a couple hours in an environment where forward progress is always being made every minute, yet freedom has been completely removed. I think I'd volunteer for that, to be honest. It's so nice working from a designer's mockup rather than trying to design + build the whole app simultaneously. That same feeling might apply here. It's kind of compelling. But only if everyone actually wants to do it. Think of how much time we've all wasted fiddling around with design, moving property lists around, exploring new approaches, or throwing in an hour of metaprogramming only to find out it reduced our line count from 150 to 100 and made it quite a lot harder to read. If you tried to pull any of that during one of these sessions, you'd get called out immediately. Oh yeah: http://hackthesystem.com/blog/why-i-hired-a-girl-on-craigslist-to-slap-me-in-the-face-and-why-it-quadrupled-my-productivity/ http://hackthesystem.com/blog/why-i-hired-a-girl-on-craigsli... You know, this really should be a thing. I wonder if devs would pay for this? I'd give someone $20/hr to keep me on track. But they'd need to know enough about programming not to be annoying or blatantly mistaken.
- nerdponx 9y agoMob programming sounds like a goofy nerdy substitute for "getting a meeting room and figuring it out on a whiteboard".
- DanielBMarkham 9y agoMob programming is one of those beautiful counter-intuitives you run into in technology development. It solves many problems, the main one being that it's extremely easy in technology to seem to have agreement on something, only for there to be tons of various ways of interpreting stuff when you actually execute. When you mob, you force the team not only to come to agreements on working patterns in general, but to come to agreement on them at the lowest level of detail. And that's just one of the things it does. It's not a panacea, but it manages to do a lot of various things that might take a long time and do them immediately.