Barr Group TwitterBarr Group Vimeo

Dan Smith has more than two decades of product development and project management experience in a broad range of embedded systems and products. His industry experience spans consumer electronics, industrial controls, and telecommunications as as well as safety-critical medical devices and automotive electronics. Dan's written and spoken communication skills are world-class and he often speaks at industry conferences as well as trains engineers in best practices. Dan earned his B.S. in Electrical Engineering at Princeton.

Software Reliability and the Internet of Things

 Printable PDF

As Internet connectivity advances, the transportation, automotive, medical device, smart grid and other industry sectors have become more dependent on embedded software. But is embedded software up to the required level of reliability?

Key Learnings from Past Safety-Critical System Failures

Ever had a DVD player freeze? A mobile phone crash and reboot? A home router that required a reset? Welcome to the 21st century, where every device has at least one processor. Without question, our daily lives are enhanced by the embedded systems around us. And many of us take for granted that these devices will do their intended jobs tirelessly and correctly, day in and day out, without fail.

Top 10 Bug-Killing Coding Standard Rules


There are many sources of bugs in software programs. Some are created by the original programmer. Others by misunderstandings by those who later maintain, extend, and/or reuse/port the original code. Both types of bugs can be kept out by following simple coding standard rules. To increase security and keep bugs out of medical devices and other safety-critical embedded systems, add these 10 bug-killing rules to your embedded C coding standard.