Having used a computer the past 11 years of my life, I've come across a plethora of install programs for various software. The absolute majority of them are a pain in the ass, let's face it. The simplest kinds of software, like Winamp, don't exactly require a lot of configuration options, but even those are a pain to use a lot of the time. Very rarely do I see an install program that caters to the user. The occurence is borderline miracle, in fact.
But worst of all, the operating system category. Any OS I have tried my hands on had a fairly long install procedure and just about everyone of them was painful. To make this more intuitive, I'll try to categorize a little.
1. buggy software
This is an immediate show stopper in many cases. If you can't even get the install program to run, there's little hope for you. I've had many experiences of this kind. Off the top of my head, the Windows XP installer will not run if you have a somewhat custom partition scheme with Linux partitions. It won't give you an error (that would be too convenient after all), so the best thing you can do before starting the install is to wipe your drive and try again. I had a reiserfs partition on mine drive, perhaps that's what did it. Another fond memory was the RedHat installer (think it was 8.x), which wouldn't start anaconda because the hardware detection failed at the pcmcia step. Passing the nodetect flag to the kernel didn't work and trying to omit this step was theoretically possible but required a fair bit of skill and determination to hit that F8 none too early and not too late. Finally I did succeed but it took a good hour to get there.
2. horrible design
This is the most prominent deficiency install programs possess. Around 10 out of 10 times, the dialogs are laid out in such a manner that makes it a pain in the ass to use them. The most glaring error is the notion that thou shalt not be blessed with the privilige of navigating both forward and backward in the install steps. Some installers give you an overview of the steps to be carried out first, guide you through them and then offer you a possibility to review your choice. But these are a minority among installers. In many cases, such as the Sun Solaris install I'm conducting at the time of writing, give no such privilige. If I press the wrong key by mistake and bypass the hardware autodetection, there is no way at any point in the installer to go back and fix it.
3. missing functions
In some installers, certain basic functions are just missing. Most recently, when conducting and install of Fedora Core 2, I selected to install no boot loader at all, awaiting the prompt at some point in the install process that would allow me to generate a boot floppy. But it never showed up, it was gone. And given that making a boot floppy in FC2 is as simple as typing one single command, it probably wouldn't have been too much of a problem to throw it in there or at least not take it out. Meanwhile, getting a FC2 bootdisk was far more involved than one might imagine, so in the end I was forced to run the install again, just because that step was missing.
4. bad interface
For those of us who have installed a few programs in our time, the interface of the installer is a key issue in determining how much time and aggravation goes into installing a certain piece of software. For Windows programs, the blatant lack of keyboard shortcuts is a real pain, although this applies to a wide range of "mouse-driven" installers. Omission of reasonable defaults is another annoyance, forcing you to type in or select a certain setting you use over and over again, which might as well have been made easier to define.
5. inflexibility
A close cousin of #2, this one is just about omnipresent. And for once, you can justify that being so, because installers give you a limited set of options to choose from, no matter how you look at it. You would have to do everything manually to allow any possible configuration. So I will go lightly on this step, because it's a tricky one. However, some installers are truly egregious when it comes to giving the user basic flexibility. Things like offering only ext2/3 for filesystem when the distribution has built-in functionality for reiserfs is annoying but no show stopper. But not allowing a custom location for installation destination certainly is.
Apart from the practical side of facilitating a large volume of installs with a well designed interface, the installer is also the first piece of your software that clients see. Evenso, it often seems to be the most neglected of them all. You would think any software vendor would want their software to be easy to install, if not pleasurable. But if the vendors had conducted any kind of feedback program on the installers, they would very well know (perhaps they do) how bad those installers really are.