Outdated Bits: The Call for Self-updating Software

I’m writing this on outdated software.  The browser itself is update and I’ll get to that in a minute, but the plugins are outdated.  Now every website I go to, I get a flag that some of the plugins are out of date.  Of course, I’m not told what these plugins could possibly be, I’m only told that I need to take time out of my day to fix this.

It’s 2012.  Why do I need to be involved in this process?

As you go through your digital life, you run into so many of these update flags.  Most software will not update without your express permission.  This usually means going back to the manufacture’s website, allowing the software to get the update, installing the actual update, and then restarting either the piece of software or the entire system.  This process can take anywhere from 30 seconds to a half hour depending on the size of the update, bandwidth, and all of that.  That’s time your not doing the thing you got on your computer to do in the first place.  (For me, that’s looking up pictures of Robocop killing Lolcats.)

Film poster for Robocop - Copyright 1987, Orio...
“Dead or alive your coming with me, Tacgnol.”

It doesn’t have to be this way.  As I said before, my browser is up to date, and I was hardly involved.  Every now and again, I would start Firefox and it would tell me that it updated to the latest version and ask me if I wanted to read the change log. This is not how the majority of software does things. In fact, web browsers are about the only programs that handle updates this slick.

There seem to be three major reasons why the user is still involved in the update process:

  1. Storage Space.  Back in the day, disk space was at a premium and one had to be selective about what you saved and what you didn’t.  If you only have 4 megs of storage, you might want to forgo updating your operating system so you don’t have to delete that badly compressed JPEG of boobies.  Nowadays, we have have enough storage space to fit the entire library of congress on a flash drive that I could easily swallow.  Hell, bearing a power source and wireless connection and it could update inside my small intestine. Space constraints haven’t been an issue for a long time now.
  2. ULA.  Sometimes when software is changed, this needs to be reflected in an updated version of the User License Agreement.  I respect letting people know when their rights change, but this only needs to be done when the ULA is actually changed, not with every update.  Let the update happen in the background and when I have to sign new rights away.  It’s not like we are going to read the things anyway.
  3. Sysadmin Control.  In Enterprise level companies, every update to every program must go through and be approved by the company’s IT team to make sure it plays well with every other program.  This is usually due to the fact that the company has some arcane piece of outdated technology that they either don’t want to or can’t afford to upgrade.  So if your company still only allows you to use Internet Explorer 6 (which Microsoft itself no longer supports) that’s why.  Aside from the obvious fact that the user has no ability to make sure they have the best tools for their job, the other draw back is that depending on how the computer is set up, the user could still be prompted for updates they can’t get.

While the need for background updates seems like the king of First World Problems, I assure you that there actually is a good reason to keep your software up-to-date.  One of the main reasons a developer will push out an update is not to give new feature but to fix bugs and security holes. This is way you would want every piece of software that talks to the web to be updated because every day a new exploit is found.  You data should remain your own.  (You know, so you can give it to Face Book.)

I worked in security for years and I can tell you that the fewer people involved in securing something, the better chance it has at staying that way.  Let’s face it: we are all lazy as hell, want our Robocop/lolcat murder pics, and don’t care about wasting time on trivial things like our “security.”

All local software should work like it’s webapp counter parts: you log in one day and it’s shinny and new. Now go away and update all your crap.  I’m sure Acrobat is yelling at you too.