2016年8月24日 星期三

Seth's Blog : Graceful degradation

Graceful degradation

Stuff's going to break.

Then what?

Air conditioners, for example, gradually lose their charge. When they do, icing can occur. When that happens, the drain pans overflow and water seeps away.

The smart builder, then, anticipates all this and has the pan connected to some sort of drain, as opposed to having it rot the beams or collapse a ceiling.

Most failures aren't shocking surprises. The law of large numbers is too strong for that. Instead, they are predictable events that smart designers plan for, instead of wishing them away as rare unpredictable accidents.

Lastpass is a popular password manager. (You should have a password manager. And tenants' insurance. And you should backup your data, too. You'll thank me one day for the reminder.)

It's inevitable that people will forget their master password. It's inevitable that a network glitch or other unforeseen event will cause the software to forget. Sooner or later. Then what?

Blaming a significant hassle and frustrating data loss on an unlikely accident is bad design. Instead, Lastpass built in a 'revert' feature will allows them to roll back a password without ever compromising security.

When the glitch happens, does your design fail?

The most hackneyed line in design is, "first, do no harm." A more useful adage is, "when weird stuff happens, make sure it doesn't cause harm you didn't expect or plan for."

For work where the outcome matters, consider the immortal words of the Smith System, "Always leave yourself an out."