TDD for Embedded C
2020-04-16 22:23:19 UTC
Most useful learnings:
I really enjoyed the device driver tdd application. Things clicked for me, and I would like to take this approach in my future driver development work.
Concepts v exercises:
Too many exercises
Presentation v discussion:
I would say that the exercises could be shorter to deliver the important concepts. I loved the flash driver programming example, which felt like an adequate amount of time. Maybe it's just my own personal preference.
The final demo that you did today was a bit difficult to follow. Perhaps it might have needed a different example or perhaps the feeling comes from a lack of any hands-on time with a similar task.
Finally, I'd suggest muting a few settings in Webex if you are asked to use that software in the future. There is a Participant menu above the video. There you can set "Mute on Entry" and disable the "entry and exit tone" so we don't hear people dropping in/out of the presentation.
I think the first two exercises could benefit from some extra hand-holding in the beginning. I just felt a little slow to pick up the pace and get comfortable with something new.
I stated "too many exercises" above, but perhaps I should restate that to mean the exercise was a bit long. Chopping up the light controller exercise or circular buffer exercise to two separate, shorter sessions could have been better, IMHO. Maybe that means "too few exercises."
I realize there is much to be desired with the virtual classroom for some people, but I thought it was better than most webinars that I've attended. You did a great job interacting from a distance and keeping us engaged.
The cyber dojo is awesome for test-driving things out, and I also liked the anonymity of the avatars. I have always learned by doing and don't have an extensive training in C/C++, but I can hold my own pretty decently. In the dojo, I could make all the silly syntax mistakes that I needed until I shook off the coding cobwebs. This made getting help much less scary in front of my peers.
You obviously know your stuff, which is pretty important. Thanks for not waving your expertise in our face for four days. Some training sessions are more about self-promotion than actual teaching of new concepts. =)
I think I'd like to see how we can implement this in our workplace. I haven't looked at CppUTest yet, but I'm hoping it's easy to get it set up and running. Maybe I just hate setting up a new IDE and getting the parts to talk nicely to each other.
Challenges to applying:
Working with legacy code is obviously a big chore, as we saw today. Sometimes we get mothballed projects that have to be resurrected for a season or two, and then they go back to the warehouse to collect more dust.
Legacy code workshop:
Recommend to others: