“Copying Windows files”, “Getting files ready for installation”, “Installing features” … and so on. Installing Windows 8 is an experience pretty much the same as it’s ever been, where too much information is presented to those who don’t care, and not nearly enough to those who do. On top of that I’m informed that “my computer will restart several times.” Lovely.

Computers used to be the domain of hackers – people, who wanted to push the limits of what’s possible and know all about the machines they were using. Then the PC came along (or the Mac, if you’re that kind of fan) and all sorts of people strolled into the computer world, not always willingly. Most software changed along the way, but the installation processes were mostly left out of the changes.

Every piece of software – as big as an operating system or as small as an instant messenger – should have two modes of installation:

  1. I’m a Noob – I just want the software up and running, as soon as possible. Assume all the defaults, get on with the installation, tell me when it’ll be over (I really don’t care what you’ll do on the way) and show me the workspace immediately afterwards. And yes – this mode should also be the default.
  2. I’m a Freak – I want you to tweak the software precisely to my needs. Show me all the knobs and handles, let me decide what goes where, then show me exactly what the installer’s doing every single step of the way. If I don’t like something, let me reconfigure the process. When done, show me a configuration dialog so I can fine tune the final details.

What we’re getting instead is usually a mix of both. Noobs find the installation process too daunting, to the point where they’re just confused and keep clicking “Next”. Freaks find it mostly unsatisfying, distrustful about the installer doing something they would probably not approve of. Nobody’s happy.

Think of installing software as the “unpacking experience”, like Steve Jobs always emphasized it, and Apple continues to do. It’s the first experience a user may have with your application and you want it to be as comfortable and pleasant as possible. Do your users a favor and design your installation process, just like you design your application.