6 Feb 2012
In my early to mid teens, like many in my experience in the technology world, I voraciously read the classics of 20th C science fiction, in particular, giants like Asimov and Clarke. It's decades since I've read them, but many of the stories and ideas stay with me.
One expression you've almost certainly read or heard is Asimov's 3rd law of technology (Asimov rather liked laws, his laws of robotics having long since passed into mainstream consciousness).
"Any sufficiently advanced technology is indistinguishable from magic": http://en.wikipedia.org/wiki/Clarke's_three_laws.
When I was younger, I thought this was a very astute observation about, a description, indeed a definition of technology.
But many years later, it occurred to me it's more than that. It's a challenge to technologists. Make your technology magical. Make it disappear, make it just work.
A recent, in many ways mundane example comes to mind.
Some months ago we got a new iMac for home. For the first time in years, I set it up from scratch, rather than transferring an account over from an older computer.
I created an account, gave it a password, and when the setup process completed, it connected to the web. Over our secure wireless network.
Most people would likely give this no extra thought. But I was perplexed. How could it possibly connect to our password protected wireless network? Choosing a network and connecting to it was not part of the setup process.
Then I realized, the password I gave the new account was the same as that for our wireless network. Whoever designed the setup process decided to try the user password for the networks it could see. If none of these shared the same password, there's no additional impact on the user, they simply need to connect to the network with a password, as they would otherwise. But. If (as I suspect is common) the user's password and network password are the same, the computer magically connects to the network, and so the web.
We are definitely not talking quantum levitation here, but this is magical technology.
And, there are opportunities everywhere to weave a little magic in what you build.
Something simple that comes to mind is auto-filling form fields based on the user's location using the geolocation API, but there are ways to make them almost any interaction less frustrating, more intuitive, more magical.
Perhaps your user will stop and wonder "how did they do that?". But even better, they may not notice at all. A vanishing act, the greatest magic trick of them all.