Book review: Adaptive Web Design
I’ve known Aaron Gustafson for about five years. We met at a conference initially and stayed in touch throughout the years despite living on opposite coasts and rarely seeing each other in person. We have a lot in common, such as the belief in front-end engineering as an important discipline and the value of progressive enhancement. It’s the latter that Aaron focuses on in his book, Adaptive Web Design.
The book is an easy read at 144 pages and is the gentlest of introductions to the core concepts of progressive enhancement. Aaron takes you carefully from the basics of HTML and semantic markup all the way through applying JavaScript and ARIA. It truly is amazing how much information he managed to cram into a small book without making me feel overwhelmed at the end.
It begins with a description of progressive enhancement. The first chapter is aptly named, “Think of the user, not the browser”. If you learn nothing else from this book, it should be this very simple lesson. Most of the time people forget that web applications are being made for users and not for browsers. The tips and techniques are all designed to give users the best experience possible. That is exactly the heart of progressive enhancement and a great way to start the book.
The book takes you through the design decisions Aaron made when designing his Retreats 4 Geeks website. Having a case study that is carried throughout the book really helps you to get a feel for what he was trying to accomplish. There is discussion about content and responsive design and accessibility and just about everything in between. The feeling I got at the end was that the design decisions were fairly obvious and I would’ve done the same thing. In reality, that’s a tribute to Aaron’s writing than it is about my understanding of the topic. The decisions seem easy and obvious because of how the material is presented not because I have any idea what I’m doing. That’s what makes this book so useful.
Aaron makes the topic of progressive enhancement approachable to anyone regardless of their level of experience. If you’ve never done web design or don’t know what progressive enhancement is, this book is a perfect introduction. If you’re an experienced front-end engineer, you may be tempted to breeze through the book because the topics seem very general. But don’t. It’s the extra insights that Aaron injects into the description that makes the book valuable.
In the end, about the only complaint that I have about the book is that it’s too short. I was left wanting more, a lot more. And that’s not necessarily a bad thing.