cd ~/blog && cat when-the-lights-go-out.md
When the lights go out
Products that keep working, even halfway
On 28 April 2025, at 12:33, the Iberian Peninsula lost power. Within seconds, millions of people in Spain and Portugal discovered how many everyday things depended on something they took for granted.
Traffic lights went dark, trains stopped and, as the antennas’ backup batteries ran out, phones gradually lost coverage. By the next morning, power was almost fully restored.
What stopped working
Paying was one of the first problems. According to an analysis by CaixaBank Research, from 12:30 onwards only around 10% of shops recorded sales on their card terminals, and in-person card spending fell by 39% that day. Those carrying cash could buy things. Those who weren’t were left waiting.
The lesson isn’t that cards are bad. It’s that almost everything we use depends on a chain of pieces: electricity, connectivity, servers, third-party services. One of them failing is enough for the rest to stop working.
Everything fails eventually
Every system will fail at some point. The network will go down, a provider will have an outage or an external service will stop responding. The useful question isn’t whether it will happen, but what your product does when it does.
There are two possible answers. The first is to shut down completely: a blank screen, a generic error, the user’s work lost. The second is to keep working halfway: do what can still be done and say clearly what can’t.
This second way of failing is called graceful degradation, and it’s the difference between a bad moment and a disaster.
Working halfway, on purpose
Graceful degradation doesn’t happen by chance. It’s designed. Here are a few examples of what we can apply to almost any digital product:
Save what the user is doing locally. A notes app that lets you keep writing offline and syncs when the connection returns. A long form that isn’t wiped out if the network drops as you submit it.
Separate the essential from the extras. If the recommendations service fails, the shop keeps selling. If the help chat fails, the website still shows the important information.
Say it clearly. “Offline: your changes will be saved when you reconnect” is reassuring. A cryptic error, or worse, a button that does nothing, breeds distrust.
Recover on its own. When the connection comes back, the system should pick up whatever was pending without the user having to repeat anything.
A simple exercise
Go through your product piece by piece and ask of each one: what happens if this goes down? The internet. The payment provider. The email service. The database. That external service you added two years ago that nobody remembers anymore.
For every answer along the lines of “everything stops working”, it’s worth thinking of a more modest alternative: a queue that waits, a clear message, a feature that switches itself off without dragging the others down.
The same exercise works at home. A bit of cash, important phone numbers written on paper and key documents downloaded to your phone are a personal form of graceful degradation.
Preparing for the unlikely
A blackout across the whole peninsula is rare. A dropped connection, a provider outage or a service that doesn’t respond happen any given week.
The products that age best aren’t the ones that never fail, but the ones that know how to fail well. When the lights go out, you can tell who thought about it beforehand.