"What one programmer can do in one month, two programmers can do in two months." --Fred Brooks

In this issue:

  • C: The Immortal Programming Language
  • The Internet of INSECURE Things
  • How to Comply with the MISRA-C/C++ Guidelines
  • The State of Embedded Systems Safety
  • Industry News That's Not Boring

Firmware Update is a free, monthly newsletter from embedded systems expert 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.

C: The Immortal Programming Language

A longitudinal study of survey data spanning about a decade and a half shows that C remains the primary programming language of embedded software.  Remarkably, in that time C has actually gained share from 50% to about 70%–at the expense of assembly, C++, and Java, all three of which are well off their peaks. 

Language Use Trend Graph

What will replace C?  Or who will be left to program the embedded systems after we've retired?

Full story: https://embeddedgurus.com/barr-code/2018/02/c-the-immortal-programming-language/

The Internet of INSECURE Things

The results of Barr Group's 2018 Embedded Systems Safety & Security Survey were recently published. One trend that really stands out in the data is that of the more than 60% of embedded systems designers who are putting their products on the Internet, more than 1 in 5 is ignoring security altogether.  Security is  not even on the list of design requirements for these engineers! 

Furthermore, even those engineers with security on the requirements list are doing a lousy job of securing these products.  For example, about half are not even encrypting their data and commands sent over the network.  And a large number of these Internet-connected products are dangerous too.  Is it any wonder that the IoT continues to be the subject of headline-generating hacking attacks? 

Free report: https://barrgroup.com/embedded-systems/market-surveys/2018-safety-security

How to Comply with the MISRA-C/C++ Guidelines

MISRA's guidelines are widely referenced and followed by developers of potentially-injurious embedded systems. The importance of MISRA often impacts vendors of middleware when their products are used in automotive or medical systems.  For example, compliance with MISRA-C was a key requirement for Datalight's Reliance Edge embedded file system product.

Barr Group provides training, consulting, and coaching services in embedded software development process improvement, including specifically in relation to MISRA guideline compliance and related setup of automated processes.  To increase the MISRA knowledge of its engineering team while also creating a manageable and cost-effective enforcement process, Datalight turned to Barr Group for training, coaching, and a later independent review of its work.

Learn more: https://barrgroup.com/embedded-systems/case-studies/datalight-misra-c-compliance

The State of Embedded Systems Safety

software market survey

A surprising 29% of professional designers of embedded systems are creating products that could kill or injure one or more humans.  And yet... about 3 out of 4 omit at least one process step known to prevent or detect bugs:

  • 43% don't do regular code reviews
  • 41% don't perform regression testing
  • 38% don't comply with a formal safety standard
  • 33% don't run a static analysis tool over the code
  • 17% don't have a written coding standard

Click on the infographic for more findings re safety.

Industry News That's Not Boring

Robots, self-driving cars, and A.I... oh my!

Automotive Ethernet for the Connected Car

Do you know the top ten causes of nasty firmware bugs?

Driverless Cars: 90% done; and just 90% left to go...

The Economic Consequences of AI: Why AI Won't Fix the World (or Ruin It)

Are you a fan of the Rust language?  Maybe join the Embedded Devices Working Group

Machines can now see and hear us thanks to Embedded Neural Networks.

It's been a good run, humanity. The Boston Dynamics' robot that haunted us last month by opening a door to escape is this month doing the same while fighting off an armed human!

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).