Modern day gadgets, devices and equipment mostly suck and have bad failure modes. Let's illustrate this with some examples:
I have a digital TV receiver, Handan CV-3300 CNX. The picture and sound works. Subtitles also work most of the time. A few times a week the device turns on but there is just a black, blank screen on the TV and no sound. A power-cycle makes it ok again.
Like all digital TV receivers, it includes a feature called EPG or electronic program guide. This is supposed to be a display of past, current and future programming of all TV channels. When I press the EPG button on my remote, I get this information for some channels but the rows for other channels are empty. Sometimes it helps if the receiver is on for a while. Sometimes those rows stay empty for hours.
This is probably a bug in the receiver's software and will go away when the manufacturer makes a firmware upgrade available. I have had the box from 2005 and it has never found an upgrade. I have also navigated the device's menus and found the command to search for upgrades. Nothing there either. There are no upgrades on the Internet either. In fact, the manufacturer's web site has no record of this device.
My friend has a stereo set with a turntable. When we were listening to his LP records, we discovered the turntable was broken: when the arm reached the end of the record, it did not automatically lift up and return itself to the rest next to the revolving plate. The mechanism is broken. But one can push a lever to lift the arm and then push the arm to the resting position with a fingertip.
This got me thinking: The turntable is broken, yes, but not badly. It still plays the records and the small problem it has is easily amended with just a little flick of a finger. And even if the turntable develops more serious issues, it will probably still be able to play the records but with a loss in sound quality. The worse the problem, the greater the impact on sound quality. But the problem will have to be very serious indeed to completely prevent enjoying recorded music. To make it short: it fails gracefully.
Another example: Last week I got a coffee grinder. Not an electric monster but an old-fashioned one with a crank on the top. I have never used a coffee grinder. In fact, I have only seen them in films. The grinder came with a small sheet of paper on which were some hard-to-understand instructions. I could not figure them out. But the device was so simple and made from just a couple of pieces of wood and metal held together with screws, so it was easy to take it apart and figure out how it works, which way to turn the crank and how to adjust the coarseness of the grind.
It is a beautiful piece of equipment that is simple, does only one thing, does it well and is easy to understand, operate and repair. It also fails gracefully. (The device did not fail at all, the manual did.) And let me tell you: If you like coffee, you should grind it yourself. There is a remarkable difference in the taste. I did not believe it until I tried.
I am beginning to like simple things which I can understand and fix. Maybe I am getting old. Maybe it is because all day long at work I have to build and fix complex things that can and will fail in a lot of different ways. And all of those failures are bad, or very bad.
Is it even possible to build software that fails gracefully? I don't think I have ever seen such a thing...