Kickstart Academy Podcast with Corey Haines and Sandi Metz

Last month we broadcast our 2nd live podcast. We were fortunate to be joined by Corey Haines — to discuss simple design — and by Sandi Metz — who was kind enough to return for a second show.

There is an audio version of this podcast available here - but due to the nature of the live code examples on the video version that is probably the better experience.

Show Notes

  • [0:02:20] — 4 rules of simple design
  • [0:6:11] — Understanding the 4 Rules of Simple Design
  • [0:10:17] Understanding Testing Book
    • What can you learn from writing your own assert method?
    • All testing frameworks bring baggage with them - leaving that aside allows you to understand the fundamentals
    • Do you start with assert or assert_true ?
  • [0:19:55] Writing your own assert method demo
    • (apologies about the sound cutting in and out, Hangouts appears to mute typing)
    • “Fundamentally testing is about checking that two things are the same” - Corey
  • [0:30:02] Having rich ways of verifying your system can mask design feedback from simple tests
    • TypeMock for mocking static methods in .NET masked the need to inject dependencies
  • [0:36:00] Only having simple testing features can lead to writing a single method that does everything
  • [0:38:10] The tension between learning and getting things out in production
    • Being able to explain the value of the things that you use
    • Doing something because smart people say you should do it, and understanding why they do it
  • [0:45:21] What’s the best approach to teaching design sense to new programmers?
    • Go back to the mechanical refactoring steps - back to the fundamentals
    • “refactorings are little machines that produce objects” - Sandi
    • SOLID principles are guide points
  • [0:54:10] Actionable principles
  • [01:01:22] Efficient ways of travelling the long road
  • [01:04:07] Only ever one undo away from being back to green