- Get the task at hand done
- Create knowledge redundancy
- Bring skillets together to create stronger tools
- Learn the tools used in the session
- The Moberator: The facilitator of the mob. Organizes location and topics. Looks out for the welfare of the participants, keeps time.
- The Product/Task Owner: This person sets the goals of the session and can provide guidance.
- Navigator: The person dictating the logic. The only one talking.
- Driver: The person at the keyboard. This person does not need any technical knowledge
- The Mob: Every one else in the room. The will be present and preparing to navigate. Listening and being ready to correct or enhance the code to spec.
Researching or helping the Navigator figure things out by:
- Researching API's.
- Guiding whiteboards
- Providing technical knowledge.
- Auditors: Observers learning and absorbing.
- Have a spec to work to.
- No talking when your not the Navigator unless invited or if you are a Product Owner you can can inforce the needs of the product.
- Set a time limit on Navigating and Driving. 4 Mins is a good amount of time. After the alarm goes off let the navigator finish their thought. (A few timers are in the tools section bellow.)
- Let people be wrong. In 4 mins no one will lead the project too off course from a technical stand point. They seeing where you went wrong is a very strong way to enforce learning.
- Not all Drivers have to Navigate.
When giving directions it is best to start with your intent over syntax. It is a lot easier for a Driver to drive when they know why something to happen.
Navigating with "To reduce cruft. search and replace all instances of foo with bar". This gives the diver more freedom than. "type, colon, percentage sign, slash, foo, slash, bar, slash, g enter".
So start your directives with Intent and let the driver tell you that he does no know how.
- NO DELETING. Replace to spec. This is a hurt managment rule. It is better to explain why somehing need to be replaced than to tell people they they were wrong and all their efforts need to be deleted.
All participants other then auditors need to have: Either
- Access to a work station capable of editing and testing the software.
- A git client
- Read Write Access to the code repository/branch worked on.
- A fave texteditor
Or
The ability to share a workspace set up for that.
- A repo for people to pre clone.
- Goals for the session.
- Links to relevant documentation.
- Any extra tools needed to take part as defiend but the Moberator or Product Owner
- Skype
- Screenhero
- Zoom <- Perfered by me
hackpad.net
https://www.pointingpoker.com/Retro
http://oss.jahed.io/agility/timer.html http://www.online-stopwatch.com/countdown-timer/ https://github.com/MobProgramming/MobTimer.Python https://atom.io/packages/mob-timer