Demystifying web performance automation
15 Oct 2010
This past Wednesday, I had the great privilege of hanging out with the New York Web Performance Meetup crowd, where I led a session on web performance automation. If you’re interested, here’s the slideshow deck:
Summary
I wanted to identify what kinds of performance best practices are manually do-able versus which practices lend themselves better to automation. After going over performance-related terminology and concepts — such as waterfall charts, first vs repeat views, and concurrency — we jumped into a hands-on case study: optimizing the Velocity website. (Full disclosure: O’Reilly recently became a Strangeloop customer, though we’re not yet implemented.)
Delivery vs transformation: The history of performance automation
It’s important to note how performance optimization has changed over the years, from a delivery-focused approach to a transformation-based approach:
Delivery = “I will deliver what the server gives me as efficiently as possible to the browser.”
Transformation = “I will transform what the server gives me to optimize it for the user’s browser.”
Methodology
This presentation is based on a similar session that I ran with Strangeloop’s VP Product, Hooman Beheshti, at the Velocity conference. Much like that session, I artificially “de-optimized” the Velocity site, then implemented a series of best practices, one by one, showing the speed improvements that accompanied each one.
We reviewed the major performance pains of the unoptimized site:
- Too many connections
- Too many bytes
- Concurrency
- Bad caching for repeat views
- No CDN
- Too many roundtrips
- And some others
Then we implemented a handful of performance best practices (some from Yahoo and Google, and some from Strangeloop), starting with the low-hanging fruit:
- Keep-alives
- Compression
- Client-side caching
- Use a CDN
- Reduce roundtrips
- Reduce payload further
- Increase concurrency
Throughout this exercise, we talked about the pros and cons of each of these best practices, including the work involved in implementing and maintaining them.
My hope in doing this session was to demystify the automation process, and show how it can complement hand-crafted optimization, making it another useful tool in the developers’ arsenal.
Many thanks to my hosts, Sergey Chernyshev and Alla Gringaus, who did an incredible job of coordinating the entire event, bringing together a great group of people and making me feel very welcome.

Twitted by Gomez_Inc
Oct 15, 2010 @ 11:32:54
[...] This post was Twitted by Gomez_Inc [...]
Oct 15, 2010 @ 12:09:14
Joshua, great slides! A really thorough introduction to performance tuning. Wish I had been there in person.
Was curious what you covered during the TCP optimization slides. Could you give a couple sentence summary?
Twitted by vincentflanders
Oct 16, 2010 @ 20:31:06
[...] This post was Twitted by vincentflanders [...]
A (somewhat) brief history of the performance landscape — Web Performance Today
Oct 20, 2010 @ 15:14:27
[...] ← Demystifying web performance automation [...]
A (somewhat) brief history of the performance landscape | Wang Jun's Blog
Oct 21, 2010 @ 02:55:32
[...] like to enlist your help. As I’ve mentioned, last week I led a session onweb performance automation for the members of the NY Web Performance Meetup group. For the session, I created a set of slides [...]
Almost half of the top 1000 retail sites don’t follow two easy performance best practices. Does yours? — Web Performance Today
Oct 22, 2010 @ 11:38:10
[...] can have a huge impact on page speed. In a session where I first de-optimized, then re-optimized, the Velocity website, the first fixes I implemented [...]
Nov 04, 2010 @ 09:54:58
I made a “5 slider” with the basic stuff that every webdev should work with.
It does not cover CDN, too much costs for now in my opinion.
Check it out at http://www.slideshare.net/CookielessDomain/frontend-performance-optimizing
VIDEO: Demystifying web performance automation — Web Performance Today
Nov 19, 2010 @ 15:47:43
[...] of my performance automation session at last month’s Web Performance Meetup in New [...]
Case study: Faster pages lead to 6% revenue increase for Artbeads.com — Web Performance Today
May 26, 2011 @ 11:10:53
[...] Demystifying web performance automation [...]
From techs to execs: Putting performance in business terms — Web Performance Today
May 27, 2011 @ 08:32:55
[...] Demystifying web performance automation [...]
Preview of my mobile keynote slides for Velocity Europe
Nov 16, 2011 @ 05:38:46
[...] Demystifying web performance automation [...]