In my opinion, tuning a Javascript laden website for speed is an exercise in futility. The Web's great difference is user-extensibility; practically anyone can throw together some HTML and make a website. It may be a MySpace page, but hey, it's something, and it contributes to the culture of the Internet. Speed, however, is not a feature of the HTML/Javascript/CSS world.
Were I to be developing a new AJAX-driven Web application I would focus first on simplicity. I feel that if you have so much AJAX
stuff going on that you need to resort to crazy tricks you have
already lost. Take the following, quoted from the review:
In the subsequent chapter, "Flushing the Document Early," Steve explores the approach of utilizing chunked encoding in order to begin rendering the Web page before its full contents have been downloaded to the browser.
While good advice, something like this should be implemented as a natural part of the specification, or not at all. This rings to me as an attempt to manhandle HTML/Javascript/CSS into a use case for which it is not intended.
I want to see a real protocol for webpages - something between Postscript (except less document-oriented; and yes I know about NeXT's work) and a windowing environment (except more constrained). Then, to preserve the ease of user-input, a simple HTML/XML-like layer. For 99% of the sites that are constructed directly by the user, original HTML with italics, colors, fonts, etc. is sufficient. For projects beyond the scope of Joe Facebook, a true system is needed that allows seperation of design and content. But all attempts thus far to do both, frankly, suck.