

An idea for getting rid of the hashbang problem - michaelcgorman
http://www.michaelcgorman.net/2011/02/10/no-more-hashbang-zones-replacesid-and-http/

======
mooism2
Basically you want to be able to return a diff.

I half remember that this is possible over http for updating a resource (e.g.,
you looked at example.com/a-page an hour ago and now you want to look at it
again; your browser can just download the bits that have changed). But I don't
remember the details. Maybe it's part of WebDAV?

Then you only need to hint to the browser that a certain link might be
diffable against the current page (or another page that the browser might have
cached). That means only one new attribute, one new http header, and no new
url structure required.

Adding new mandatory structure to urls icks me out for some reason. It doesn't
feel very web-like.

Edit: I think that something like your idea would be helpful, but I don't
think your idea would be the best way of doing it.

~~~
wmf
SDCH can save bandwidth, but I think the hashbangs are trying to avoid any
page load at all.
[http://en.wikipedia.org/wiki/Shared_Dictionary_Compression_O...](http://en.wikipedia.org/wiki/Shared_Dictionary_Compression_Over_HTTP)

~~~
michaelcgorman
SDCH looks to be going after a similar problem, but it would cache the
templates between browsing sessions rather than just among consecutive
pageviews. I'm not sure how well it would work for AJAX-y sites which rely on
maintaining Javascript state, though, but potentially you could still use,
e.g., localStorage for that purpose.

------
michaelcgorman
I've been playing around with this idea for a while, and given this week's
context, I figured I might as well throw it out there. My main questions for
HN are: (a) is this a good idea, (b) do you see any big pitfalls I'm
overlooking, and (c) how might we get this to happen?

~~~
wmf
Can you compare this against the HTML5 pushState API?

~~~
michaelcgorman
All pushState does, AFAIK, is add things to your browsing history; it alone
doesn't affect the content you receive. It does, however, make it possible
(for recent browsers with JS enabled) to use the back button to navigate
through AJAX-ed sites.

