Top all-time · #4605
Better Embedded System SW
Personal blog · betterembsw.blogspot.comsystemsprogramming
Better Embedded System SW is a personal blog at betterembsw.blogspot.com about systems and programming. Since 2014, 17 different Hacker News readers have linked it 19 times, most often “A Case Study of Toyota Unintended Acceleration and Software Safety”. The last post was in 2024, but the archive is still widely read.
Too few sampled comments (8) to say how often HN recommends it.?
Why HN links it
HN commenters link Philip Koopman's blog on embedded and automotive software safety, including his Toyota unintended acceleration analysis and a list of potentially deadly automotive software issues.
Summarised by Claude from a sample of 8 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Blog: Good Practices for Embedded Software.
Most-linked posts?
- A Case Study of Toyota Unintended Acceleration and Software Safety2 people · 2 mentions · first linked 2014-09-30
- List of potentially deadly automotive software defects from NHTSA recalls2 people · 2 mentions · first linked 2018-09-25
- /2014/09/a-case-study-of-toyota-unintended.html2 people · 2 mentions · first linked 2018-05-01
What Hacker News says?
Koopman has a talk here on his blog that has more details about how ETCS (Electronic Throttle Control System) is safety critical. "If a driver pumps brakes, loses vacuum power assist...WOT requires an average of 175 lbs of force on brake pedal" And what was particularly negligent about Toyota's software practices that "more likely than not" caused issues with ETCS. https://betterembsw.blogspot.com/2014/09/a-case-stu…
Comment linking /2014/09/a-case-study-of-toyota-unintended.html
on “Former Tesla Firmware Engineer Discusses the System”Submitted A Case Study of Toyota Unintended Acceleration and Software Safety as a story · 95 points
HN discussion* unsafe makes it very easy for you to audit where data races or memory errors are possible, instead of needing to audit an entire c codebase I have seen this argument a couple of times before. But I can't make myself buy it. Because I always have to think about embedded systems in the car industry. Look at this list: https://betterembsw.blogspot.com/2018/09/potentially-deadly-... The argument is basically "the poss…
Comment linking /2018/09/potentially-deadly-automotive-software.html
on “Rust After the Honeymoon”Submitted How Safe Is Tesla Autopilot? as a story · 37 points
HN discussion(heh pointers) I was in ECE in college (graduated in 2017) but do full stack software engineering for a bank now. AFAIK it's still C, but I wouldn't be surprised if Rust picked up due to the emphasis on memory safety- dynamic memory allocation and recursion are usually avoided in embedded. Some of the lessons I got from embedded have carried over to my place of work- I found a repo that used floating point for money…
Comment linking /2014/09/a-case-study-of-toyota-unintended.html
on “It’s COBOL all the way down”Submitted List of potentially deadly automotive software defects from NHTSA recalls as a story · 3 points
HN discussionI believe the Prius is definitely more complex than a typical ICE car. It has many, many other systems to support the hybrid drive in addition to the power split device, including many that are genuine innovations too. It's a testament to how good that team's engineering is that the Prius is generally considered reliable (unlike the piece of crap that the Toyota ETCS ECU was until the recent crackdown - http://bette…
Comment linking /2014/09/a-case-study-of-toyota-unintended.html
on “Toyota Prius' Power Split Device”Submitted Carnegie Mellon Embedded System Safety Lecture Video Series as a story · 2 points
HN discussionGot it in one. Another example: http://betterembsw.blogspot.com/2014/06/avoid-high-cyclomati... Keep in mind that these sorts of practices are often used in serious-minded projects where development is intentional and the people doing the work are reflective on the process.
Comment linking /2014/06/avoid-high-cyclomatic-complexity.html
on “GNU complexity 1.5”Submitted Top 5 Embedded Software Problem Areas as a story · 2 points
HN discussionYes, 11 lines of debugged, delivered source lines of code written per day is within the normal range. The basic COCOMO model used by David A. Wheeler's "SLOCCount" estimates person-months as 2.4 * (KSLOC**1.05), which was calibrated with painfully-won experience on a variety of software projects in the 80s. If you approximate that as 2.4 months per kSLOC, it works out to 13.7 lines of code per calendar day, or 18.5…
Comment linking /2010/05/only-10-lines-of-code-per-day-really.html
on “An attempt to articulate Forth's practical strengths and eternal usefulness”Submitted Better Embedded System SW: CMU Embedded Software Course Notes On-Line as a story · 1 points
HN discussionPersonally I'm a fan of AVR-8 which has 32 8-bit registers so if you want to do 16-bit or 24-bit or 32-bit or 40-bit math you can do it just fine, it just takes longer. The biggest AVR-8 device has about 8k of RAM and about 240k of rewritable program ROM. Those are on different buses so it can suck down an instruction at the same time it transfers data, and clocked at 16 MHz it beats the pants off any of the 8-bit m…
Comment linking /2014/07/dont-overflow-stack.html
on “F8 – an 8 bit architecture designed for C and memory efficiency [video]”Submitted A Driver Test for Self-Driving Cars Isn't Enough as a story · 1 points
HN discussionPhilip Koopman was an expert witness against Toyota (which is a bit questionable to me) and he has some stuff on his website about the case too. https://betterembsw.blogspot.com/search/label/Toyota%20UA
Comment linking /search/label/Toyota%20UA
on “Toyota unintended acceleration and the big bowl of "spaghetti" code (2013)”Submitted Tester to Developer Ratio Should Be 1:1 for a Typical Embedded Project as a story · 1 points
HN discussionSubmitted Not Getting Software Wrong as a story · 1 points
HN discussionSubmitted A Case Study of Toyota Unintended Acceleration and Software Safety as a story · 1 points
HN discussionSubmitted Task Death In Safety Critical Systems as a story · 1 points
HN discussion