To become really good at anything takes a lot of practice. Apprenticeships and formal mentoring, common in medieval times, are rare today. To create quality code we need solid practices like Test Driven Development and Pair Programming or Mobbing. In this software craftsmanship workshop attendees practiced those skills on in a code kata.
8. ≒ Programmers restructure system by improving the design of exis8ng code
without changing its behavior
to remove duplica8on, improve communica8on, simplify, or add 鍖exibility
≒ Refactoring is not random change, instead its driven by learning from our
tests and from iden8fying and 鍖xing code smells
≒ DRY (Dont Repeat Yourself)
≒ Refactoring can occur just prior or just a/er wri8ng new code
≒ Test, code, refactor, re-test
Very short cycles refactor in baby steps
Refactoring
When 鍖xing bugs, write a Red test, BEFORE 鍖xing the bug. Test will run Green when bug 鍖xed.
When working with legacy code make sure to write automated tests BEFORE refactoring code,
If tests didnt exist.
cbell@CamilleBellConsul$ng.com 8
10. Mob Programming
≒ Whole team works together
≒ On the same thing
≒ At the same 8me
≒ In the same space
≒ Using the same computer
≒ Driver rotates
≒ Everyone par8cipates
≒ Great for training & prac8ce
≒ Great for collabora8on
≒ Everyone up to speed faster
≒ Some teams mob always, others frequently
≒ Features delivered faster single piece 鍖ow /wo hando鍖s
cbell@CamilleBellConsul$ng.com 10
1