Click HERE to watch video.
The late comedian Mitch Hedberg joked about how an escalator cannot break; it simply becomes stairs. In engineering, this evolution is called graceful degradation.
Web developers constantly strive to create better, faster, and more accessible websites. Graceful degradation is essential here because it allows them to build websites that look good and function well even if some features are not supported or fail to load. The idea is to ensure the site will work on any device and browser, regardless of the devices’ limitations.
Much modern design has taken the opposite approach. Although user interfaces are designed to be deceptively simple, they usually hide highly complex systems. And no matter how simple these things might seem when you use them, the complexity concealed behind them remains inherently fragile. Ultimately, your technology’s effectiveness depends on how elegantly it can handle failures.
Implementing graceful degradation requires thoughtful planning. Developers first identify the essential features and content for the website to function correctly. They then prioritize these features and ensure they work on all devices and browsers. Next, developers identify the advanced features and content that enhance the user experience and work on making them accessible on as many devices and browsers as possible. Finally, they recognize the non-essential features and content that can be removed or hidden if they are not supported or fail to load.
There are many examples of graceful degradation in action, such as responsive design that allows websites to adapt to different screen sizes and devices, alternative content displayed when primary content is unavailable, and default fonts used when the primary font is unavailable.
But what if you’re not a web developer? Why does graceful degradation matter to you? Here are a few examples of graceful degradation in daily life:
- Power grids: The electrical power grid is designed to handle power failures and maintain some level of power supply even when some generators or transmission lines go offline.
- Elevators: In case of an elevator failure, some elevators are designed to stop at the nearest floor and open the doors, allowing passengers to exit safely.
- Airplanes: In the event of an engine failure, planes are designed to fly and land safely using only one engine.
Of course, graceful degradation also applies to our personal lives. Here are examples of where our systems can continue to function even when some components fail or become unavailable:
- Finances: A well-planned budget can help us handle unexpected expenses or income variations. If we lose our job or face a financial setback, we may be able to pay our bills and cover our basic needs.
- Relationships: A healthy relationship can endure challenges and disagreements. For instance, partners can communicate and support each other even if they have different opinions or face difficult times.
- Travel: A flexible travel plan can help us adjust to unexpected changes or delays. For example, we can still enjoy a trip even if we miss a flight or encounter bad weather.
The key to handling unexpected challenges and maintaining a certain level of performance when things don’t go as planned is to be prepared, adaptable, and resilient. This requires forethought, and the ability to prioritize our functioning features into three piles:
Do this regularly – and thoughtfully – and you can also use graceful degradation to turn your escalators into stairways.