Tuesday, May 15

Of software functionality, UIs, and installers.

If the devil is in the details, so is god. Restricting this discussion only to computer software... There is obviously a geeky layer in a "program" where the functionality of the software is actually written. Then there is the user interface on top of that, and details like the installation/uninstallation routines sitting above all. But time and time again, especially on Windows, good underlying functionality is sabotaged by bad UI or other "window dressing" coding. But this window dressing is what the paying customers first see, and what they judge your program on, by and large. Why don't most software firms learn this? Maybe it's because the company founders are geeks themselves and that culture has shaped the company. Big firms like Adobe and Apple understand that UI is not "fluff." But plenty of midsize developers (especially of business apps) do. And while their users may be chained to their software against their will, products that hope to succeed in the public realm need to look good and act appropriately. Even some of us who are savvy enough to see good left-brained skill appreciate a program that has also had the time and care put into its aesthetics and user-friendliness.


When I go to install a newer version of a program, for example, I shouldn't be told I have to uninstall the older version first, then be kicked out of the install program until I've done it. That's horrible, yet you still see programs that make you do this. Nor should the installer treat the new version as a separate program and install it alongside the old program, so that you end up with Version 5 and 6 still both accessible. That's confusing and wasteful. The best installers say something like, "an older version of X has been detected installed on your computer. Would you like to update it to this newest version?" And then when you click "Yes," it gives you helpful status updates, like "Uninstalling old version(s)...", "Version 6 now being installed..." and so on. So you know exactly what is happening to your computer. I hate when installers take over my computer and make it seem like the inscrutable black monolith from 2001 for a few minutes.

Also, every program should ask you how you want your file associations to work with this new program, if there are other, competing products on the market, and not automatically take over all filetypes for itself. It should also ask you whether you want to install for this user only or for everyone using the computer, and what kind of shortcuts it should install (Start menu group, desktop, quicklaunch). If there are any "helper" programs that will run full-time in memory but are not strictly necessary, it should give you a choice there too (XHelper will help X to load faster, but it does take up a small amount of memory at all times in order to provide this function. Do you want it to run in the background or not?). And for loving sake of God, don't ask me about related newsletters, offers from affiliates, or other obvious sales pitches/mailing list solicitations! And if you do, it had better damn well be an opt-in situation where if I do nothing, I am committing myself to nothing, not to everything (the boxes should begin by all be un-checked). People appreciate choices (at least I do), and knowing exactly what an installer is doing to your preciously perfect system. I will not use a piece of otherwise good software if I feel what it is installing all over the place is being unnecessarily concealed, or I'm being coerced into purchasing (or "trying") other unwanted products that I have no interest in.

To me, this high-level user communication is at least as important as what the program actually does underneath, at its core. I HATE inconsistency, orphaned files, imperfect installations, needless helper programs, needless services, bad UIs, insufficient notification about what exactly is being installed/uninstalled/changed, and just generally shoddy tacked-on right-brained stuff by left-brained geeks who probably don't shower every day or get laid unless they pay for it either. Do I make myself clear??

1 comment:

Metamatician said...

Wish Bill and Heath still read this blog.

Archived Posts

Search The Meta-Plane