Whoa, Back it Up

Computers make everything easier. They especially make it easy to work for days on something and then make it disappear in a poof.

Backups are always hard. What do you backup? Who will do the backup? When do you backup? Where does it backup to? How do you restore the backup? Will the restored data be good?

If you are anything like me, your total backup procedures are pretty primitive. Every so often you will copy most of the stuff you want to backup off to an external drive, to CD/DVD, or maybe you'll archive it online somewhere. That's a start, but the absolute killer to me is when I work on a document or some code for a week, or even just a particualarly productive day, and that work gets lost. These near term backups are what inspired this post.

The problem with backing up that hard day's work is that sometimes you simply can't. You encounter stupid things like eMbedded Visual C++ holding on to files in an open project and not letting them be copied. You try to be smart and use a Save As... in Word, but that switches your active work to be on the Save As file, not your original one. Usually that's not what I want and then I have to go through extra steps to open up the original again. Even if I can make a copy of the file, I still have to go find it in File Explorer or Finder and copy it off to some other location which I hope I remember.

What I want is a very simple, Backup command in the File menu of every program that saves data. The idea of the Backup command is that you create a default location that will receive in-progress backups of your file. This is all really a hack until we have decent journaling file-systems in place that would do this sort of thing for us, but I'll take what I can get. Once you've worked a few hours on your latest PowerPoint, you can select File, Backup and a copy of your file will get saved off to your predetermined Backup location (you did put this on another disk, in case one fails, right?). Sure, we can include a dialog to change your Backup location if you'd like, but most times you'll just select 'Ok' on the default. The active document WILL NOT change. The software WILL BE smart enough to make a copy without closing the app. The backup will even get saved with metadata such as which file it is a copy of, the time elapsed since the last backup, and other fun stuff like that.

I think I might try to make such a beast using Automator under OS X. Hopefully I'll be able to make it smart enough to figure out the active app and the file/project it has open. I wonder if I'll encounter the same "I'm using that file, you can't copy it" nonsense that I get on Windows.

With this simple backup hack in place, maybe I'll have time to look at some more advanced backup techniques that I probably should be using anyway :)

1 comment:

-- I said...

It would be great if this feature was system-wide, instead of just application wide.

If the system had an API that all apps could tie into, with a backup 'control panel' or something like that, I think that would be ideal.

Especially if you could setup multiple backup points. You should be able to go in and say...

1) Place a backup copy on drive X with this naming scheme (folder / application / date / time / document.file)

2) Place another backup on this FTP site, with a different path naming scheme

3) Place a final backup on this other machine on my network running the same backup service...

The list could be as short or as long as you like.

I'm sure this could be expanded more.

-- I