Live data from Hacker News

Broken Links

tbray.org

11–20 of 95 posts

Re: Broken Links

#11
post #9

I think people are missing a huge benefit of the hashbang syntax: readable and copy/paste-able URLs. Without them, it's impossible to have an ajax application with a decent URL scheme.

I think the real question here is whether the application should be loading the main content via AJAX in the first place. Tim argues here that it should not, for this use case.

Re: Broken Links

#12
post #2

It's interesting how many upvotes this is getting in a very short time. However, I don't think the average Twitter user cares about performance and URL elegance, so I doubt Twitter will change anything.

I have seen performance issues and outright broken behavior with Twitter's hashbang ajax loading scheme. In that respect, regular users will care (they just won't necessarily know what is causing the issue).

Re: Broken Links

#13
post #9

I think people are missing a huge benefit of the hashbang syntax: readable and copy/paste-able URLs. Without them, it's impossible to have an ajax application with a decent URL scheme.

You don't need the hashbang for that. You never did. Hashbang only tells google "munge around this shit to get an actual page".

Re: Broken Links

#14
Yet another annoying pontificating article about hashbangs. Why can't people accept that there are more than one way of doing things on the web.

Just because you don't like using hashbangs does not mean no-one else can.

Sure, use of hashbangs might make seo of your site harder. Yes, it might make it harder for hackers who want to do curls of your site's pages. But maybe this is not your aim with your site.

Maybe you want to give your users a slicker experience by not loading whole new pages but instead grabs bits of new content.

The web is a place for experimentation and we as hackers should encourage such experimentation, rather than condemning it because it does not fit with how we think things should be done.

Re: Broken Links

#15

HTML5 "AJAX History", also known as History.pushState, can solve this problem. It allows a website to update its contents with AJAX, but change the URL to a real URL that will actually retrieve the proper resource direct from the server, while maintaining proper back-forward navigation. See http://dev.w3.org/html5/spec/Overview.html#dom-history-pushs... ; for spec details. It's in Safari, Chrome and Firefox. While Op…

This solves two problems: (1) the only visible/bookmarkable URLs are those without a #!; and (2) initial page loads can be fulfilled by a single request to the server. It doesn't solve the problem of URL discovery, but two out of three ain't bad.

Re: Broken Links

#16

Yet another annoying pontificating article about hashbangs. Why can't people accept that there are more than one way of doing things on the web. Just because you don't like using hashbangs does not mean no-one else can. Sure, use of hashbangs might make seo of your site harder. Yes, it might make it harder for hackers who want to do curls of your site's pages. But maybe this is not your aim with your site. Maybe you…

You can still avoid loading whole new pages. You simply attach Javascript events to your anchor tags and do whatever Ajax content trickery you want that way. The page content itself is maximally flexible and useful to all agents if the URLs inside of it are actual URLs.

Re: Broken Links

#17

Yet another annoying pontificating article about hashbangs. Why can't people accept that there are more than one way of doing things on the web. Just because you don't like using hashbangs does not mean no-one else can. Sure, use of hashbangs might make seo of your site harder. Yes, it might make it harder for hackers who want to do curls of your site's pages. But maybe this is not your aim with your site. Maybe you…

True, but the same non-reload could be accomplished with:

  
And wouldn't break spiders.

Re: Broken Links

#18
post #16

Yet another annoying pontificating article about hashbangs. Why can't people accept that there are more than one way of doing things on the web. Just because you don't like using hashbangs does not mean no-one else can. Sure, use of hashbangs might make seo of your site harder. Yes, it might make it harder for hackers who want to do curls of your site's pages. But maybe this is not your aim with your site. Maybe you…

You can still avoid loading whole new pages. You simply attach Javascript events to your anchor tags and do whatever Ajax content trickery you want that way. The page content itself is maximally flexible and useful to all agents if the URLs inside of it are actual URLs.

aka "Hijax": http://domscripting.com/blog/display/41

Re: Broken Links

#19

HTML5 "AJAX History", also known as History.pushState, can solve this problem. It allows a website to update its contents with AJAX, but change the URL to a real URL that will actually retrieve the proper resource direct from the server, while maintaining proper back-forward navigation. See http://dev.w3.org/html5/spec/Overview.html#dom-history-pushs... ; for spec details. It's in Safari, Chrome and Firefox. While Op…

Well, it "solves" it - you still have to download and parse a ton of Javascript before you even begin downloading the data...

Re: Broken Links

#20

HTML5 "AJAX History", also known as History.pushState, can solve this problem. It allows a website to update its contents with AJAX, but change the URL to a real URL that will actually retrieve the proper resource direct from the server, while maintaining proper back-forward navigation. See http://dev.w3.org/html5/spec/Overview.html#dom-history-pushs... ; for spec details. It's in Safari, Chrome and Firefox. While Op…

Is it ready for the mainstream?

Apart from not being supported in IE - the browsers that do support it still have quirks e.g. your code has to manually track scroll state.

Post reply on HN