TDD for Embedded C
2016-10-05 17:56:44 UTC
Most useful learnings:
I am starting with professional software development so it is crucial to me to learn anything about testing.
Concepts v exercises:
Presentation v discussion:
I think the only issue for me (and it seemed for others as well) was that we proceeded to write code without fully understanding/thinking new concepts through and this way we dug a hole that was difficult to get out from. It was somewhat an inconvenience.
There could be an optional pre-training warm up exercise to brush up syntax and C concepts. I had a 2 years break from coding (deployed to Field in Saudi Arabia) so I did read a little to refresh but it would be nice to have some practice that would help me see if I am ready or not. I was alright and I did get help to with malloc/free but perhaps the course could be more accessible to people who were not familiar with C/C++ in the past.
I like the exercises but it would be great to know exactly where I am supposed to code certain functionality. I had to rollback two times for placing code in wrong spots. Despite minor issues, the coding helped me a lot understanding the concepts. Perhaps, it would be good to have a completely abstract first exercise that only asks what to do, when and how without coding and then proceed to the implementation so that these two dont mix together and we dont get ahead of ourselves.
The course was very well presented - clear, easy to understand English, concepts appropriately illustrated with the slides. Funny pictures, relevant quotes. Quality work overall.
I really like that the first hour every day was just lecture - because it was too early for me to actually write meaningful code.
Bring it on!
Yes, I will start using the concepts - it became a requirement for Schlumberger and I believe that every new Embedded Software Developer (fresh grad) is now obliged to undergo this training.
Still, our hiring numbers right now are relatively low until the oil picks up.
Challenges to applying:
We are using LabVIEW and NI platform to deploy the current generation of surface and acquisition equipment for our new fracking system. SO it is a challenge to migrate all these ideas to graphical programming but we have expertise within the team so the next step is internal training on how to do it to fit the purpose.
I think the only bit that remote delivery impairs is the discussion. You naturally ask questions like every presenter does but the response is very delayed (for typing) and nobody wants to use the mic because there would be too much interference if 2 people started speaking at the same time.
Legacy code workshop:
Recommend to others: