• Course: TDD for Embedded C
  • Date entered: 2016-02-15 11:00:30 UTC
  • Course rating: Excellent
  • Most useful learnings: Having done TDD before I was already familiar with the concepts, albeit in an object-oriented manner. The most useful thing I learned was that we can start applying these concepts, today, in our embedded C environment. I had assumed there would be more of a barrier.
  • Concepts v exercises: Not enough exercises
  • Presentation v discussion: Too much presentation
  • Course improvements: Sometimes the slides felt a bit disjointed - plenty of hopping around between slides showing different and not apparently related concepts. A little more focus on refactoring would also have been useful, particularly in respect to identifying the refactoring techniques such as extract-function, extract-module, parameterise-function etc. TDD and refactoring go hand in hand in legacy code, and I'm not sure this was particularly apparent to the audience.
  • Exercise rating: Very Good
  • Exercise improvements: I would have liked to have done more with mocks. They are complex and could have done with more attention, especially as they are likely to be quite heavily employed in our embedded unit tests.
  • Instructor comments: Extremely knowledgeable, passionate about the subject and plenty of experience applying the techniques taught in the course. A nice guy, and happy to buy a round of beers too ;-)
  • Better prepared: Bring it on!
  • Start tomorrow: Tomorrow? We are starting today!
  • Challenges to applying: The main barrier is the cultural shift required away from deadline-driven short-termism towards longer term investment in good, tested/testable and maintainable code. The fact that our management are keen is a good sign, although it will be interesting to see how they deal with the reality of a slowdown in development pace while this is adopted.
  • Other comments:
  • Legacy code workshop: Yes
  • Recommend to others: Yes
  • Quote permission: Yes