The Therac-25 story is, as far as I can tell, pretty well-known at this point - I distinctly recall from my college days the Therac-25 story being part of the curriculum, as an example of why good software development and engineering practices are important. When it’s mentioned, most tech people I know seem to have at least something of an idea of what it was - a badly programmed radiation therapy machine with software race conditions and lack of mechanical safeguards that ended up killing people.
As such, one would … perhaps expect that the industry to have learned and applied important lessons from this incident, perhaps things like
- Keep mechanical safeguards to prevent the machine from delivering obviously-insane doses (Therac-25′s predecessor, Therac-20, had such mechanisms, so while it might very well have had the same software bugs, it didn’t end up being anywhere near as deadly as its successor).
- Write life-critical software in such a way that it can be tested systematically, especially for things like race conditions.
- Design internal sensors and software user interfaces so that problems, especially configurations that are likely to give lethal radiation doses, become obvious to the users of the machine.
Such lessons … do not appear to have been learned, though. Back in 2010, New York Times had a story about radiation machines that due to race conditions and other software errors were killing people again:
http://www.nytimes.com/2010/01/24/health/24radiation.html
As
Scott Jerome-Parks lay dying, he clung to this wish: that his fatal
radiation overdose — which left him deaf, struggling to see, unable to
swallow, burned, with his teeth falling out, with ulcers
in his mouth and throat, nauseated, in severe pain and finally unable
to breathe — be studied and talked about publicly so that others might
not have to live his nightmare.
Sensing
death was near, Mr. Jerome-Parks summoned his family for a final
Christmas. His friends sent two buckets of sand from the beach where
they had played as children so he could touch it, feel it and remember
better days.
Mr. Jerome-Parks died several weeks later in 2007. He was 43.
A New York City hospital treating him for tongue cancer
had failed to detect a computer error that directed a linear
accelerator to blast his brain stem and neck with errant beams of
radiation. Not once, but on three consecutive days.
Soon after the accident, at St. Vincent’s Hospital in Manhattan, state health officials cautioned hospitals to be extra careful with linear accelerators, machines that generate beams of high-energy radiation.
But on the day of the warning, at the State University of New York Downstate Medical Center in Brooklyn, a 32-year-old breast cancer
patient named Alexandra Jn-Charles absorbed the first of 27 days of
radiation overdoses, each three times the prescribed amount. A linear
accelerator with a missing filter would burn a hole in her chest,
leaving a gaping wound so painful that this mother of two young children
considered suicide.
Regulators
and researchers can only guess how often radiotherapy accidents occur.
With no single agency overseeing medical radiation, there is no central
clearinghouse of cases. Accidents are chronically underreported, records
show, and some states do not require that they be reported at all.
In June, The Times reported that a Philadelphia hospital gave the wrong radiation dose to more than 90 patients with prostate cancer
— and then kept quiet about it. In 2005, a Florida hospital disclosed
that 77 brain cancer patients had received 50 percent more radiation
than prescribed because one of the most powerful — and supposedly
precise — linear accelerators had been programmed incorrectly for nearly
a year.
One thing I recall noticing with the 2010 events is that … back in 1985, the Therac-25 thing seems to have been a pretty major scandal - it being seen as the sort of thing that should not have happened and the fact that it did happen being seen as a horror and a gross failing of the people involved - whereas the 2010 events, despite affecting a much larger number of people, seemed to mostly just draw much more muted, kind-of-defeatist reactions like “it’s not possible to write software without bugs”, “it’s better for cancer patients that buggy machines like this exists than for them not to exist at all”.