Graceful degradation doesn't just mean "works without JavaScript".
This demo doesn't let you link to (or bookmark) a page or open questions in new tabs. For an app like Gmail that probably doesn't matter, but for something like this I'd say it's pretty crucial functionality to be missing.
Progressive enhancement where you add JS to improve the experience is a much better approach. That way you get all the basic functionality for free instead of trying to retrofit it onto the ajaxy app.
Now that you can manipulate the address bar with pushState [1] you can even make these enhancements completely transparent.
This demo doesn't let you link to (or bookmark) a page or open questions in new tabs. For an app like Gmail that probably doesn't matter, but for something like this I'd say it's pretty crucial functionality to be missing.
Progressive enhancement where you add JS to improve the experience is a much better approach. That way you get all the basic functionality for free instead of trying to retrofit it onto the ajaxy app.
Now that you can manipulate the address bar with pushState [1] you can even make these enhancements completely transparent.
[1] https://developer.mozilla.org/en/DOM/Manipulating_the_browse...