Log in

No account? Create an account
February 2011   01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

Hasse Mich

Posted on 26.07.2009 at 14:50
Sometimes I just have the feeling that software developers hate me. There is no other reason for all of these stupid things so many of the programs that I use. This blog post was inspired by Apple Software Updater, but there are a LOT of bad apples that frustrate me every day. Here are some of the most irritating ones.

Apple Software Update

This piece of software is a prime example of a couple of different bad designs combined into one simple software.

First of all some background info. I only need to have anything to do with the updater because I want to use iTunes which is a great program for listening music. In their unlimited wisdom Apple has however decided that anyone who wants to use iTunes on a Windows computer must also have QuickTime or iTunes will not work. QuickTime is a crappy video playback software when I compare it to anything else on my computer, and I hate having to have it on my computer. Having a great software force me to also have a crappy one is stupid. Also, when QuickTime is installed and any time it is updated (basically whenever I want to update iTunes) it places shortcuts everywhere and enables itself even though I have disabled it manually. Actually, now that I think of it, Quick Time would deserve a heading of it's own, but let's group it together with the updater this time.

Well, now that you have iTunes + QuickTime installed and have gotten rid of most of QuickTimes visibility everything is fine until one day you open iTunes and it asks you to download an update. If you accept this proposal, then the Apple Software Updater opens and presents a list of things that you can download. And lo and behold, the updater for a music and video playback duo wants me to download a web browser! And to make things even worse, the default action is to install Safari (the Apple web browser), so basically anyone who doesn't happen to know what Safari is or doesn't read update windows carefully will install a new web browser that they have no interest in. And it doesn't help at all that in a Windows environment Safari seems like a really bad choice for a web browser compared to the other options (FireFox and Opera especially). So they are trying to get something installed that you don't want or don't need, and it's a DEFAULT action. Please... stop harassing the poor users who don't know what they are doing and wont use your software even if you manage to force it on their computers. If someone really wants your browser they will download it from your website. They wont suddenly be interested in it when they want to update their music program and are eager to listen to their awesome music library.

Windows Firewall

Whenever someone says something bad about Apple or Microsoft it's only fair to also say something about the other. Besides, it's easy to pick on them as both have so much going on that there's always something that you don't like. I wont however pick the usual thing which everyone hates, Windows Update, since I actually think that the Windows Update is pretty good currently and I don't have any reason to bash it. What I really hate is Windows Firewall. I've used different firewall programs and liked and hated some of them, but Windows Firewall is amongst the ones that I hate the most.

First of all, how hard is it to always display a window when a new program tries to access the internet, asking me for permission/denial? Also, why is there no way of seeing which programs are currently operating? I can see a massive list of all of the programs that the firewall has ever seen operating, but that doesn't help when I want to know which programs are operating now and asking for internet access since the firewall has blocked without asking me... just for the fun of it. The difficulty of use is really irritating. Yes, I understand that you want everything advanced being left out so that "noob users" don't mess up, but what about us experienced users who know what they want?

Anti-virus software

From firewalls it's only natural to move to another "protection software genre". I still remember the good old days of dozens of virus spam mails every day in the beginning of the millennium. Most people got most of their mail to their computer unfiltered and viruses were so common that not having an anti-virus software was suicide. The situations is very different now though. Viruses are very rare for the regular user as all e-mail is purged of viruses so many times before it reaches its destination. And an increasing number of users are moving into using web e-mail only, having an even lower risk of infection. Web browsers are also so good nowadays that getting an infection from web browsing is virtually impossible.

But... anti-virus software companies are still painting horror images to peoples minds in an attempt to sell their software for insane prices. And they have succeeded. Even though there are a lot of great free options, most basic users want to buy the software "because it has a cost it must be better". And what do they get? Protection from a threat that doesn't affect them, and as a side effect they must endure slower operating system boot ups, slower computer performance, lost time to 'full disk scans' and painful time wasting update procedures. And they pay for all of this. The harm caused by the anti-virus software to the user every day is huge compared to what a small virus would do.

