Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

.NET Fest 2018. Nathan Johnstone. Dealing with Medusas in your Codebase

19 views

Published on

Existing software systems can be hard to change, and handling the complexity as you try to implement a new feature or bug fix is often a nightmare. The Mikado Method is a structured technique that lets you deal with the demons that are unleashed by breaking changes into small manageable pieces. After an overview of the technique and its steps, we will go through a small kata demonstrating how to start applying it

Published in: Education
  • Be the first to comment

  • Be the first to like this

.NET Fest 2018. Nathan Johnstone. Dealing with Medusas in your Codebase

  1. 1. Dealing With Medusas in Your Codebase Applying the Mikado Method Nathan Johnstone - Chief Architect @ Omnia Retail
  2. 2. Focus
  3. 3. A Bit About Me ...
  4. 4. New Zealand
  5. 5. Antartica (Almost)
  6. 6. Antartica (Almost)
  7. 7. No Hobbits or Dwarves
  8. 8. Or Are There ?
  9. 9. A Bit About Me ...
  10. 10. A Test ...
  11. 11. Pigs != Pegs
  12. 12. Story of a Code Change
  13. 13. The Battle
  14. 14. Broken Code
  15. 15. Let's Get Down To Business
  16. 16. Git Commit Trail
  17. 17. Final Result
  18. 18. A Better Way...
  19. 19. Layman's Terms
  20. 20. 100 Mile View
  21. 21. Cognitive Limits
  22. 22. Set a Goal
  23. 23. Experiment
  24. 24. Visualize
  25. 25. Undo git reset --hard
  26. 26. Advantage - No Refactoring Branches
  27. 27. Advantage - Faster Progress
  28. 28. Advantage - Mapping
  29. 29. Advantage - Intentional Programming
  30. 30. Advantage - Collaborative Refactoring
  31. 31. Advantage - Visibility for Large Changes
  32. 32. Advantage - Higher Quality Code
  33. 33. An Example - Pasta Software MasterCrüpt (TM)
  34. 34. New Customer - Stranger Eons Ltd
  35. 35. Share The UI
  36. 36. Warning Live Code Demo Ahead ! Warning Live Code Demo Ahead !
  37. 37. Takeaways ● Mikado Method provides a structured approach for implementing technical changes ● Divide and conquer ● Works for individuals and group wide technical changes ● 4 Steps - Set a Goal -> Experiment -> Visualize -> Undo ● Unlocks continuous integration and deployment for complex changes
  38. 38. Links ● https://www.manning.com/books/the-mikado-method ● https://github.com/mikadomethod/kata-dotnet ● http://psychclassics.yorku.ca/Miller/
  39. 39. Questions ?

×