Backups are fantastic. But you don't always know that your file is corrupted. Sometimes backups are overwritten before you know that a file is corrupt. When this happens, you want to have some mechanism to recover.
When (not if) every mechanism to recover fails, it is useful if you can repair it by hand. Sometimes you can repair binary data by hand (when fsck fails you can just poke a few bits in the right place on/dev/hda and do the work), but when binary formats get hairy it becomes difficult...
The lesson that I learnt is that I avoid binary formats where possible, unless I can regenerate the binary data from some human readable source. Of course, you cannot always avoid them (encrypted and compressed files are prime examples).
When (not if) every mechanism to recover fails, it is useful if you can repair it by hand. Sometimes you can repair binary data by hand (when fsck fails you can just poke a few bits in the right place on /dev/hda and do the work), but when binary formats get hairy it becomes difficult...
The lesson that I learnt is that I avoid binary formats where possible, unless I can regenerate the binary data from some human readable source. Of course, you cannot always avoid them (encrypted and compressed files are prime examples).