The front end engineer for a website holds in their hands a tremendous amount of power with regard to end users' experience of your site. They are the last line of defense and the decisions they make directly shape the experience that the user takes with them about your site, and ultimately, your product.
The goal of High Performance Web Sites is to make that experience a positive one, ;another goal is to change your approach to performance optimization. Steve Souders is the Chief Performance Yahoo!, where he specializes in making websites go faster.
High Performance Web Sites covers 146 pages in 15 chapters and two prependixes; these would be appendixes if they were at the back, but instead they come before the chapters.
Prependix A, "The Importance of Frontend Performance" describes the fact that 80 percent of the time of downloading a page is spent on the components on the page. Here is described tracking web performance and why focusing on the frontend is so important. Prependix B, "HTTP Overview" explains the parts of HTTP that are relevant to performance, as well as giving a short description of how HTTP works.
Chapter 1, "Make fewer HTTP Requests," shows that because every time the user requests a HTML document, they are requesting the components as well; one thing that can be done is to make fewer requests. Chapter 2, "Use a Content Delivery Network," explains that if you want to improve the time for the components to load, it is better to disperse the component web servers first.
Chapter 3, "Add an Expires Header," shows that by adding a future "expires" header, you can make those slow loading components cacheable. This will avoid unnecessary HTTP requests on subsequent page views. Chapter 4, "Gzip Components," explores the fact that by reducing the size of a page request, you can reduce the load time of the request. By using gzip encoding to compress the HTTP requests, you reduce the page weight, and hence, reduce the time factor.
Chapter 11, "Avoid Redirects," examines the different kinds of redirects there are, and, how by reducing and/or removing them, you can speed up your page load times. Chapter 12, "Remove Duplicate Scripts," can increase load time. There are a number of reasons, duplication of scripts can happen. These need to be eliminated because duplication of scripts will slow down the load times.
Chapter 13, "Configure ETags," explains that the ETag (entity tags) headers thwart caching when a website is hosted on more than one server. In this chapter ETags are explained as is how they can be configured. Chapter 14, "Make Ajax Cacheable," shows that even though the performance rules in this book pertain to Web 2.0 as well, that this particular rule is really targeted at this new platform. Finally, chapter 15, "Deconstructing 10 Top Sites" examines the top 10 U.S. websites with regard to the rules and tool that are described in High Performance Web Sites.
I found High Performance Web Sites to be very enlightening. Because the author is a performance expert at a large scale company that has to be efficient, makes it all the more beneficial. Each of the 14 techniques is explained in easy to understand terms and they are really basic techniques that any website can benefit from.
High Performance Web Sites is an excellent guide for web developers who are looking to write optimized HTML. It is a useful book for every web developer whether you are running a small or large-scale site. I highly recommend this book for anyone involved in web development.