Tim Berners-Lee Is Sorry About the Slashes
Stony Stevenson writes "A light has been shone on one of the great mysteries of the internet. What is the point of the two forward slashes that sit directly in front of the 'www' in every internet website address? The answer, according to Tim Berners-Lee, who had an important role in the creation of the web, is that there isn't one. Berners-Lee revisited that design decision during a recent talk with Paul Mohr of the NY Times when Mohr asked if he would do any differently, given the chance. 'Look at all the paper and trees, he said, that could have been saved if people had not had to write or type out those slashes on paper over the years — not to mention the human labor and time spent typing those two keystrokes countless millions of times in browser address boxes.'"
From technical point of view, *not* having the // could create problems more easily. For example if you include port number in the URL and browser or program tries to look at what protocol it is based on value before first :
http://tech.slashdot.org:80/story/09/10/14/1219215/Tim-Berners-Lee-Is-Sorry-About-the-Slashes
http:tech.slashdot.org:80/story/09/10/14/1219215/Tim-Berners-Lee-Is-Sorry-About-the-Slashes
Now if you dont write that http: in browser:
tech.slashdot.org:80/story/09/10/14/1219215/Tim-Berners-Lee-Is-Sorry-About-the-Slashes
Now the browser would think the protocol is tech.slashdot.org and tries to pass it to a responsible program instead of loading it. This means you would now need to actually type in the http: which none of us do now. Or dropping general URI support from browsers and IM windows and any other programs (you know all those irc:// spotify: and so on URI's). Or then typing in the :80 would be mandatory.
Doesn't the same logic hold for the person that decided it should be 'http' for hypertext transfer protocol and not just simply 'h'? Yes, http is more descriptive but unnecessary. Had another protocol came along starting with 'h' they could have opted for another letter or -- if they were all taken -- became a two letter protocol. I mean, if we're going to get into pedantic apologies for lack of brevity I would assume the three unnecessary letters in http are a greater crime than the double slashes, right? Of course, rarely do I find myself typing anything other than the domain and TLD (i.e. slashdot.org, mail.google.com, woot.com) so this has really become a non-issue.
My work here is dung.
I think it's interesting to be able to talk to someone who picked something that affects so many people on a daily basis. Of course, it's a really tiny effect, but very visible. He could have picked two colons or dollar signs or any random thing. It's not often you get to make a decision that ends up being used globally.
I will shred my adversaries. Pull their eyes out just enough to turn them towards their mewing, mutilated faces. Illyria
Back when I wrote a thesis on dissemination of company-internal information via the world-wide web, in 1994 or so, I remember stating that originally, an indication of which network protocol to use was meant to go between the slashes. But since, in the real world, the network protocol was always TCP/IP, this was made the default and whatever was once put between the slashes was dropped.
Of course, I don't remember the source or anything.
I had occasion to have an email conversation with Berners-Lee at one time (he bought a license for a program of mine), and I asked if he regretted choosing "www" instead of "web". I was very surprised that this was not something he'd change if he could do the whole thing over ...
Saying "double u double u double u" takes about twice as long as saying "web" so that would have been far more beneficial than worrying about the slashes.
There was a bit of a drive to use "web" some years ago, but unfortunately that fizzled..
I'm pretty sure they are sorry about that. I can't remember who it was, Paul Allen maybe? But one of the early MS programmers said once that he hugely regretted using / for switches in DOS 1.0. When they added directories in a later version, / was already taken so they had to use \ instead.
Quidquid latine dictum sit, altum sonatur.
Well, they added directories in MS-DOS 2 and had already used forward slashes for switches in MS-DOS 1, so what could they do? Can someone older than me confirm that they 'researched' the slash for switches from CPM?
Paul Allen was the early Microsofty who escaped with some of his soul intact, so it was probably him who regretted it.
I actually don't think it is! You can (and almost certainly do) use more than one finger to type web, so the speed with which it can be typed isn't related at all to how quickly you can move your fingers. By the time the W is pressed, you should've already been moving to the E in anticipation of having to type it, etc.
WWW on the other hand is limited by how quickly (and accurately) you can move one finger up and down.
Here's another demonstration: see how quickly you can tap out a repetitive rhythm with just one finger. Now try it alternating between two fingers. See?
In Germany they usually say the www, but never the dots, so the website would be: www bild de
I always thought that was odd.
My guess is that having the domains in that order allows you copy them directorly to/from DNS packets.
And the reason for the order in the DNS packets is that it allows compression by back-references. Roughly if a packet contains multiple names:
some.domain.example.com
other.domain.example.com
can be transmitted like:
some.domain.example.com
other<go back in packet at offset X>
See RFC 1035 section 4.1.4 for details.
OK, maybe it could have been reduced to one slash, since there's no :/ smiley elsewhere in the URL pattern, but you need to be able to distinguish relative URLs from absolute ones. Without some unique token sequence that was guaranteed not to occur elsewhere in a URI you're going to run into problems. Start removing components from a fully specified URI and see how quickly you run into ambiguities:
method://username:password@host:port/paths/terminal?token=value&token=value
The reasons for the // convention for the "super root" in networks like OpenNet and FutureNet, that he was copying, are still valid in URIs. You need something that's easily parsed by computers, and easily recognized by humans. When I first saw the syntax I was all "slash slash whiskey tango foxtrot?", but after using it for a while I was convinced that I was wrong and he was right, and even if he's forgotten why... I still think he was right the first time.
UK internet addresses used to be like that. I remember it well. It caused a bit of fun during the changeover period c. 1992.
Rich.
libguestfs - tools for accessing and modifying virtual machine disk images
People mange OK with directories being a nested list, and there is a certain unnamable protocol which uses names that way around. Unfortunately, we're stuck with the backwards system in use now, so there's no point worrying about it.
Berners-Lee regrets that as well, from back in 2000...
No, it's a joke on the URL syntax. You read it "H T T P colon slash slash slash dot dot org." The FAQ addresses this somewhere, and reluctantly admits that, although funny, it was perhaps an ill-thought-out joke since it does make it difficult to verbally speak the URL without confusing your listener. /faq/slashmeta.shtml#sm150
Alexander Peter Kristopeit bought his basement from his mommy for one dollar.
I agree, the // does serve a purpose. Having a marker for the start of the hostname makes it possible to construct a scheme-agnostic URL.
Suppose you had a web page that might be served via either HTTP or HTTPS. You need to ensure that any resources (images and stylesheets) it references use the same protocol, else the browser will warn of a secure/insecure mix. Suppose also that the resources are hosted on a separate server (a common performance-enhancing technique).
The solution: <img src="//host/path/to/image.png">
Voilà -- same-protocol URLs without conditionals in the HTML. It works in all common browsers. It is possible thanks to the double slash!
Let's just drop www altogether!
I've always mentally read it as "triple dub". That doesn't take so long to say, and most people understand what I mean by it when I use it in conversation.
That's... interesting. Do you always "hear voices" while mentally reading? I find I frequently don't realize I don't know how to pronounce a word until the first time I try to use it in spoken conversation. When reading text, it simply doesn't come up how it "sounds"...
Then again, apparently I'm strange. People talk about whether someone can think in another language or not, as if it requires greater aptitude to think in another language rather than merely speak it, whereas I point out it's a necessary prerequisite to be able to think it in order to speak it. But I'm told they're talking about "just thinking" rather than thinking about what you're going to say -- in which case, I don't use any language at all, I just think thoughts. I only think words in a language when I'm thinking about speaking. If I'm thinking about water, I use neither the word "water" or "agua" in my head, which words to use only comes up when I'm thinking about how to articulate my thoughts. I can't imagine how slow it would be to actually think in a language, native or not.
"Convictions are more dangerous enemies of truth than lies."