Update?
You’ve seen our articles on Apple Wave, and you might remember iPhone users being led to dunk their phone in water because of a software update. It’s unfortunate, but as electronics get more and more complex, the less users understand them. The goal of this article is to demystify updates a little.
Updates aren’t magic:
They don’t work perfectly 100% of the time.
But they’re also not magic! The software developers generally know what the issues are and fix them systematically. There’s no alchemy, and very little superstition involved. Everything is rooted in something in the code. The only problem is the location, the where, not the how or why.
Software:
Software updates are simply updates to the coding or content of a program, and they can be for any reason. For example, if Microsoft decides to update their logo for Word, they’ll need to send the program on your computer the information to do that!
If Windows notices an inefficiency in some of their software that causes Excel to lag, they’ll push an update to fix it. If Apple wants to fix a common bug, they’ll push an update to fix that portion of the code, which should get rid of it. You might not even realize that your device has been updated, as small issues and efficiency issues tend to be done in the background (this is true for Android, at least). Bigger stuff, like full system updates, do a lot of rewriting all at once. This usually involves a restart, so any software developer who wants happy customers will warn them to save their work.
Bugs:
Please note, updates aren’t magic. It’s entirely possible for a bug to survive an update, or for a new one to pop up in its place post-update. In fact, it’s a common joke that bugs act like the Greek Hydra – cut one down and more spring up in its place. However, the only way to kill the beast is to keep going, and get the torch out. If you notice a bug after an update, and vow not to download any more updates, you won’t get the new bug resolved! Bugs usually take some time to completely iron out, especially for small apps and software developers with limited resources.
Regular updates keep security in check, too! If something in the code gets cracked, or becomes a vulnerability, the best way to fix that is an update. However, the same also works in reverse: if something new gets introduced, it’s possible it’s got holes in it that the developers only notice and fix after it’s reported. That’s not paranoia, either! There’s a class of cyberattack called a zero-day attack. These attacks go after vulnerabilities that updates leave, and they try to get in before the developers notice the hole and patch it.
If you’re very worried about what forums are saying about an update, give it some time. Windows will usually let you delay updates, so you can wait a little bit and see how other users are faring before diving in – the same should also be true of other software developers following the Microsoft principle.
Hardware:
You cannot download RAM. RAM is a hardware thing. If something promises to download RAM on your device for you, do not click it. Understanding the difference between hardware and software can be the difference between ending up with a virus or not. Updating hardware usually looks like buying something to attach to the computer – you can add RAM by physically buying RAM at Best Buy, for example. You can’t download a new keyboard, so don’t try to! Or, you can update what’s written on a CD-RM disc, but you can’t update it from standard to Blu-Ray with a regular computer. You can update a mouse driver, you can’t update the mouse itself to suddenly see ultraviolet with something you downloaded online.
In general, once something is a physical item, it is going take physical items to upgrade it. Can you make a mouse see ultraviolet? Sure, you can buy a sensor and attach it to the mouse. Can you do that with software only? No.
In the same way you can’t download a car, you can’t change physical aspects of something with software, either, with a few exceptions. You can open the disc tray, and you can activate the CPU fan manually, but if you don’t have a webcam or a microphone, you can’t just download one. If your motherboard is water-damaged, you can’t make it not damaged with software alone. Updates aren’t magic! You can’t produce physical changes to hardware out of thin air. That doesn’t mean you can’t break hardware with software: if you delete the software that tells the hard drive how to read, it will lose the ability to read. Which makes it nearly worthless. Just stay away from downloadable “hardware updates” and you’ll be fine.
Firmware:
Firmware’s stiff and generally not made to be tampered with. Firmware is what runs simple things like TV remotes and calculators, and it is generally used for low-level functions that don’t (or can’t) take up a lot of space. It’s very specialized as a result! Where a lot of computer software is one-size-fits-all, firmware is designed for the device it’s stored inside.
Consider a simple, computerized cash register, one that can connect to a network so it can access the store’s website as well. It’s not really meant to do much – so it’s easier to crash than a regular computer. It can be as simple as having too many tabs open and then flipping back to the register screen, or as complicated as stumbling upon a bug it doesn’t know how to compensate for, like the Y2K bug.
As we said in our other article, it’s much easier to just kick the can down the road when it comes to firmware issues. Firmware’s written very specifically, so completing an update the ‘right’ way might not be possible. Instead, adding stuff over the top of what’s already there could be the only way the developer gets the update out. Y2K, for a lot of firmware, just meant telling the device ‘the number can be 00, don’t panic’ instead of telling it ‘the year is now 2000’. Don’t fiddle with it yourself! If the developer can’t get the spaghetti code in line, the average programmer’s in for a journey, and not a pleasant one.
Sources:
https://techterms.com/definition/firmware