I personally chose not to have an anti-virus program operating on my computer at all when I realized that I waste a lot of time and computer resources having one and in return I don't get anything. If I ever suspect having a harmful virus on my computer I use an online anti-virus scanner (there are multiple free possibilities which you can use from your browser). In the past few years I've only had a single virus and it was one that didn't actually do anything. From what I've talked with others this situation is quite common, but they still hang on to their resource hogging anti-virus programs "just in case". Come to your senses and drop it already! (mandatory disclaimer: I am not responsible for any harm done by viruses to your computer if you follow my advice ;) ) The only exception to this are the users who download random torrents regularly. That is an easy way to get your computer infected and I must recommend you to get protection.

Online game updaters

With an online game updater I mostly refer to the updating procedures for MMO games, although some other online games suffer from the same problem. If you are an MMO gamer then you should be very familiar with the usual 'patching' process. Every now and then the game producing company releases a patch (aka. update) which all users need to download and install before they can continue to play the game. Regular updates are a necessity for anything as massive as an MMO, but the procedure for the patching process is usually quite far from optimal.

In the usual case your game always opens first to an initial screen, which is the game updater. The updater then checks if the game client on the computer is up to date. If it is, you can click on a button to open the actual game client. If there is a new update then you need to click on another button to start the actual updating. The updater then downloads a massive update file and proceeds to install it if the download is successful. Then after the update is installed the updater again checks if the game is up to date. If you are lucky you are now able to start the game. In the worst case scenario you might be required to repeat the update procedure many times as there are multiple updates to download. Especially when installing an older game (eg. World of Warcraft) you might be forced to download so many updates that the downloads combined are multiple times the size of the actual game that is the result of this long and tedious process.

There are a lot of things that are wrong in this update model and here are the solutions for them:

Problem #1: The need to download and install dozens of updates on a fresh game install.
Solution #1: Offer a download link to a completely updated version of the game client. Currently games offer a download link to a version of the client that has NO updates. Then you need to download all the updates through the updater after installing the client. Why? This wastes bandwidth of the server hosting the downloads and wastes the time of the player eager to pay you a monthly fee. Save everyone time and money and offer a fully updated client download.

Problem #2: The need to download more data than is actually in the game.
Solution #2: Now each update consists of all files that were changed in that update. The problem with this is that the same file might be changed in multiple updates which the user then downloads concurrently. If updates 1.1, 1.2 and 1.3 all include the file 'generaldata.dat' then the user downloads that file three times, even though the file only exists in his game folder once. The updater and download server should be more intelligent. They should check which files have been updated between the version that the user has (eg. 1.0) and the latest version of the game (eg. 1.6). Then the updater should only download each file that has been changed. By doing this on a file-by-file basis you save a lot of bandwidth and the user isn't forced to download multiple 'patches' as he only initiated the update procedure once and gets all files updated.

Problem #3: Users are forced to first open an updater.
Solution #3: Why do you need an updater window at all? Just run a simple version check when the game shortcut is clicked. If the client is the latest version, directly open the game client log in screen. If not, then start the download process automatically. No need to bother the user with this. (Just remember to give them the possibility to stop the download if they want to. Some people are on very limited connections.) This combined with solution #2 above makes the process a lot faster and easier for the user, keeping them more happy with your game.

Problem #4: Updating the game takes a lot of time from actual playing.
Solution #4: Only download the necessary files when the game client is opened. Any files that might not be required to run the game can be updated while the game is running. This includes stuff like updated models and textures for characters and terrain that the user might not encounter. You can continue the update process while the game is running and if the user encounters any content that isn't loaded yet, just load that required update content immediately. Instanced content is very easy to update this way as you can download any content related to that instance when the user enters the instance, but this method also works with content that can be encountered in non-instanced areas, as long as it's done well.

My first MMO ever was Guild Wars, which actually does everything of the good things mentioned above. Later I was shocked when I realized that almost all other MMO's use the horrible update system described above. Even the "new user friendly", "casual friendly", "non-gamer friendly", huge World of Warcraft from one of my idol companies, Blizzard, has a horrible update system. Shame on you. This is such an integral part of the gaming experience. It's time to do this better.

This completes my rant for today. I might pot a follow up for this journal entry later, but I think I got the most important rants on this matter done.

Do you have any personal hates in any of the software that you use? Do you disagree with my rants? Do you agree wholeheartedly? Post your views in the replies. I know this is an area where most of you have opinions and I'm eager to hear them.

Previous Entry  Next Entry