Why Can't All Software Work Like This?

Why can't all software work like this?

As users, we tend to really mess up from time to time. Whether we forget to save our work, send an email without an attachment, or have a web form clear out all of the info you just spent 7 minutes filling out because you didn't type in a backup telephone number. Wouldn't it be nice if software cleaned up after the messes we create?

As programmers, we tend to only code for the "happy path" and convinently forget about all of the things that could (and most defnitely will) go wrong.

What's something you could do on your current project to help clean up a user's mess?

To actually experience the feeling of this occurring in software, you can try out the actual game.

Sources: xkcd and Heaven the game.

Creative Commons License

What do you think?