Top all-time · #3851
Barr Group
Company blog · barrgroup.com/embedded-systems/how-toprogramminghardware
Barr Group is the company blog at barrgroup.com, writing about programming and hardware. Since 2015, 19 different Hacker News readers have linked it 24 times, most often “Introduction to Hierarchical State Machines (2016)”. No feed was found, so read it on the site itself.
Too few sampled comments (10) to say how often HN recommends it.?
Why HN links it
HN readers link Barr Group's blog for embedded systems material, mainly state machine how-tos, C volatile and safety case studies such as Toyota and Patriot. Commenters cite posts as support for their points.
Summarised by Claude from a sample of 10 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Vetted testifying and consulting expert witnesses for US and international litigation, across software, electronics, medical devices, and economic damages.
Most-linked posts?
- Introduction to Hierarchical State Machines (2016)4 people · 5 mentions · first linked 2020-04-02
- State Machines for Event Driven Systems (2016)2 people · 2 mentions · first linked 2020-04-02
What Hacker News says?
You're correct. ( https://barrgroup.com/Embedded-Systems/How-To/C-Volatile-Key... ) But again, you're telling the compiler that you know what you're doing, and to not perform its normal optimization. I'm not well-versed in compiler design, but I think that's the tradeoff you have to make between trusting the user's design choices, or not.
Comment linking /Embedded-Systems/How-To/C-Volatile-Keyword
on “How much your computer can do in a second”Submitted Introduction to Hierarchical State Machines as a story · 134 points
HN discussionTo these links I would also add Miro Samek's book "Practical UML Statecharts in C/C++," which covers details of implementing (hierarchical) statecharts. The book includes a chapter that analyses different ways of encoding extended state machines (Miro concludes a function pointer, with one event handler function per state is the best for C/C++. I don't think this is the encoding that the linked Rust article uses). A…
Comment linking /embedded-systems/how-to/introduction-hierarchical-state-machines
on “State Machines in Rust”Submitted CRC Implementation Code in C/C++ as a story · 3 points
HN discussionRight. No smoking gun. There were multiple scenarios described in which such a failure was plausible. The story is nowhere as cut and dried as in the Therac or the Arianne cases. Here are his Embedded Systems Conference slides: http://www.barrgroup.com/killer-apps/
Comment linking /killer-apps/
on “The Engineer’s Lament”Submitted The Best Books about Embedded Systems Design as a story · 3 points
HN discussionThat was done via Airworthiness Directive (a mandatory prod patch for aviation), not by original engineering design intent. Similar story with the Patriot missile defense battery. * - https://www.federalregister.gov/documents/2020/03/23/2020-06... * - https://barrgroup.com/sites/default/files/case-study-patriot...
Comment linking /sites/default/files/case-study-patriot-missile-defects.pdf
on “Tosh: Changing your SSH server's listen address every 30 seconds based on TOTP”Submitted Killer Apps – Embedded Software's Greatest Hit Jobs [pdf] as a story · 2 points
HN discussionhttps://barrgroup.com/embedded-systems/how-to/state-machines...
Comment linking /embedded-systems/how-to/state-machines-event-driven-systems
on “Facts about State Machines”Submitted How Network Processors Work as a story · 2 points
HN discussion> I'm mostly concerned about visualization Almost all of the finite state machines use the same underlying graphing tool, "GraphViz," to do their rendering. It sounds like you might want that. There is an emscripten transcompile for the web called viz.js. . > if you have actions/guards that don't appear on the visualization Actions do appear on the visualization. I'm still not sure what you mean by guards. . > imila…
Comment linking /embedded-systems/how-to/introduction-hierarchical-state-machines
on “FSL: A programming language to make complex finite state machines easy to create”Submitted Introduction to Hierarchical State Machines (2016) as a story · 2 points
HN discussionThanks for the reply. My comment was in reference to the Visual Basic Calculator program described here: (perhaps "VBScript" was not accurate) https://barrgroup.com/Embedded-Systems/How-To/State-Machines... That VB calculator is shown as an example of "The Problem" with event driven programming, but I just see it as an example of why poorly designed programs are hard to reason about and buggy. I did not see the coff…
Comment linking /Embedded-Systems/How-To/State-Machines-Event-Driven-Systems
on “Solving State Explosion with Petri-Nets and Vector Clocks”Submitted Introduction to Hierarchical State Machines (HSMs) (2016) as a story · 2 points
HN discussion> The Problem: https://barrgroup.com/Embedded-Systems/How-To/State-Machines... The article linked spends a lot of time looking at an event-based calculator in VBScript that evidently has a lot of bugs. This is used as a justification for doing what they do (whatever that is? I don't really get it). My problem with this is the calculator program is very poorly written. One could probably get rid of most of the bugs b…
Comment linking /Embedded-Systems/How-To/State-Machines-Event-Driven-Systems
on “Solving State Explosion with Petri-Nets and Vector Clocks”Submitted Can Carmakers Break Free from Google with ‘Automotive Grade Linux’? as a story · 2 points
HN discussionHow he wrote it: AI Agent Teams Finished My Sci-Fi Novel in 12 Hours - https://barrgroup.com/software-expert-witness/blog/ai-agents...
Comment linking /software-expert-witness/blog/ai-agents-finished-decade-old-novel
on “Metacompiler – A Novel by Michael Barr”Submitted Embedded C Coding Standard as a story · 1 points
HN discussionMight I suggest better alternatives as more pleasant alternatives to the stuffy MISRA C book: - "Embedded C Coding Standard" by Michael Barr[1], CTO and co-founder of Barr Group, the guy who inspected the ECU code and testified in Toyota's unintended acceleration lawsuit. Good stuff. - "Embedded System development Coding Reference guide" written by the Software Reliability Enhancement Center of Japan [2], which cove…
Comment linking /sites/default/files/barr_c_coding_standard_2018.pdf
on “MISRA C”Submitted Hierarchical State Machines (2016) as a story · 1 points
HN discussionSubmitted State Machines for Event Driven Systems (2016) as a story · 1 points
HN discussionSubmitted BARR-C:2018 embedded C coding standard, harmonized with MISRA C 2012 as a story · 1 points
HN discussionSubmitted Mutexes and Semaphores Demystified as a story · 1 points
HN discussion