Web Performance Calendar

The speed geek's favorite time of year
2015 Edition

Ben Vinegar photo

Ben Vinegar is a Front-end Engineer at Sentry, a multi-platform crash reporting tool. He formerly spent 4 years working on embedded comments at Disqus, and is the co-author of Third-party JavaScript.

Over the past year, I’ve given a talk at a few conferences called “Re-evaluating Performance Best Practices”. In it, I basically share some interesting research results made by people far more smarter than me. Topics like: why domain sharding isn’t as important anymore, why script injected “async scripts” are bad now, etc.

The goal of the talk was to highlight how some of the web performance best practices we “grew up” with, have now become stale, and in some cases, anti-patterns.

Both domain sharding and dynamic script insertion were first covered in Steve Souders’ Even Faster Websites, a book that was released in 2009 as a follow up to 2007’s High Performance Websites. I also covered dynamic script insertion in my book, Third-party JavaScript from 2013. Many other dated performance “tips” are published in countless books, blog posts, Stackoverflow answers, and conference talk videos. And even more of these will become deprecated as HTTP/2 adoption grows.

What developers want

But let’s go back to this talk for a moment. Or rather, the reaction to it.

Which is: most people don’t actually care about domain sharding, or CSSOM, or caching loop arguments. Nor do they care about 90% of the material published on the PerfPlanet calendar, or all the next-level cool performance stuff published on Ilya’s blog.

What do they want to know? Web performance basics.

We are in an era where more new people are learning programming and web development than ever before. And the canonical material on web performance is now 7-9 years old – an eternity in our industry.

And this material is still selling. High Performance Websites and Even Faster Websites are currently #3 and #5 on Amazon filed under “Computer Performance Optimization”. Think about that for a minute. That’s out of all books on programming optimization, e.g. books on optimizing MySQL, Ruby, x86 assembly, etc. And I can’t think of any other content that goes deprecated quicker.

And listen, Souders is a brilliant, terrific guy – the bonafide godfather of web performance. We’ve all been influenced by his research and writing in some way. And it’s not like he went away. He is still killing it, providing the world with new findings every year, frequently correcting his earlier research whenever it becomes obsolete.

The problem is that this updated material isn’t reaching beginners. A beginner shouldn’t have to read a book, then track down all the places since 2007 that that content got updated. Not only do beginners not know where to look, they don’t even know that they have to look.

My proposal

My goal with this post is to set a fire under the community to create a new, evolving, open source introductory web performance book. A book that isn’t just published on the web, but is also published, in print, and available on Amazon and other booksellers. A book to go head to head with High Performance Websites and Even Faster Websites. A book whose open source revisions are republished, in print, every few years as 2nd, 3rd, 4th, and Nth editions.

And by open source book, I don’t mean an “open source book”. You know, the kind that sucks. I mean a great, well-written, well-edited book, championed by a small number of authors (or just one), that happens also to be open source. My best model is the You Don’t Know JS series of books, by Kyle Simpson. Something that really guides readers on some of the best, most effective ways to improve the performance of their website, however basic those techniques may be.

Hasn’t this been done before?

Our beloved host Stoyan attempted this himself with The Book of Speed, an unfinished to-be-self-published book whose source is available on GitHub. But that project has been dead for a few years, and the content is already somewhat dated – for example, there’s quite a bit of content on image sprites.

Stoyan has offered to open up The Book of Speed for contributors again, and that could be a good place to start, but it might be a better idea to start fresh and tackle HTTP/2 from the beginning.

What about open source lists?

Awesome WPO is a curated list of web performance articles, blogs, tools, etc. And it’s pretty good, with a lot of material to go through. The problem is that it’s not geared towards beginners; it’s just a wall of links without any handholding. I’m talking about a book that guides readers from the very beginning.

Who’s going to write this?

Unfortunately, this is not the part of the post where I take up the mantle of responsibility and announce that I’ve begun chipping away at a new book. I’ve already done the bookwriting thing once, and while it was a rewarding and valuable experience, my work on Sentry keeps me sufficiently entertained and occupied.

Rather, my purpose with this blog post is to really inspire someone to believe that this is an important problem, that there are more and more people that want to read such a book, and that I think it could be a great resource for the community for ages. Oh, and maybe you can even earn a solid buck off of the thing.

If you want to be this person (or persons), I’d be glad to give you a hand. As I’m sure would many of my PerfPlanet colleagues. Let’s get in touch.