Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Married to the Mob (programming)

493 views

Published on

Slides from my talk at DDD North 2017 on mob programming and it's relation to other development styles, xp, pairing and swarming.

Published in: Software
  • Be the first to comment

Married to the Mob (programming)

  1. 1. Married to the Mob (programming)
  2. 2. hey hi hello derek graham @deejaygraham
  3. 3. The characters and events depicted in this presentation are fictitious. Any similarity to actual persons, living or dead, is purely coincidental
  4. 4. Mob?
  5. 5. are you XP?
  6. 6. XP Engineering Practices • Continuous Integration • Pair Programming • Test Driven Development • Simple Design • Refactoring • Collective Code Ownership • Sustainable Pace
  7. 7. Swarming
  8. 8. – Our Team “Swarming … is the first time we’ve felt like a genuine team instead of individuals all working for the same manager.”
  9. 9. –Woody Zuill “All the brilliant people, working on the same thing, at the same time, in the same space, and at the same computer.”
  10. 10. Mob = XP++
  11. 11. –Rachel Davies (Agile Coach) “ Mobbing would be in the XP book (if they'd thought of it)”
  12. 12. Mob !=
  13. 13. Mechanics
  14. 14. •One set of Input Devices (keyboard and mouse) •Everyone can see thecode •Everyone has a role •Roles rotate through the team
  15. 15. *reconstruction
  16. 16. Mob Roles
  17. 17. Navigator Driver
  18. 18. Driver *reconstruction
  19. 19. Navigator *reconstruction
  20. 20. *reconstruction
  21. 21. Navigator Navigator Navigator Facilitator? Driver *reconstruction
  22. 22. Mob Rule(s)
  23. 23. •Kindness •Consideration •Respect •“Yes and…” ideas •Strong Pairing
  24. 24. – Woody Zuill “We decided for one day to pretend to be kind, considerate and respectful. And then we decided to do it again.”
  25. 25. –Norm Kerth “Regardless of what we discover, we understand and truly believe that everyone did the best job they could, given what they knew at the time, their skills and abilities, the resources available, and the situation at hand.”
  26. 26. if you aren’t learning or contributing, find a better use for your time.
  27. 27. Driver
  28. 28. Driver Typist
  29. 29. Cortana for Code 1.Listen to the mob 2.Translate that into code 3.There is no 3
  30. 30. Siri for Syntax • Write the Code • Talk about the Code • Rollback? • Patience • Incomplete Understanding
  31. 31. Alexa for Algorithms
  32. 32. If you have the keyboard, you can’t have the ideas
  33. 33. Mob % Typist
  34. 34. Mob 1.Collaborate & Discuss 2.What is the next step? 3.Talk to the Typist 4.Park other issues
  35. 35. The team is like an extended brain, it needs to talk out loud to know what it thinks
  36. 36. Environment
  37. 37. Other computers are allowed!
  38. 38. Rotation
  39. 39. *reconstruction
  40. 40. Navigator Navigator Navigator Facilitator? Typist *reconstruction Timer
  41. 41. Team work
  42. 42. When to mob… • Always :) • Green field projects • New work • Hard problems • Code Merges? • Group learning
  43. 43. When not to… •Sys admin and Dev Ops (pair instead) •Long running tasks •Small problems •JFDI
  44. 44. Disagreements & Uncertainty
  45. 45. Inspect & Adapt
  46. 46. •Informal Huddle •As often as you need to: •How are we doing? •What is easy? •What is hard?
  47. 47. Turn up the Good!
  48. 48. <strong> </strong>
  49. 49. Have you ever had a bug?
  50. 50. –Llewellyn Falco “For an idea to go from your head into the computer, it MUST go through someoneelse'shands.”
  51. 51. Finding the right level •Abstractions •Language syntax •Files, line numbers •Key presses
  52. 52. Resources
  53. 53. Mob-Positive Teams • Hunter Industries • Industrial Logic • Alaska Airlines • LateRooms.com • pluralsight.com • GDS (gov.uk) • Unruly Media • Blue Fruit • Menlo innovations • …and many more
  54. 54. • Mobbing - http://mobprogramming.org • Woody Zuill - https://www.industriallogic.com • Chris Lucian - http://www.chrislucian.com/ • mob timer - https://github.com/dillonkearns/mobster • Strong style pairing - https://llewellynfalco.blogspot.co.uk/ • Amy Edmondson - https://hbr.org/2013/12/the-three- pillars-of-a-teaming-culture
  55. 55. https://leanpub.com/mobprogramming
  56. 56. https://leanpub.com/codingdojohandbook
  57. 57. https://github.com/willemlarsen/mobprogrammingrpg
  58. 58. Problem Solving Bray, R. M., Kerr, N. L., & Atkin, R. S. (1978). "Effects of group size, problem difficulty, and sex on group performance and member reactions." Journal of Personality and Social Psychology, 36, 1224-1240.
  59. 59. What can you take away?
  60. 60. •Experiment and discover what works for you •Expect to evolve •Culture change is hard •Flash Mob? •If nothing else…
  61. 61. <strong> </strong>
  62. 62. Me • @deejaygraham • deejaygraham@icloud.com • deejaygraham.github.io • http://www.nebytes.net • https://www.meetup.com/Agile-North-East/

×