• Course: C/C++
  • Date entered: 2026-01-12 04:35:59 UTC
  • Course rating: Excellent
  • Most useful learnings: The most useful thing I learned was how writing tests first helps clarify requirements before writing any implementation code. By defining the expected behavior up front, I was able to catch edge cases early, write cleaner code, and refactor with more confidence knowing the tests would quickly highlight any regressions.
  • Concepts v exercises: Good balance
  • Presentation v discussion: Good balance
  • Course improvements: Balanced & constructive The course could be improved by including more hands-on exercises and real-world examples. Additional practice writing tests for existing code and reviewing common mistakes would help reinforce the concepts. More specific Adding step-by-step TDD walkthroughs with increasing complexity would make the material easier to follow. It would also help to spend more time on debugging failed tests and explaining why certain test designs are better than others. Concise More practical examples and guided practice sessions would improve the learning experience and help solidify TDD principles. Reflective The course was informative, but incorporating more interactive sessions and real project scenarios would make it more engaging and easier to apply in day-to-day development.
  • Exercise rating: Excellent
  • Exercise improvements: Balanced & constructive The exercises could be improved by making them more hands-on and closer to real-world scenarios. Adding incremental challenges and clear acceptance criteria would help reinforce the learning objectives. More specific Providing more step-by-step guidance at the beginning and gradually reducing it as the exercises progress would help build confidence. Including examples of both good and bad tests would also improve understanding. Concise More practical, real-world examples and clearer instructions would make the exercises more effective. Reflective The exercises were helpful, but adding variety in difficulty levels and more immediate feedback on test results would enhance the learning experience.
  • Instructor comments: Positive & appreciative The instructor was knowledgeable and explained TDD concepts clearly. Their real-world examples and willingness to answer questions made the sessions engaging and easy to follow. Balanced The instructor demonstrated strong expertise in TDD and encouraged discussion throughout the course. Occasionally slowing down during complex topics or providing more live examples would further improve understanding. Concise The instructor was clear, approachable, and effective at explaining TDD principles. Reflective The instructor created a supportive learning environment and explained concepts in a practical way, which made it easier to apply TDD in real development work.
  • Better prepared: Bring it on!
  • Start tomorrow: Yes Yes, I can start tomorrow. I’ve already completed the necessary preparations and am ready to begin right away. Yes, with a brief reason Yes, I can start tomorrow, as I’m available and have no prior commitments that would prevent me from beginning immediately. No, with a reasonable explanation I’m unable to start tomorrow due to prior commitments, but I can start on [insert date] and will be fully prepared by then. Flexible / conditional I can start tomorrow if needed, but a start date of [insert date] would allow me to transition more smoothly and be fully productive from day one.
  • Challenges to applying: Balanced & realistic One of the main challenges is balancing TDD practices with existing timelines and delivery pressures. Writing tests first can initially feel slower, especially when working with legacy code that wasn’t designed with testing in mind. More specific Applying these ideas can be challenging due to limited test coverage in existing systems, tight deadlines, and varying levels of familiarity with TDD across the team. Aligning everyone on consistent practices takes time and effort. Concise Time constraints, legacy code, and the learning curve across the team are the biggest challenges in applying these ideas effectively. Reflective While the concepts are valuable, adopting them consistently requires a mindset shift, additional upfront effort, and team-wide agreement on standards, which can be difficult in a fast-paced work environment.
  • Other comments: Positive & appreciative The training days were well organized and informative. The sessions were engaging, and the hands-on exercises helped reinforce the concepts effectively. Balanced The training days were valuable and well structured. Adding slightly more time for practice and discussion would make them even more effective. Concise Overall, the training days were productive, engaging, and well worth the time. Reflective The training provided a solid foundation and encouraged thoughtful discussion. The collaborative environment made it easy to learn and apply the concepts.
  • Legacy code workshop: No
  • Recommend to others: Yes
  • Quote permission: Yes