5 ms·
Huh. I learned a different lesson from Therac-25: "never write mission-critical software." :) For those who haven't read it, http://sunnyday.mit.edu/papers/the
by kwantam 13y ago
Huh. I learned a different lesson from Therac-25: "never write mission-critical software." :)
For those who haven't read it, http://sunnyday.mit.edu/papers/therac.pdf http://sunnyday.mit.edu/papers/therac.pdf
- mikeash 13y agoThere are three kinds of programmers: 1. Those who read about Therac-25 and decide never to work on any systems where bugs could threaten lives (your chosen course, and mine). 2. Those who read about Therac-25, get frightened, and work very carefully on such systems. 3. Those who read about Therac-25 and think, "Those idiots! Good thing I'd never make a mistake like that." The prevalence of (3) in all professions and walks of life is kind of frightening.
- hga 13y agoYour 3 is a bit more complicated, I think: If you dig into the details of why its programmers and their managers killed people, it's very easy to say "I'd never be that irresponsible", but still screw up with much more subtle bugs.
- mikeash 13y agoThey may have been (2) and just weren't sufficiently careful. The inclusion of (3) isn't meant as a criticism of the Therac team, but rather humanity in general.
- logicallee 13y ago"My comments were not aimed at the Therac team, but at humanity in general." :)
- mikeash 13y agoDon't be offended, I'm insulting all of you equally!
- awj 13y agoYou should walk through a building construction project sometime. Your "all professions and walks of life" part is ... disturbingly accurate.
- superuser2 13y agoI learned not to write life-critical software. There is no bringing back the dead. Corporate mission-critical software (unless said corporation is power, weapons, transportation, or healthcare related) can usually only lose money.
- orting 13y agoThe upside to writing software for healthcare is that your code might help people recover faster or in some cases survive where they otherwise wouldnt. But it can be stressful to write software that has a very direct impact on peoples lifes. While I was rolling out an updated version of an inhouse application a serious bug was discovered. The application was used as part of chemotherapy follow-up/planning and on some occasions it gave the wrong answer for a test. I discovered that the bug was old and that wrong answers had been given for a long period. Personally I was relieved that I had not caused the bug, but from a medical perspective it would have been better if the bug was new and had only affected very few patients. My takeaway from that experience is that care should be taken when writing critical software, but also that we will make mistakes and it is very important to always focus on how we can make fewer mistakes instead of pointing fingers.
- drivebyacct2 13y agoIt was a bit hard to read from a technical aspect and then I got to the "Events" section. I think I'm going to put myself in the "I choose not to work on things that can kill people" column.