Concurrency is hard. Multithreaded code is hard. This post surveys common concurrency related bugs and outlines possible solutions.
Category: Favorite Code Tricks
Unit Testing of Active Objects and State Machines
How do we unit test an active object or state machine? This post explores techniques for successful unit testing of modules driven by state machines.
UML Statechart tip: Be wary of exit-state behavior
Be wary of exit-state driven behavior when designing for UML statecharts.
Why I prefer C++: “RAII All The Things!”
Learn how the C++ RAII idiom enables better code with reduced maintenance overhead.
Why I love C++11 for Embedded Software and Firmware (or C++14, or…)
In the firmware and embedded software engineering domains, engineers overwhelmingly choose C as their language of choice. Evidence of this may be seen in the following screen-grab of a presentation by Dan Saks at CppCon2016. I would recommend the entire presentation, which…
Read More Why I love C++11 for Embedded Software and Firmware (or C++14, or…)