• Course: TDD for Embedded C++
  • Date entered: 2016-04-01 19:54:50 UTC
  • Course rating: Very Good
  • Most useful learnings: Walking skeleton. Much of the entry level literature on TDD involves developing single functions. I would find myself getting stuck when trying to work with multiple, new classes. Techniques for getting legacy code into a test harness. Too often I would test the new code but just give up when changing legacy code. Sorry, I couldn't pick just one thing!
  • Concepts v exercises: Good balance
  • Presentation v discussion: Good balance
  • Course improvements: More time discussing design, SOLID, etc would be helpful. This might be because I was already familiar with a lot of the basics I would have also liked to get more time on the exercises - I think our team could have used the phases that show refactoring to remove if/switch statements but I don't know where we would have found the time.
  • Exercise rating: Very Good
  • Exercise improvements: Personally I would have liked for the flash driver program to be in C++ but I see the value in doing the exercise in C. It stops the argument "Well yeah you can TDD in C++ but not in C"
  • Instructor comments:
  • Better prepared: Bring it on!
  • Start tomorrow: Yes! I was already mosly TDD'ing but now I feel like I am more equipped and have some new tools to do it 100% of the time.
  • Challenges to applying: Legacy code: Lack of interfaces, God classes and Singletons. Culture: Some people haven't seen the light and continue to make bad design decisions slowing down the people who are trying to do the right thing.
  • Other comments:
  • Legacy code workshop: Yes
  • Recommend to others: Yes
  • Quote permission: Yes