Rant: Install Programs
on 03.19.05, 02:03pm in art of software • comments (9)

As computer users we’ve all become used to the concept of the "setup program" in order to put a peice of software on your machine. If you step back for a second, the concept in itself is pretty weird: You have to run a peice of software in order to put another peice of software on your machine.
Unfortunately it seems that having an installation program is a basic fact of life when your machine can suffer from DLL Hell, Codec Hell, multiple versions of .NET framework, the registry, etc. I hear story’s like Sam Gentile’s post "First Night of Public Indigo Tough" all of the time:
First of all, the version of the .NET Framework 2 I have (and VS) were newer than the ones in the SDK. I finally got it installed but it broke Visual Studio Beta 2 such that I lost all project types except Managed C++ (at least Kate will be happy!). Then, when I tried to do things from the command line and use MSBUILD, I can’t get any of the QuickStarts to work even though I set up the Virtual Directory. Arghhh!!!!
So I’m going to finally say it: I HATE INSTALL PROGRAMS.
There, I feel better. Imagine, if you will, a world where:
- You could drag and drop software between your old machine and new machine when you upgrade.
- A backup could be as easy as copying your software to an external USB drive or network share.
- You could put your favorite application on a USB keychain, plug it in wherever you go, and it would just work? (see Portable Applications).
It would be nice, wouldn’t it?
While there was some talk awhile back around ‘xcopy deployment‘, the reality is that I’ve never really seen anyone actually doing it (I certainly can’t move my Office install with it). InstallShield even has a totally "unbiased" (yet somewhat factual) argument for installers entitled "Why you should still use Windows Installer to Install .Net Applications". Never mind that end users hate setup programs.
And don’t even get me started on uninstall programs.




Barry Dorrans (March 19, 2005 @ 2:44 pm)
Ah yes, xcopy install. What a complete joke.
Try to use the event log, with a application source all of your own it doesn’t work if you’re running as a non-admin, you have to resort to the MSI to create the event source - http://idunno.org/displayBlog.aspx/2005031501
And don’t even get me started on Crystal Reports - http://idunno.org/displayBlog.aspx/2005031101
Michael Brundage (March 19, 2005 @ 7:39 pm)
You must be loving MacOS X, then. Most MacOS X programs are just drag-and-drop (xcopy) install.
I think the main reason for installers is to get you to click “I Agree” to the stupid EULA you didn’t read. I can’t remember the last time the “README” was anything worth reading.
Coding Horror (March 19, 2005 @ 9:17 pm)
Make Mine XCOPY
Steve “what the heck does furrygoat mean” Makofsky crystallized a lot of my thoughts in his recent rant on software installers. One of the biggest advantages of the .NET framework is the way it actually enables XCopy deployments for…
l.m.orchard (March 20, 2005 @ 4:28 pm)
Not to be a Mac snob, but this sounds exactly like my experience over the last few years, in going from iBook to PowerBook, then backing up a dying hard drive to reinstall said PowerBook:
“You could drag and drop software between your old machine and new machine when you upgrade.”
“A backup could be as easy as copying your software to an external USB drive or network share.”
I even moved my MS Office X install around this way.
Although some software comes with an installer, I’d say 80% of the things I’ve played with since I got a Mac have been drag-and-drop into the Applications folder in my Home directory.
Now, I don’t want to be a twink and just leave this as a “Switch to a Mac” comment. So… why’s this work for me on OS X, but not on Windows? and could xcopy install really be made to work on Windows?
I’m not entirely well informed on this, so I don’t know if this is more an OS capability thing or just a development convention thing, but application bundles on OS X seem to have worked out rather nicely since they can carry along their own versions of frameworks– so no DLL hell?
What I’m not really all that sure about is why this sort of thing couldn’t work on Windows?
Randy (March 21, 2005 @ 8:18 am)
I’ve had to code/test installations for the last 10 years of my life… a patch of my now missing hair has been dedicated to the task since Windows Me was released.
On the flip side, wasn’t it the “drag/copy one package” the root of how people were stealing applications via iPod a while back? [As usual] I’m of two minds on the subject, altho I think the benefit of the ease of use would be worth the risk: I can’t it adding numbers to piracy at this point in time…
tales of a drugstore cowboy (March 21, 2005 @ 8:59 pm)
You can’t fake OS X
Quit dreaming about a Mac and buy one….
John Gray (May 23, 2005 @ 7:30 am)
HELP! I have an urgent question for MAC OSX users. HOW DO I GET THE DISK OUT OF MY CD ROM DRIVE? It appears to be stuck!
I wanted to install a new progrom onto my MAC OS 10 at work. I am not that familiar with MACs but am trying to learn as I go along. I borrowed another user’s cd to install a couple of programs, and double clicked on the program icon to launch the program to see if that would prompt me to install. It did not - instead it of course launched the program, so I played with it initially and then closed the program. Next I copied the program icon by dragging the icon to my desktop dock. The icon appeared. However I placed this icon quickly into the trash can as I realized I needed to drag and drop it into my program folder instead. So I decided to trash the disk so I could start over from scratch, and shut down. However the MAC would not let me open my cdrom drive to remove the disk - (I dragged the disk icon to trash, as well as simply hitting the arrow key on keyboard to pop open the drive) I kept getting the message “the program is in use, please close program”. However upon CMD/period, CMD/OPT/ESC, no programs were opened. So I left this for an hour, came back and the same warning would appear each time I tried to remove the disk. So I just shut down my MAC. Now when I go in to work tomorrow will my harddrive be wiped out?
Very worried,
John Gray
Sharon Rosner (August 21, 2005 @ 12:22 am)
Hey, just found this article. I believe the problem with install programs on Windows is to a certain extent because Microsoft encourages this kind of behavior on the part of developers by giving them a bad example. I mean, not just with install programs, but with development in general. In the end, though, developers should find their own solutions for a good user experience.
I’ve written software for Windows for the last 12 years (since windows 3.0) and have come to abhor the kind of stuff install programs do. At the company I work for, we have decided to stop doing that. Vuniq, our software package, comes on a USB stick, but you can also install it using a “normal” install package. The install program does not mess with \windows\system32 or install any drivers, and after installation you can move the software to any other folder if you so wish. Needless to say, our customers are very happy about this feature.
What I’m saying is that the responsibility is the developer’s. It doesn’t really have anything to do with the OS. I have a Mac at home and there’s annoying installers for it too, although I admit it’s usually better, especially with small apps.
Michael Curry (February 4, 2006 @ 10:40 am)
(I’m late to this conversation, but what the heck, here goes..)
I agree completely… nothing worse than having to run a bloated installer to use some application. And now, InstallShield (yecch!) is providing developers with an integrated update manager that inserts itself into the auto start chain on Windows… yet another bloated POS that any sane and informed user will want to disable or remove ASAP.
One thing to note: Some software download sites lower the ratings score of a submitted windows program if it does not include an installer! (Tucows was one of them, IIRC.)
I prefer to provide people with just a .zip file containing the essential files, let them drop the file in whatever dir they like, and that’s it. I suppose a compromise is to give them a small installer program that copies the files (’xcopy’) and drops a shortcut to the program in the start menu or whatever; even that may not be enough for some critics.