Reading Alec Muffett’s blog post on Google Chrome’s team decision to remove http:// as redundant geek speak from the browser, I think I cannot highlight enough the following piece:
“The URL represents “how://where/what” – how to retrieve some data, at where, and what the data is called”
Ah the joys of browser intelligence stupidity, while it tries to second-guess the user in order to help him. So when I type ftp.ntua.gr in the address bar, do I want to access it via HTTP or via FTP because the name starts with FTP? Do not second-guess the user because you are not helping him although you think you do.
And if the how:// part is not persuasive enough, let’s see the where part for which I have commented elsewhere. Users seem to expect that http://www.dom.ain should be identical to http://dom.ain. Instead of altering this expectation browsers tried to be helpful enough to connect to http://www.dom.ain when dom.ain does not respond and thus reinforcing it. Yay, right? No! Not only is the browser second-guessing the user, it also assumes the existence of http://www.dom.ain, and that a common administrative domain exists for both dom.ain and http://www.dom.ain. And then along come newer services, like for example OpenDNS that provides working pages for non-existent pages to the user’s dismay and irritation because what they get† is not what they asked for (but technically it is exactly what they asked for). This abstraction (and expectation) implies certain types of architectures that support the expected behavior and there is nothing that guarantees (or mandates) that such architectures are implemented. But hey, the browser is helping the user here by saving him from four keystrokes on two keys.
Since browsers are second-guessing both the how:// and the where, how long before they are going to second-guess the what too?
So please people, when trying to help by “improving” a user interface, ask yourself who (besides yourself) are you really helping. The Law of Unintended Consequences seeks opportunity.
[†] – If you want to be helpful, you do it the OpenDNS way: By giving the user choice. By removing choice for “convenience” you end up with misdirected user irritation, since the users tend to believe that not reaching a page is the administrators fault, where in fact it is the result of a series of choices done for years on behalf of the user without his consent. And we reach today, where the combination of an “intelligent” choice by the browser is incompatible with the user choice (using OpenDNS).]