Well, I'm already behind but managed to find time to get KISS entry #2 out. This is a fairly easy one and one that I've blogged about before. Consider this screenshot of my installed programs.
Applying the KISS principle to software installation (as Apple generally does) would mean that a single icon would indicate that a piece of software is installed and dragging that icon to the trash would either complete the uninstall or at least start the process. But, as we've already discovered, Microsoft believes in the secondary KISS meaning (Keep It Simply Stupid). The installation of Visual Studio 2005 does not produce a single icon but instead we get a whole series of things that are installed.
What in the heck is 64 bit Prerequisites? Sure, I know technically what it is but why on earth is it a separate item here (and please don't give me some lame answer as it coming from a different group and being it's own MSI). Am I really anticipating uninstalling or upgrading that item in isolation. I don't think so. Microsoft treats this list as a hard list of actual components that are installed rather than a nice, user-friendly list of applications that are installed.
Microsoft could easily have made it possible to double click an application icon in this list and see a list of components that make it up. That list for VS 2005 might have included the prereqs, the remote debugger, the J# redist package, etc, etc. It's really quite comical to read the setup instructions for new beta builds of Visual Studio and see that you have to remove previous beta bits in precisely the right order or things might not work right. The list of things you have to manually remove is huge.
The whole idea behind software package management is that you can at least attempt to remove any package and, if it succeeds, your system is still in a usable state. Try removing the 64 bit Prerequisites. It will genuinely attempt to uninstall even though doing so would leave Visual Studio still installed but crippled.