Aggressive Cows ←|→ Binary Search ←|→ Mob Programming


Details
This is going to be a fun and exciting event! We will work together as a team in solving a code kata.
For this kata we will be working on the Aggressive Cows problem that is solved with a Binary Search algorithm. We will select a language based off of majority rule. We will then transpose the aggressive cow problem into binary search pseudo code and then a working solution, by way of mob programming. TDD enthusiasts are encouraged to join and write tests insuring our code works.
It is important to note that by first transposing the problem into pseudo code, the solution is attainable in any programming language. It is also useful in identifying possible architectural problems prior to coding.
Mob Programming, What Is It?
"The basic concept of mob programming is simple: the entire team works as a team together on one task at the time. That is: one team – one (active) keyboard – one screen (projector of course). "
— Marcus Hammarberg, Mob programming – Full Team, Full Throttle
Agenda:
6:00 - 6:10 Introductions, open discussion
6:10 - 6:20 Instructions, Q&A
6:20 - x:xx Mob Programming!
x:xx - x:xx Closing
Mob Programming, Quick Overview
One programmer will be the navigator, a second will be the driver. The navigator will tell the driver what to do at the point of intent. For example, the navigator might state to the driver: "create a function named IsData that returns a boolean". The driver may request further instruction.
A timer will be going that will give all devs an equal opportunity to drive and navigate. The devs that are remaining are "the mob" and will be in que to take there turn to first drive then navigate.
We will be working on a problem whose solution utilizes the binary search algorithm
MOB PROGRAMMING RULES
- 1 driver and 1 navigator working on problem.
- Mob is to remain silent unless the navigator requests help!
- The navigator may drive us off a cliff - that is OK!
- The mob may vote to revert the last navigators code.
- Navigators may bypass their turn.
- Drivers may bypass their turn.
- Mob can vote to work on another problem
- No Designated Mob Leader at start
- Mob may vote to Designate a Mob Leader
- Designated Mob Leader Can Change Rules
Links
Collaborative Coding - https://repl.it/@mikestratton/AggCow
Problem Selection - https://www.spoj.com/problems/AGGRCOW/
Timer - https://mobti.me/
Youtube: https://www.youtube.com/watch?v=SiE1XFhYoaA

Aggressive Cows ←|→ Binary Search ←|→ Mob Programming