A day of Mob Programming
3:16
12 жыл бұрын
Пікірлер
@Valelacerte
@Valelacerte 11 ай бұрын
I commented on Healthy Software Developer that mobbing saw the greatest increase in knowledge and productivity in my entire career. I found mobbing quite intimidating and stressful to begin with. I don’t think I’m alone as a developer in often feeling that I don’t know enough and require more depth of knowledge in a given technology. I remember assigning tickets to a contractor and, after describing each piece of work, he said, _”Yep, easy!”_ This encapsulates an attitude among many developers that they should be seen as all-knowing. With pair programming, one is only exposing the holes in one’s knowledge to one person. Whereas mobbing exposes them to a group. This is not a problem in a relaxed environment with long term colleagues, but can be stressful in new jobs and projects. Fortunately, my experience was that coders, testers and UXAs were all navigators and drivers at some point which meant that the breadth and depth of knowledge was very varied and yet the collaboration across the team and disciplines created such a good vibe that our productivity was very high. Admittedly, after a day of mobbing, I was finished, but satisfied. Mobbing also inspired me to fill any holes in my knowledge that were revealed during the day’s session.
@Valelacerte
@Valelacerte 11 ай бұрын
In the projects I mobbed on, other project aspects enhanced and arguably made possible the success of mobbing. There were very good comms between the app owner, UX, and developers. UX would develop user stories that atomized into sensible development tasks. We used test driven development and always started with failing tests and using tools to ensure that the test was testing what we thought it was. All the usual automated code, style and formatting validation was employed. We also made regular and small commits. So, I think a fairly disciplined coding approach provided a consistent structure for mobbing to work well.
@JoeJustice0
@JoeJustice0 3 жыл бұрын
I love it!
@FormulaExcel
@FormulaExcel 3 жыл бұрын
Way interesting! Question: how do you evaluate who should get promoted?
@ognjetina
@ognjetina 5 жыл бұрын
codecentric unconference brought me here :)
@neelroy6130
@neelroy6130 8 жыл бұрын
thanks for sharing; I was looking for this. But is this scrum team? If yes, there would also be QE in it. How do you deal with that situation?
@MichaelJamesSeattle
@MichaelJamesSeattle 7 жыл бұрын
I am a Scrum trainer and I don't know what you're trying to say about Scrum here. Skillful teams use techniques such as test-driven development to reduce internal and external handoffs to specialists.
@neelroy6130
@neelroy6130 8 жыл бұрын
thanks for sharing; I was looking for this. But is this scrum team? If yes, there would also be QE in it. How do you deal with that situation?
@ChrisLucian
@ChrisLucian 9 жыл бұрын
I am currently hiring people to work this way. Ping me if your interested.
@thomasgandalf4111
@thomasgandalf4111 9 жыл бұрын
Mob programming, WTF?! All I see is a bunch of people talking endlessly and no code being written. When I sit down to code, I produce 50-100 LOC/hour. Summing up the actual time typing over the whole day, these guys have not written much more than maybe 10 lines in a day. Mob programming is BS.
@AttilaButurla
@AttilaButurla 9 жыл бұрын
+Thomas Gandalf That's nothing, I can some secretaries that can type 120 wpm!
@MichaelJamesSeattle
@MichaelJamesSeattle 8 жыл бұрын
+Thomas Gandalf I hope I'm never called upon to repair the code you wrote in isolation.
@cyberspice3598
@cyberspice3598 7 жыл бұрын
I'm with Thomas. And you wont. Its fully documented, unit tested, functional tested, and virtually bug free. Just let me get on with it.
@PeterViskovics
@PeterViskovics 6 жыл бұрын
And how do you measure quality?
@MichaelJamesSeattle
@MichaelJamesSeattle 5 жыл бұрын
Even trusting your illusion that you have nothing left to learn from others, requirements change and the software will have to change
@insanity54
@insanity54 9 жыл бұрын
Wow that's really interesting. I bet code quality is pretty high with this method.
@cmiller1377
@cmiller1377 9 жыл бұрын
+insanity54 what's the old adage about too many cooks...?
@insanity54
@insanity54 9 жыл бұрын
+C Miller Too many cooks in the kitchen? I don't think that's an issue here. There is only one cook in this kitchen at a time. (the person at the keyboard) "Using this technique the team has acheived 10X productivity." The code is reviewed and scrutinized by several people before it's ever commited to version control. There is reduced need to look up syntax or library documentation because there are several minds with their own knowledge. One person doesn't know something, someone else will.
@joedailey8891
@joedailey8891 10 жыл бұрын
Woody, was nice us enough to spend a whole day teaching us Mob programming at Mitchell International with a team that worked as individuals. They soon learned how to work together, test driven development, breaking down coding attempts to the smallest segments possible, finding patterns, real time re factoring, team communication, constant dynamic improvement all day, migrating to the best ideas the team has to offer, team spirit that will results in better products and productivity, .. This approach has advantages that you will not discover until you give it a try. By the end of the day we had a team that functioned as a high performing team.
@woodyz53
@woodyz53 10 жыл бұрын
Hey Joe! I had a great time and really enjoyed working with the team and everyone who joined us. I hope everyone got something out of it, and will be able to use some of these ideas. Cheers!
@icjs7513
@icjs7513 2 ай бұрын
Thanks sharing your feedback - are you still using Mob Programming?
@brandonwise
@brandonwise 10 жыл бұрын
Interesting approach. Extreme Programming turned up to 11. So what applications have been written this way? Anything well-known and widely-distributed?
@josecuervo186
@josecuervo186 11 жыл бұрын
Do you have mob-change-management as well? I used to do pair programming but the guy I was working with was not as nerd as me and the team was misbalanced. Anyway, seems I need to change the paradigm.
@slworking2
@slworking2 12 жыл бұрын
Fun time lapse.
@Sakitsunebi
@Sakitsunebi 12 жыл бұрын
15 min rotations looks like a good way to avoid burnout
@FifthRig
@FifthRig 12 жыл бұрын
He brings his own healthy lunch. The stomach is an organ not a machine.
@MrRnubs
@MrRnubs 12 жыл бұрын
So why didn't the Asian get invited to lunch?
@school_pizza
@school_pizza 4 жыл бұрын
lmao
@icjs7513
@icjs7513 2 ай бұрын
Looks like he was eating at his desk.
@woodyz53
@woodyz53 12 жыл бұрын
The product we are working on in this video is an internally used business application. We produce very high quality applications with very few( if any) bugs. Our customers are internal partners who work closely with us to determine their needs and how to best fulfill those needs..
@lothar4tabs
@lothar4tabs 12 жыл бұрын
This is for sure a very fun way of working!! :-) What was the product? Did the customer see an improvment of quality?
@SelmaMarvelprivat
@SelmaMarvelprivat 12 жыл бұрын
I want music next time!
@woodyz53
@woodyz53 12 жыл бұрын
You get better at estimates by NOT DOING THEM. Ever.
@Electricz0
@Electricz0 3 жыл бұрын
Sort of like how your internal clock becomes more accurate the less often you check the time.
@ChrisLucian
@ChrisLucian 12 жыл бұрын
This type of work requires people to collaborate continuously, especially when you work with data that is hard to get to or hard to understand. Working together like this helps the team traverse data related issues quickly and efficiently and that is one of my favorite things about mobbing.
@FifthRig
@FifthRig 12 жыл бұрын
But how do we get better at estimates?
@FifthRig
@FifthRig 12 жыл бұрын
I couldn't imagine working any other way. We're just getting started with this.