When progressive enhancement is needed in real life

It can happen to anyone

Published on

Explaining progressive enhancement is one thing, but really delivering the message is another. In this article I’ll explain why I think progressive enhancement is necessary.

During my time at Mirabeau, I’ve noticed we don’t always deliver a fully progressively enhanced website.

I wondered why, and came up with some reasons. Usually it’s because some people don’t understand progressive enhancement, don’t want to think about it or are ignorant. Those people can be clients, but also colleagues, or developers at other companies.

This got me thinking. Maybe explaining the separation of content, styling and behaviour is too abstract for some – maybe we need a different explanation of the technique.

What is it really about?

A very simple concept: every individual should be able to access the content of a website under all circumstances.

We do that by keeping all content accessible without relying on Cascading Style Sheets or JavaScript. They fix styling and behaviour. If we don’t develop websites in a progressive way, the website can break. This can vary from a simple link that does not work, to not showing anything at all. When do problems arise?

Most of the times, JavaScript not being available is the offender. But, when does this happen? Besides deliberately switching JavaScript off in a browser, the connection can be lost or a time out occur while loading the page. Clients and fellow colleagues usually say that this doesn’t happen often. But I can think of some reasons…

A sketch of a multi-story building with five apartments, showing in every home a different wifi access point
Too many Wi‑Fi networks around
A sketch of a person walking into an elevator whilst using their phone
Walking into an elevator
A sketch of a snail, showing the text 'Free wifi' on its shell
Free Wi‑Fi, which is usually Lie‑Fi
A sketch of a phone, with on its display showing that the user has used all of their data plan
Throttled connection when reaching datalimit
A sketch of a road entering a mountain. The tunnel entrence has a sign showing there’s no reception inside
Travelling through tunnels

Those are a few of the top reasons of why connections fail. One of them is Lie‑Fi, a term I’ve heard Jake Archibald talk about during the Fronteers conference:

“When you’re on Lie‑Fi, it is going to take minutes. And then it’s going to fail. […] Lie-Fi is like offline but it trolls you, by pretending it’s online.” Jake Archibald

This and the reasons above are just some of the things that actually happen to people everyday. Missing parts of a page or worse, waiting for a blank page to load, can be very frustrating. More than once I’ve heard people swearing at an app or website for being slow when they entered an elevator. Such reactions can harm a brand.

Make people aware

Every once in a while, I get in a discussion with a colleague or client. Sometimes they say focus on progressive enhancement and performance isn’t necessary, because everyone has a good internet connection. When you come across this, show them the situations I’ve summed up above. Slower speeds and spotty connections happen to all of us. Let’s make the web great again, by being considerate.