the limited red society
play

The Limited Red Society Joshua Kerievsky Industrial Logic, Inc. - PowerPoint PPT Presentation

The Limited Red Society Joshua Kerievsky Industrial Logic, Inc. joshua@industriallogic.com Twitter: @JoshuaKerievsky Major League Baseball Team Salaries - 2002 The Art of Winning An Unfair Game Team Strategy In A Graph Can we predict By


  1. The Limited Red Society Joshua Kerievsky Industrial Logic, Inc. joshua@industriallogic.com Twitter: @JoshuaKerievsky

  2. Major League Baseball Team Salaries - 2002

  3. The Art of Winning An Unfair Game

  4. Team Strategy In A Graph “Can we predict By Javier López Peña and Hugo Touchette a winning team School of Mathematical based on its Sciences passing pattern?” Queen Mary, University of London

  5. • Total Passes: 229 • Total Passes: 462 • Network Center: 6 • Network Centers: 3, 8, 11, 14 • Left-Focused Play • Centrality Well Distributed • Focus on Few Players • Midfield Concentration • Quick Attacks/Counterstrikes • Intricate Play

  6. Complexity & Coverage

  7. What About What Happens During A Checkout?

  8. TO DO IN PROGRESS DONE

  9. TO DO IN PROGRESS DONE

  10. My Tests Are Green!

  11. TO DO IN PROGRESS DONE

  12. Green?

  13. Pink!

  14. Compilation Rash

  15. Compilation Errors

  16. Comfortably Pink

  17. // FIXME: This REALLY needs to be an enum so we don't have any more instances of forgetting to add a type to allTypes! public class TddEventType { public static final TddEventType NEW_GREEN_TEST = new TddEventType("NEW_GREEN_TEST", "green", "Circle", "New Green Test"); public static final TddEventType NEW_GOOD_RED_TEST = new TddEventType("NEW_GOOD_RED_TEST", "red", "Circle", "Started with a failing test"); public static final TddEventType NEW_BAD_RED_TEST = new TddEventType("NEW_BAD_RED_TEST", "red", "Circle", "New test while others still red"); public static final TddEventType MADE_IT_PASS = new TddEventType("MADE_IT_PASS", "green", "Circle", "Made new test pass!"); public static final TddEventType WENT_GREEN_BROKE_OTHERS = new TddEventType("WENT_GREEN_BROKE_OTHERS", "green", "Circle", "Went green, but broke other tests"); public static final TddEventType REFACTORED_GREEN = new TddEventType("REFACTORED_GREEN", "blue", "Circle", "Refactored while all tests green"); public static final TddEventType REFACTORED_RED = new TddEventType("REFACTORED_RED", "blue", "Circle", "Refactored with red tests"); public static final TddEventType REFACTORED_PINK = new TddEventType("REFACTORED_PINK", "blue", "Circle", "Refactored with compilation problems"); public static final TddEventType REFACTORED_WHITE = new TddEventType("REFACTORED_WHITE", "blue", "Circle", "Refactored while no errors present"); public static final TddEventType PREMATURE_CLASS_OR_METHOD = new TddEventType("PREMATURE_CLASS_OR_METHOD", "black", "Circle", "Added code prematurely"); public static final TddEventType CALLER_CREATED_CODE = new TddEventType("CALLER_CREATED_CODE", "black", "Circle", "Caller-created code"); public static final TddEventType REFACTORING_BEFORE_ANY_TESTS_WERE_RUN = new TddEventType("REFACTORING_BEFORE_TESTS_WERE_RUN", "blue", "Circle", "Refactored before tests were run"); public static final TddEventType ADDED_CODE_SMELL = new TddEventType("ADDED_CODE_SMELL", "purple", "Circle", "Added code smell"); public static final TddEventType REMOVED_CODE_SMELL = new TddEventType("REMOVED_CODE_SMELL", "purple", "Circle", "Removed code smell"); public final String id; public final String color; public final String shape; public final String description;

  18. public enum TddEventType { NEW_GREEN_TEST("green", "Circle", "New Green Test"), NEW_GOOD_RED_TEST("red", "Circle", "Started with a failing test"), NEW_BAD_RED_TEST("red", "Circle", "New test while others still red"), MADE_IT_PASS("green", "Circle", "Made new test pass!"), WENT_GREEN_BROKE_OTHERS("green", "Circle", "Went green, but broke other tests"), REFACTORED_GREEN("blue", "Circle", "Refactored while all tests green"), REFACTORED_RED("blue", "Circle", "Refactored with red tests"), REFACTORED_PINK("blue", "Circle", "Refactored with compilation problems"), REFACTORED_WHITE("blue", "Circle", "Refactored while no errors present"), PREMATURE_CLASS_OR_METHOD("black", "Circle", "Added code prematurely"), CALLER_CREATED_CODE("black", "Circle", "Caller-created code"), REFACTORING_BEFORE_ANY_TESTS_WERE_RUN("blue", "Circle", "Refactored before tests were run"), ADDED_CODE_SMELL("purple", "Circle", "Added code smell"), REMOVED_CODE_SMELL("purple", "Circle", "Removed code smell"); public final String id; public final String color; public final String shape; public final String description; ...

  19. Visualize the Work

  20. In Progress = Red

  21. Shortest Longest Red

  22. Shortest Longest Red “They reverted enough to finally discover a baby step that would get them to green and set them up to write the next test, all while limited time in the red.”

  23. “A good retreat is better than a bad stand” -- Irish Proverb

  24. Narrowed Change

  25. Old Code Old Code Old Code Old Code Old Code Old Code

  26. Old Code Old Code Old Code Old Code Old Code Old Code Old Code Old Code

  27. Old Code Old Code New Code New Code Old Code Old Code Old Code Old Code

  28. Parallel Change

  29. Old Code Old Code New Code New Code Old Code Old Code New Code New Code Old Code New Code Old Code New Code

  30. Old Code Old Code New Code New Code Old Code Old Code New Code New Code Old Code New Code Old Code New Code

  31. New Code New Code New Code New Code New Code New Code

  32. Continuous Deployment 10 12 0 2 4 6 8 5/31/2011 6/1/2011 6/2/2011 6/3/2011 6/4/2011 6/5/2011 6/6/2011 6/7/2011 6/8/2011

  33. The Limited Red Society Accepting Members

Recommend


More recommend