<<O>>  Difference Topic Highperformancewebsite (r1.2 - 11 Oct 2007 - LeeMcKusick)

META TOPICPARENT LinuxBookReviews
Changed:
<
<

Review of High Performance Web Sites Essential Knowledge for Frontend Engineers by Steve Souders with Foreword by Nate Koechley. c. 2007, published by O'Reilly

>
>
Review of High Performance Web Sites Essential Knowledge for Frontend Engineers by Steve Souders with Foreword by Nate Koechley. c. 2007, published by O'Reilly, price $29.99.

Reviewed by LeeMcKusick

 <<O>>  Difference Topic Highperformancewebsite (r1.1 - 11 Oct 2007 - LeeMcKusick)
Line: 1 to 1
Added:
>
>
META TOPICPARENT LinuxBookReviews

Review of High Performance Web Sites Essential Knowledge for Frontend Engineers by Steve Souders with Foreword by Nate Koechley. c. 2007, published by O'Reilly

Reviewed by LeeMcKusick

High Performance Web Sites presents 14 speed-up rules about how to organize the web page your web site serves to visiting browsers. This book devotes a whole chapter to each of the speed-up rules. A 15th chapter looks at a page load example for ten top US web sites.

The title says this book is “...for Frontend Engineers”. Alternately, this book is for the person who is involved with what your website server does when it responds to a browser inquiry. The work you get involved in with this book is tuning the exchange that goes between your website and servers and a user visiting via a browser.

The author of the book, Steve Souders works for yahoo.com as the “Chief Performance”. He describes the path he followed in developing his website performance refinements. Initially he focused on speeding up websites by improving sql queries and page designs. Those kind of changes took weeks and months and involved many people. He refocused his attention to the fine points of what happens when a page loads.

He determined:

“80-90% [of the end user response time] is spent downloading all the components in the page.”

This is a finding that I recognize from my web experience. Very simple HTML pages like google.com and craigslist.org load fast. Elaborate pages like youtube.com load slowly and get reformatted at least once as they load.

This book is quite brief at 146 pages. The main emphasis within each chapter is teasing out aspects of how each of the components like the stylesheet, the javascript, the expires timestamp and the redirect statements can be tweaked and tuned to load faster.

The 14th chapter and rule titled “Make Ajax Cacheable” was very generous in defining what precisely is Web 2.0, and how dynamic HTML and AJAX fit together to make this ingenious technology. It turns out that the speedup strategy for Ajax is to review the Ajax code for it's compliance with guides given in 6 earlier rules. The author then shows two examples of examining Ajax code and scouting out the performance problem areas.

On early scanning of the book I couldn't find a description of the author's performance measuring tools. In Chapter 15, the author names four performance measuring tools he uses. Unfortunately he does not give instructions to the reader about how to set up the speed test environment that he used to develop his speed engineering rules.

It turns out Mr. Souter or his Yahoo performance study group has published an open source website performance tool. One of the tools he uses is Yslow which is a plugin to the Firebug tool that in turn is a plugin to the Firefox web browser.

http://developer.yahoo.com/yslow/

To track the http packet exchanges, he says he uses IBM Page Detailer. (Several years ago I used tcpdump piped through grep. The resulting data then needed pocket calculator analysis to find the time intervals of the exchange processes.)

The author used a commercial web monitoring service to gather page load time data. I thought that was a neat solution to his problem; because he works for Yahoo, his own page load experience is probably skewed because yahoo is close and aggressively optimized and other websites are distant and much less likely to load fast.

This book would go up on my bookshelf as the new internet documentation for a very specific specialist job. This is a working guide for speeding up a production business website. Like other recent books, it concretizes many years of experience. I would shelve this book beside: Deliver First Class Web Sites 101 Essential Checklists, by Shirley Kaiser.

The book is subtitled “for frontend engineers.”. It seems to me a better subtitle would be “written by a frontend engineer”. High Performance Web Sites is an empirical guide to making web pages render faster in the contemporary (October 2007) internet software environment. There is an abundance of case descriptions and explanations of how the protocols and actual software work. The writing reflects Mr. Souder's mastery of the software environments.

-- LeeMcKusick - 11 Oct 2007

Revision r1.1 - 11 Oct 2007 - 08:17 - LeeMcKusick
Revision r1.2 - 11 Oct 2007 - 13:32 - LeeMcKusick