Over the holidays a friend of mine asked me to have a look at his machine, because it was extremely slow and barely responding at all anymore. When he tried to print a few documents it took more than 10 minutes for the first page to come out of the printer after the job had been started.
First I suspected a hardware problem, but when I booted it up I quickly realized that this was a bad case of "freeware congestion" combined with "pre-load-mania". When I had last set up the machine I had just put F-Secure Anti-virus, the necessary hardware drivers, Word and Firefox on the machine.
Hardware-wise a Celeron 2,4GHz with 512MB RAM is not exactly a high-end machine, but for web surfing, some emails and the occasional letter it should be very sufficient.
Now, about a year and a half later the login screen was followed by a desktop building up icon-wise and a colorful ICQ login even before the anti-virus software's splash screen. After that the hard drive kept working furiously for several minutes, trying hard to bring in about 15 icons to trickle into the system tray.
Most of those were related to some clever tool, e. g. a weather monitor, a world clock, a picture-of-the-day screen saver control panel, graphics- and soundcard driver helpers, and various other utilities, including some Yahoo Widgets.
Of course most of these had registered themselves as an auto run, some even with a background service. Once all those programs were started the task manager showed around 540MB of committed memory - more than the whole physical memory available and without having opened only one "useful" foreground process.
Using Sysinternals' AutoRuns tool I had a look at all the different places that can be used for running software on logon or boot, and apart from all the (presumably) tiny gadgets and widgets I also found a lot of the ubiquitous pre-loading parts of all sorts of common software: Adobes PDF Reader, Microsoft Office, something from iTunes and several others.
This is something I have always hated, and the older your machine gets, the worse it becomes: Automatic updates to the latest and shiniest new version of any given piece of software have become absolutely commonplace. While this takes the burden off the user to keep up-to-date and get patches for security vulnerabilities is has a serious downside, too. With every new version software tends to become bigger and more bloated. Moreover every vendor seems to believe that the primary and sole purpose of any machine will be to run their and only their software. Given that - completely wrong - assumption it must seem all natural to them to pre-load seemingly all of their software on boot, sitting ready in the background, just waiting for you to click the icon to issue the final call to "MainWindow.setVisible(true)" and be up almost instantaneously.
While this might work if you really use only that one program all the time and have a sufficiently large amount of RAM in your machine, this might actually work out. But this is complete unrealistic. Nobody in their right minds would boot their machine in the morning and manually launch Acrobat Reader, all MS office apps and every application they might possible use that day just to have them ready. It is immediately apparent to even the novice user that this is probably not making the machine more responsive.
But this is - almost - exactly what happens with all the auto run entries: You just don't see them on the screen immediately. So one thing I always do after installing any software is double-check whether it just registered some sort of auto run and if so remove it.
Along that road I tend to replace more and more of the "big" products with leaner and slicker alternatives. E. g. instead of the Adobe Reader I nowadays usually install FoxIt Reader. Instead of Paintshop Pro (nowadays owned by Corel) I use Paint.NET and IrfanView etc. etc.
This really helps a lot - try for yourself, especially the difference between Adobe and FoxIt Reader is impressive.
Back to my friends machine: For about half an hour I tried to tidy things up, however the sheer amount of auto run tools, services etc. was too overwhelming. So I decided to do a fresh install. Not wanting to backup all user data (around 70GB) to DVDs and not having an external drive at hand I could not reformat the drive during the installation.
That meant that doing a new install in parallel to the existing one would reuse the existing "Program Files" and "Documents and Settings" folders - something I did not want in order to keep the new setup as clean as possible.
Because you cannot rename those folders from a running Windows I booted from a current Knoppix CD and mounted the NTFS partition. From here I just changed the folder names to "DocsAndSettings.old", "Programs.old", and "Windows.old".
Once I had done that I reinstalled XP from the CD I had prepared for the previous install already with XP ISO Builder. The allowed me to just leave the machine working, because it would automatically configure a user account, install all hardware drivers - even those not part of the default Windows CD-ROM - and set up the network to use DHCP. After about an hour I came back and inserted the c't offline update disk to bring Windows up to date.
Once all necessary applications had been reinstalled - which - given that you have all setup disks available and don't have to go download anything - should be done with the anti-virus program being last to save some more time - I just moved the "My Documents" folder back in place.
Boot time from POST to desktop is now around 35 seconds with everything ready to go after about 1:15 minutes. Memory load is around 310MB with a significant portion being taken by the inevitable anti-virus/anti-spyware software. However launching a browser or a home-banking app is now a matter of seconds instead of minutes, and printing a letter also no longer requires you to take a day off from work.
When I presented the results my friend had a hard time believing that I did nothing but completely dispose of all the gimmicks he had found useful and funny over time. We'll see how long he can resist this time.