Mob programming Principles Test-Driven Write a test before you write any line of code Consumer-first vs Build-up // build up type Point struct { x int y int } // consume first func NewPoint(x,y int) *Point{ } Refine existing code Do not throw existing code, refine it! Each iteration should make a step forward. Links Blog: Mob programming Video: A whole tea, approach Book: The mob programming guidebook BooK: Mob programming