First Things FirstWho are you?What do you do?Coding experienceOne unusualfactoid aboutyourself
Some DefinitionsDojo - “the place oflearning the way”
Some DefinitionsKata - “way of doing”A choreographed series ofmotions designed to teacha particular skill orpattern
What’s the Idea?DeliberatePractice of KeySkillsLearn from othersHAVE FUN!
Dojo RulesWe respect eachother’s commitment(No phones, email,Facebook etc)We all do TDDWe all do pairprogrammingWe do “SimpleDesign”
Simple DesignAll tests passClear, expressive andconsistentDoes not duplicatebehaviour orconfigurationMinimises the numberof classes and methods
FormatPair upA problem is presented to be solvedWe work on it in pomodoros (25 minutecycles) - http://tomato.ist/gcdWhen time up, 5 minute break to demoyour code to nearby pair, and reflectAt the end we show & tell our code
TDD RefreshWrite a failing testWatch it fail(!)Write code to make it passRefactorRinse & repeat
Uncle Bob’s Laws of TDD You may not write production code until you have written a failing unit test You may not write more of a unit test than is sufficient to fail (not compiling is a counted as a test failure) You may not write more production code than is sufficient to pass the currently failing test
FizzBuzzWrite a program thatprints the numbers from 1to 100. But for multiplesof three print “Fizz”instead of the number andfor the multiples of fiveprint “Buzz”. For numberswhich are multiples ofboth three and five print“FizzBuzz”:1, 2, Fizz, 4, Buzz,Fizz, 7, 8, Fizz, Buzz,11, Fizz, 13, 14,FizzBuzz, 16, 17, etc...