Talk: Getting started, and Keeping going, with Mob Programming
Speakers directory
Speaker:
David Legge
Talk description
Title:
Getting started, and Keeping going, with Mob Programming
Short synopsis:
Mob Programming is one of the latest enlightened industry trends, and works very well to reinforce Continuous Delivery in conjunction with Single-Piece Flow and Trunk Based Development. It can also move a group of developers from being individuals towards being a seriously High-Performing Team. This session will look at why all of this might be true and provide the grounding and some practices to take back to your organisation.
Max size: 500 chars
Long synopsis (optional):
Mob Programming is one of the latest enlightened industry trends and works very well to reinforce Continuous Delivery in conjunction with Single-Piece Flow, Trunk Based Development. Whilst there is ongoing discussion about its relationship to Pair Programming, which has been shown to produce fewer bugs then solo-work, (ie is Pair Programming a special case of Mob Programming, or a different one), it is more collaborative, and less exhausting to the individuals involved, and work can easily stop if one of the pair is absent. The format will be a short introduction to Mob Programming, followed by looking at the reasons for its effectiveness, including touching on: reduction in context switching; the optimisation of work at the team level, rather than at the individual level; the emphasis on the smallest increment of work possible; how it can interplay with Single-Piece Flow (ie a Work In Progress limit of one); Trunk Based Development - if everyone is working on the same task, why would you need to branch? How this all plays in to the Accelerate metrics, with the ability to submit code and have it released in half an hour. It can also move a group of developers from being individuals towards being a seriously High-Performing Team; as defined in Katzenbach & Smith (1993), they describe performance curves giving productivity boosts to teams that work very closely together and Mob Programming provides that opportunity. We then take a look at recommended and other possible setups - both physical and technological for co-located and all-remote teams; including some recommendations for experimentation as all teams are different. We cover the basic rules required - be present in the room but also the Law of Two Feet, and how to ensure ideas are taken from all levels of experience, not just the most confident or experienced. We then take a deep dive into the Driver-Navigator model, how the Driver is a ‘Smart Input Device’ and how to avoid ‘Programming Theatre’ (one person taking over). There will be an exercise to reinforce and practice this; especially the rotation of the roles; this is likely to take up a significant proportion of the time allowed. Other points will be the different levels of ‘strictness’ of the Driver Navigator model, some suggestions for enforcing timed rotations. We will also cover how to support a team and its individuals in adopting Mob Programming, after all it is a radical departure, indeed heretical, from accepted practice 20–25 years ago. Some will take to them like a fish to water, others will need support and guidance. This includes allowing The Law of Two Feet. If the team does not feel Psychologically Safe with each other then there is some work to be done before adoption. Finally, there are other practices like Daily Retrospectives that help the team work as closely together as Mob Programming demands; this is all about getting rapid feedback into the system, just as Mob Programming does for the code. The emphasis will be to ready the attendees to take back Mob Programming to their organisations, or fill in some gaps if they have tried it and struggled. All of this will be from the perspective of having led and supported a team using Mob Programming for a whole year as well as introducing it more widely into an organisation; one that believes “we do our best work in Teams”. Reminiscent of GDS’s “the unit of delivery is the team”.
Max size: 5000 chars
Tags:
Speaker directory:
Listed in directory
Not listed
Speakers directory