installation madness


When did it become acceptable for installation programs in Windows to have completely inaccurate progress bars? It’s become universally acceptable for an installation program to lie to you about how much of the installation is complete. Some programs install quickly, others give you enough time that you could have a bathroom break, or go down the hall to get a drink.

I can think of two cases off the top of my head that do not exhibit this trait – Mozilla programs like Firefox and Thunderbird, and Cygwin. For nearly everything else, the progress bar is meaningless. As soon as it reaches full capacity, it empties and starts filling again. I’ve seen programs that repeat this farce dozens of times, until suddenly without warning, it’s done. The worst offenders will start the progress bar over several times without changing the label that tells you what phase of the install is taking place.

Mozilla’s installer is beautiful. When that green stuff reaches the end, the installation is done. It’s worth a side mention that it’s also about the fastest program installation I’ve seen lately. In general, installation times seem to be on the rise.

If you’re running Windows Vista or newer, you’ve probably noticed that some programs take MUCH longer to install, especially if it was released before Vista. I haven’t researched this phenomenon, but I believe that newer Windows versions position part of themselves between any install program and the actual system so that install programs can’t destroy the OS. If the installer is vigilant about making sure that every change is actually being made, this “shim” might introduce a small delay for each micro-step taken, which adds up.

Software installation in Windows is a complicated business that requires a lot of things to happen in a very controlled way. It has to be broken into several phases, and it must be aware of itself at every step. I get that. So, why not do what Cygwin does? Have two progress bars – one for the current phase and one for the installation process as a whole. Mash them together with each one taking half the vertical height if you’re worried about screen real estate.

Installation is only a tiny flicker in the life cycle of a useful program, so this is not a highly visible thing on most people’s radar. It’s more important for the software developer to spend time working on his GUI and his program’s functionality than to cater to the Admin guy who sees installation progress bars for half his workday. I understand that too. The problem with this easy dismissal is that most software these days uses a third-party install product like InstallShield. It seems unfathomable to me that the InstallShield developers are unaware that people want to know how far along the install is.

I am in general opposed to registry bloat, but it would hardly take any space for InstallShield to store statistics in the registry that later installation programs could use to more accurately estimate their total installation time. If you knew it was going to take about 3 minutes for the installer to boil, you’d be able to take a mental break from watching the pot. You could either close your eyes and let your mind rest, or you could do a little work on another task.


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.