News for hackers. Stuff that matters.
Re:Medical Devices: The Therac-25 (1995) by userbinator on Monday June 01, 2015 @10:28PM (#9643473)
I see it more generally as the perils of unwarranted complexity. One of the bugs was a race condition that - I'm almost willing to bet - would not have existed if they didn't try to be "overly clever" and incorporate a crude approximation of a multitasking OS in their software.

It is mentioned almost summarily in the report - "Designs should be kept simple" is a phrase in there - but I think that this excessive complexity was one of the biggest factors.

This Hoare quote is relevant: "There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies."

Re:Medical Devices: The Therac-25 (1995) by TickleSteve on Tuesday June 02, 2015 @07:03AM (#9645062)
> "incorporate a crude approximation of a multitasking OS in their software"

Many embedded systems have a 'crude' OS library... and in many cases this makes them far simpler than including an RTOS. Not having seen the code here, I can't comment on this one, but just including a simple scheduler is not necessarily a bad design decision.

The the other aspects of your "Keep It Simple" answer, I fully agree with.