Touchstone Words

The Worst Programming Mistake Ever Made | Touchstone Words

Popular Articles

Sexual activity and body health
Do You Know If You Are Sexually Active
Biofuel, Biodiesel, Environment, Fuel, Fossil Fuel, Energy, biohydrogen, biomethanol, biohyrdrogen d
Pros and Cons of Biofuel Energy
Blockchain Hyperledger family
Intro to Hyperledger Family and Hyperledger Blockchain Ecosystem
Porn actors who go to Hollywood
From Porn performances to Hollywood
social and economical state of a country
Pros and cons of capitalism vs socialism
Hyperledger design model and framework architecture
Overview of Hyperledger Design Philosophy and Framework Architecture
Hyperledger fabric and its components
The Survey of Hyperledger Fabric Architecture and Components for Blockchain Developers
Perceptions and mind thinking
What are perceptions and how to manage them
Taylor Swift nightmare songs
Top Ten Worst Taylor Swift Songs Shared by her Fans
Blow job tips
Pros and Cons of Blow Jobs

The Worst Programming Mistake Ever Made

By Shane Staret on 2018-05-14

If you are a programmer, you know that even the smallest mistake can cause your program to completely crash and stop running. Even a typo in one line in thousands of lines of code can cause an exception to be thrown, meaning that it is possible that your program cannot run without fixing the issue.

Now, if you’re just some random programmer making a crappy application for your final project, then this really is no big deal. No one cares except you and the worst possible thing that could happen is that you might crash your own computer. So obviously, the worst programming mistake ever made cannot be made by some scrub like you or me. The real contenders are those programming errors that were in major software applications or possibly in major government projects that possibly caused millions of dollars to be wasted or caused major hacks to be possible.

It is possible that we are not aware of the worst programming mistake ever made, as it may have not been discovered yet or it may have been kept quiet by the company/corporation that discovered it, in order to save their own skins or to hide the vulnerability before they have fixed it. But as far as known programming mistakes go, I’d say that the one that caused the deaths of several people from the Therac-25 should go down as the worst.

The Therac-25 was considered to be a “radiation therapy machine”. Radiation therapy is known to be an effective way to treat many different forms of cancer, however, it is not exactly great for your body. Essentially, radiation therapy kills off whatever cells it is targeted at‒cancer cells or not. Therefore, it is essential that the radiation is targeted effectively to parts of the human body that actually need to be treated, so as little harm is done as possible. Unfortunately, when the Therac-25 was released in 1982, it contained several fatal software bugs that caused the death of six patients in 1986 and 1987. There are quite a few things that can go wrong when giving radiation therapy, however, they are all known and in previous iterations of the Therac machines, there were hardware interlocks that prevented them from happening. However, with the Therac-25, the designers got rid of the hardware interlocks and instead favored software safety checks to ensure no faults occurred. Unfortunately for the six patients, the software contained bugs, causing the software safety checks to not operate properly, leading to all six being exposed to an overdose of radiation.

You might be wondering how bugs like this could remain within software designed to treat cancer patients with radiation. Any programmer knows to go through as much testing as possible to ensure that their applications work properly, and major companies even hire people full time to test their software for any issues. Well, the problem was that there was no outsider who independently reviewed the code. There were a plethora of things wrong with the software of the Therac-25, but they all probably could have been prevented if independent code reviewers were brought in to actually test the functionality of the machine. Some of the issues were caused by pure laziness. For example, when an error code appeared, the person monitoring the machine might see the error code...but the user manual did not explain the the operator just ignored the error. Obviously, these design flaws would have been exposed by independent quality testers, but alas, it was not done and six souls were taken away because of it.

While you may not be a developer of a radiation machine, I hope that this deadly example shows you why you should always test your code and put it up for review. Scientific journals and articles are subject to peer review before being published in reputable places like Scientific American. Code is not necessarily subject to the same kind of quality assurance as scientific articles. The company you work for may have some kind of quality assurance within the company, but they may not have a third party that also tests the quality of their software. It is extremely important that they do however, especially if they are in the business of taking care of humans. So in the end, just make sure that you learn from the mistakes of others as much as possible before having to learn from the mistakes of yourself.

Programming Languages and Resources for Web Developers
The easiest way to learn coding is via web design programming. You should lean coding languages that are in use by millions of sites. HTML, CSS (or HTML5 & CSS3) PHP, MySQL, JavaScript (or JS frameworks like jQuery, Angular, React, Node, or Express) or MongoDB, Apache, Ruby on Rails, and Linux are all related to web design coding. For beginners interested in learning more about web design and development, here are a list of step-by-step training guide articles: i- Become CMS specialist, ii- Become front-end specialist, iii- Become expert SQL developer, iv- Become expert PHP developer

Discussed coding languages are well suited for those interested in pursuing a career in web design and development; however, other options are mobile App design and development, system admin and software engineering. It is advisable to consult with an IT counselor to understand what options best fits your skills. For instance, if you want to be a software engineer, learning HTML and CSS might not fit the bill. Here is an excellent article for learning more on coding and technology career roadmap. Once you know what career path you wish to pursue, you can make a plan on what, when, and how to learn. There are lots of online resources for learning coding and technology in general. For teenagers and high school students, High School Technology Services offers variety of hands-on training. For adults and professionals, Coding Bootcamps and DC Web Makers Companies offer basic to advance project-based programming and technology classes.

Article Comments

By Same Author

How to find a Tech Scammer
Techniques of Tech Scammer and How to Detect a Scammer
Computer-generated Imagery and its evolution
The History of Computer-generated Imagery
Learn about electric cars
The Future of Cars- Automotive Electronics
Fastest Computation Speed Possible
What is the Fastest Computation Speed Possible
what is value for 1 by zero
What Happens When you Divide by Zero
The magic of green screen
How does a Green Screen Work
The history of technology
How Technology Has Evolved over Time
Learn about anti-virus
How do Antivirus Programs Detect Issues
Learn about VPS
Why Virtual Private Networks are so Lovely
p and NP problem for computer engineers
P versus NP Problem or the Largest Unsolved Computer Science Problem

Affiliated Companies

Disclaimers And Things

Copyright © WEG2G, All Rights Reserved
Designed & Developed by DC Web Makers