Concurrency is hard. Multithreaded code is hard. This post surveys common concurrency related bugs and outlines possible solutions.
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.
Be wary of exit-state driven behavior when designing for UML statecharts.
Learn how the C++ RAII idiom enables better code with reduced maintenance overhead.
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…