"Any fool can write code a computer can understand.  Good programmers write code humans can understand." - Martin Fowler

In this issue:

  • Killer Apps: Embedded Software's Greatest Hit Jobs
  • Retake Control of your Embedded Project Schedule
  • Better Trained Teams Finish Projects Faster!
  • An Advanced Summary of Pointers in C
  • Industry News That's Not Boring

Firmware Update is a free, monthly newsletter by embedded systems guru Michael Barr. Firmware Update is a trademark and this issue is Copyright © 2018. You may forward whole issues to colleagues that design embedded systems.  No other uses are permitted.

Killer Apps: Embedded Software's Greatest Hit Jobs

Between 1985 and 1987, there were at least 6 distinct accidents where the Therac-25 radiation therapy machine delivered up to 100 times the prescribed radiation dose, resulting in injuries and deaths. These high-profile accidents demonstrated that embedded software can be dangerous, even lethal.

Killer Apps

In the decades since, and despite increasing regulation, safety-critical system failures have continued to kill and injure.  How many more people must die before all embedded systems will be safe for humans?  And what are the lessons we can learn from these past failures?

My take: https://barrgroup.com/embedded-systems/how-to/barr-killer-apps-keynote

Retake Control of Your Embedded Project Schedule

Is your embedded systems design project falling behind schedule?  Staffed with experienced embedded hardware and firmware engineers, Barr Group provides embedded systems design assistance and expert guidance to engineering teams and their managers.  

Barr Group's design team augmentation services include:

With a perpetual focus on helping teams get back on schedule and budget, our engineers regularly help companies complete the development of products including: medical devices, automotive systems, cloud-connected IoT products, industrial automation equipment, and mobile/communications gear.​

Need temporary staff augmentation?  Struggling to find specific expertise?  Need help with development tool configuration?  Want an independent design/code review?  Whatever's stressing you out...  we can help with that!

Reach out: https://barrgroup.com/contact-us

Better Trained Teams Finish Projects Faster!

Why do better trained teams finish their projects faster?  It's because better trained engineers create fewer defects during the design phase.  And this can massively reduce time spent in the debug phase. 

Are you sick of schedule-killing debug phases and never-ending bug lists yet?  Barr Group has the answer.  Our hands-on courses teach practical skills that reduce bugs at all levels: from architecture to design to coding.  This results not only in faster development cycles but also in more reliable and secure products that cause less problems in the field.

Barr Group’s on-site training courses are a convenient and cost-effective way to train teams of five or more engineers in industry best practices, tools, and techniques.

Course listhttps://barrgroup.com/course-catalog

An Advanced Summary of Pointers in C

The C programming language has its weak spots.  But one positive is that it's easy to learn the basics of the syntax.  Except pointers.  Do you really know how to use them?  If phrases like "pointers-to-pointers" and "pointer arithmetic" make your palms sweat, here's a concise introduction that you may find helpful.

Read on: https://hackaday.com/2018/04/19/when-4-1-equals-8-an-advanced-take-on-pointers-in-c/

Industry News That's Not Boring

If your car has a fob key, install a carbon monoxide detector in your garage.  Multiple deaths by algorithm, so far.  NY Timeshttps://t.co/SsoOaDU6ju

Speaking of cars and deaths by algorithm, the software in a self-driving Uber apparently regarded the pedestrian it killed as a "false positive" object in road: https://t.co/50KzMtOMrS

Why does it surprise anyone that electronic voting equipment is hackable?  They are just computers, after all.  Typically older computers running no-longer-supported, never-were-secure operating systems...  The Guardianhttps://t.co/sHq8XE7idz

Here's Bruce Schneier's advice for secure electionshttps://t.co/CYLS3nXIGd

NASA and JPL have designed a twin-blade Mars Helicopter they hope to soon (2020) fly through the thin atmosphere: https://electrek.co/2018/05/14/nasa-small-electric-helicopter-mars/

Finally, I recently spoke about the state of embedded systems safety and security with the hosts of the Embedded.fm podcast.  Listen here: https://www.embedded.fm/episodes/243

More here@embeddedbarr

Quick Links to Useful Stuff

How to Contact the Author

I'm always interested in hearing from embedded systems designers and happy to take a few minutes to help you find the resources to get a design done right. Send me an email anytime. And be sure to also connect with me on Twitter (@embeddedbarr) and LinkedIn (https://linkedin.com/in/embeddedbarr).