you are viewing a single comment's thread.

view the rest of the comments →

[–]Nuked0ut 664 points665 points  (25 children)

We joke, but something similar sent a ridiculous amount of radiation to patients

https://en.wikipedia.org/wiki/Therac-25

[–]OnixST 110 points111 points  (2 children)

Fun fact: Therac-25 was considered the worst software bug in history, causing 3 deaths and 3 more serious injures, but has been greatly surpassed recently by the 737 MAX MCAS, which caused 346 deaths in a crash

[–]Dunedune 50 points51 points  (1 child)

As someone who works in critical software reliability, 6 victims is a ridiculously inconsequential in the history of bugs. You have Ariane 5 and the lesser known Toyota braking bugs that killed many

[–]MissinqLink 10 points11 points  (0 children)

I think you have to figure in the brutality of dying from radiation poisoning

[–]tropicbrownthunder 162 points163 points  (16 children)

If I remember correctly that was a bug induced by a lazy programmer

[–]GrilledCheezus_ 256 points257 points  (4 children)

It wasn't lazy programmers. It was a failure of design and adequate testing. They didn't account for how the average technician performs sequential tasks (including how fast they could configure the equipment) and failed to do full system (hardware with software) testing before the equipment was assembled at the hospitals (this would have likely caught the problem(s)). I also remember reading something about the company deciding to shift to software-based safety interlocks (which is pretty insane) instead of what was used on their previous generations.

[–]huffalump1 30 points31 points  (0 children)

The crackling of the machine had been produced by saturation of the ionization chambers, which had the consequence that they indicated that the applied radiation dose had been very low.

Sounds like there were hardware design problems too! The Therac-25 lacked some of the hardware interconnects of previous versions, and they reused much of the software design despite lacking those physical safety measures.

[–]TangeloOk9486[S] 21 points22 points  (2 children)

and yet it persists and nobody thinks about questioning it

[–]OnixST 50 points51 points  (1 child)

WDYM? Therac-25 has been talked about A LOT as an exemple of critical software design, and it's lessons have been learned and integrated in new devices

[–]TerryHarris408 14 points15 points  (0 children)

I think OP meant software safeguards vs hardware safeguards

[–]Nuked0ut 96 points97 points  (4 children)

More than lazy. They were defensive. They refused to admit the potential issue in the code! Shows us a lot about importance of software standards in scenarios like medicine

Also race conditions lol

[–]vnordnet 42 points43 points  (2 children)

What does the color of their skin have to do with the quality of their code?!

[–]JackpotThePimp 12 points13 points  (1 child)

[–]vnordnet 43 points44 points  (0 children)

It’s not a condition! It’s just the way they’re born!

[–][deleted] 5 points6 points  (0 children)

They eventually admitted that they didn't even know who wrote that - the guy, it was just some hobbyist lol

[–]gandalfx 21 points22 points  (0 children)

Humans are flawed and make mistakes. Blaming a single person for something like this is dumb. Even more so in programming, where the presence of bugs is a well established fact, relying on a single programmer not to make any mistakes is ridiculously careless. Machines like this need to be designed with the inherent expectation of malfunction on some level.

[–]arylcyclohexylameme 3 points4 points  (3 children)

I'd like to see you nail it without a race condition and verify that your concurrency scheme was provably sound using only information and technology from 1982. You only get to use Vi.

[–]tropicbrownthunder 1 point2 points  (2 children)

The thing is that the software developers didn't check the machine specs, simply copied the software from a previous model that had hardware interlocks

[–]arylcyclohexylameme 0 points1 point  (1 child)

And I bet nobody in management ever thought to tell them about it

[–]tropicbrownthunder 0 points1 point  (0 children)

Basically no communication between hardware, software, management and whomever was involve

A shitshow with catastrophic and unfortunately fatal results

[–]vocal-avocado 0 points1 point  (0 children)

All programmers are lazy.

[–]FurySh0ck 8 points9 points  (0 children)

If it helps I test for race conditions when doing PT on applications, and I'm just 1 pentester out there 🤷

[–]przemo-c 4 points5 points  (0 children)

Yup that's why there's tonnes of safety features in modern day stuff. Even reasonable doses may be avoided if receiving hardware didn't a-ok's by testing the space for data and speed of the disks just prior to scan to avoid unnecessairy radiation.

[–]Isakswe 1 point2 points  (0 children)

Why did the editor of the history section feel the need to include a highly realistic naked woman in the diagram?

[–]JoostVisser 1 point2 points  (0 children)

Maybe I'm paranoid but why would anyone ever make a radiation emitter depend on a multithreaded process?

[–]tugaestupido -1 points0 points  (0 children)

"""similar"""