I came across this article this morning via Hacker News. In a nutshell, the authors are using a custom framework for their new site consisting of empty, static HTML templates which are then populated with data on the client side using JavaScript to fetch JSON from the server.

This is a really cool idea, not without caveats and problems that still need to be solved, but I like the core idea. Now that we’re all Web 2.0 with dynamic page updates via AJAX/JavaScript, managing the initial page render of template plus data on the server side PLUS handling the JavaScript/JSON requests requires careful planning and architecture to keep everything DRY and maintainable. Even with some of the best constructs out there (I favor “respond_to” from Rails, but I’m sure there are others), it still just feels dirty to me.

Of course the biggest question is what if the client doesn’t have JavaScript enabled, which most notably includes search engine crawlers. And I don’t have an answer for that, but as we continue to move forward and see JavaScript performance improve and become such an integral part of the modern browser I wouldn’t be surprised if this problem doesn’t solve itself. It seems to be one of the fundamental questions facing the future of the web, how do move forward on a platform that was initially designed to be document centric but which has given growth to dynamic applications? We have a lot of incremental solutions, and I think we’ll continue to see these, but at some point will we get an evolutionary step forward?

I can feel this post quickly tumbling down the rabbit hole, so I’ll stop there…