Jason Garber has penned a series of posts on progressive enhancement. Here’s a quick rundown on what they cover and why you should read them.
Designing Experience Layers
In his first post, Jason picks up on a drumbeat I’ve been hammering on for years: we need to consider experience a continuum, not a monolithic thing.
In other words, get to know fault tolerance as it applies to web design and don’t make any assumptions about how your content will be rendered/experienced.
His conclusion is an important one:
Approaching design through the lens of experience layers is the design strategy for the Web; one that’s better for users and designers alike.
In Defense of Progressive Enhancement
In his follow-up, Jason defends his position against a lengthy comment from his supervisor at Viget. Jason’s responses are dead on:
- When large sites put their eggs in the JS basket, they set a bad example for other developers.
His summation is perfect:
The Practical Case for Progressive Enhancement
Continuing the thread, Jason assembles more reasons to adopt the progressive enhancement philosophy.
- The “Moral” Argument for Progressive Enhancement - Personally, I think Jason gives in too easily on this. Access to content is a social justice issue and that is nothing to gloss over. In some cases it is also a legal requirement.
- The “Cost” of Progressive Enhancement - Jason does a good job addressing the costs (monetarily and temporally) associated with adopting progressive enhancement in terms of building, testing, and supporting websites. As he says, it is more costly to “bolt on” accessibility and progressive enhancement at the end of a project. He is also correct in his assertion that progressively-enhanced websites actually require less testing. And when you draw a stark line between support and optimization, support for additional browsers and devices also becomes far less costly. What Jason was missing was numbers to back all this up. I have those numbers. Enjoy.
- Practicality - Finally, Jason calls out games and their ilk as edge cases. He correctly asserts that the vast majority of properties on the Web could easily be built following progressive enhancement. Sure, you might not build a Photoshop clone using progressive enhancement, but how many of you are building an image editor for the Web? I didn’t think so.
In all, this was a nice little series. Great work Jason! If you want to dig into this progressive enhancement stuff a bit more, you can read the entirety of my award-winning book Adaptive Web Design: Crafting Rich Experiences with Progressive Enhancement online, for free.