9 Feb 2011 dorward   » (Journeyer)

The hash-bang discussion

Beware! This article contains links to pages that depend on JavaScript. This is stupid, and that’s the point.

It started when Simon Willison noticed that Gizmodo had redesigned, and depended on JavaScript for their URIs to work.

Mike was unimpressed and wondered how you were supposed to get at the data without JavaScript.

Danger! The next paragraph contains and links to sarcasm!

I knew the answer to this one — you use the highly intuitive special Google URI rewriting technique. (Sadly for me, Mike had already found the answer from elsewhere, and Twitter timestamps prevent me from taking the credit for informing him)

More than a few people agreed that the URI format was not a good idea. Terms used to describe it included stupid, not proper, decreasing accessibility and evil.

Then along come the inevitable car analogies. Thomas Fuchs compared JavaScript to the steering in your car but Steve Marshall pointed out that your steering column isn’t randomly cut from time to time.

I prefer to think of JavaScript as something more akin to satellite navigation. It’s very nice when it is working properly, but a bad signal can cut it off and sometimes it can lead you in the wrong direction. I’m glad we haven’t yet reached the point where road signs are not considered worth the effort of erecting.

Since then, some nice analysis of the problem has been published (which is why this entry is largely a collection of links and not an attempt to explain the problem in detail).

I think Peter put it best when he said:

Stop breaking the web with hash-bangs (#!) and stop thinking JavaScript is always on. NO, SERIOUSLY.

Syndicated 2011-02-09 21:26:00 from David Dorward

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!