Web Design and Performance
I've been getting back into web design lately (after a 12 year hiatus to climb mountains, start a business, and learn real software engineering). The most important aspect of design, I've learned, is to make decisions for the users of my software so they don't have to. I was happy to discover this, because my pixel pushing skills need a lot of work.
But there is a component of web design which is unique to the medium. In web design, perceived performance is a huge part of the design decisions we make. If we ignore performance in product design, the product sucks. Even more so on the web.
That may sound like premature optimization , but I think it is our responsibility as designers and developers to think about how our application is actually going to work. How is it going to deliver a great user experience? Often the decisions which have a critical impact on that experience are made early on in product development.
Enter Single Page Websites
Despite the large number of single page apps out there which are a pile of shite, good web products are going to be built with this technique and users are going to want it. Not that they want a single page website necessarily, but they will want the experience it provides, regardless of how they get it. You don't want to be left in the corner sniffing glue while everyone else is building insanely great stuff.
On the other hand, it's really easy to fall down a rabbit hole while putting together a single page web application. The technology sandwich is a morass. I've been busy making these kinds of design decisions regarding the v1 of www.corkboard.mobi, but I'm not sure I've really decided on anything yet.
Getting Started With Single Page Websites
Anyway, I don't want to be alone. So here is a list of resources that should get you thinking about how you should be delivering your website and will hopefully pull you down the rabbit hole with me. Let me know what happens and we can commiserate over a beer sometime.
And then, of course, is the allure of the Application Cache. Don't bother reading the offline web application standard. It will make your brain bleed. Instead, read Application Cache is a Douchebag by @jaffathecake. Offline Web Applications (same thing as Application Cache) has had pretty good browser support , except in Internet Explorer. Shocker.
Single page web applications also have serious SEO implications, not to mention the burden of being a good "web citizen". Google put together a guide for crawling Ajax sites which addresses some of these concerns. And, yes, it's a lot of work.
Getting back to performance, @estellevw has put up a pretty radical proposal for extreme mobile web performance. Put that in your brain and chew on it for a while. I had to take a lunch break half way through.
So go forth and pile on the single page web application awesome sauce. But, let's not ruin The Web while we're at it. I'll update this post with the results from my project sometime in the way future when I climb out of this rabbit hole and actually ship the damn thing.