Archived Mac & OS X Uncategorized

AppleScript ‘Backup System’


Because I’m in I.T. I’m quite paranoid about my data and its safety.  This is partly due to being responsible for the data for companies that would seriously lose hundreds of millions in capital without that data and partly due to losing all my own data many years ago.  At the time I was working on a website editor that, after some semi-public testing, I had been informed was better than the best commercial website editor at the time.  I lost the code, all the files that related to the project and all my backups … my backup software had a bug that killed my ability to restore from tape.  Sigh.

So anyway, I’ve used many methods of backing up my data but I’m overly paranoid about backup software not doing what I want when I *really* want it to and I therefore do my own backups, ‘on the side’, so to speak.


I’m a big fan of doing things as simply as possible and in this case the simplest solution is to take the data I want to backup, archive it in a widely-used format (ZIP) and put it somewhere I can easily get it back.  Naturally this means offsite, outside my house, and in today’s world that means in ‘the cloud’.  Dropbox, in this case.

Now, if you’ve used Dropbox and have given it a bit of a thrashing, you’ll know that as soon as you throw a LOT of files at it, the indexing process really starts to take over, chewing CPU and disk I/O cycles.  For that reason, my solution involving archiving the data into a ZIP file before giving it to Dropbox works nicely.

No, really, how?

My current hardware platform is Mac.  For that reason I figured the best way to back things up without installing anything extra was to write an AppleScript to handle things.  You might argue that I should’ve written it using standard Unix .sh or Bash script so that I could use it on Linux but that’s not a requirement.  Plus, although I wrote this primarily for my own use, I had always planned on making this script publicly available and AppleScript is very easy to understand, even if you’re not a tech-head, like me.  Don’t expect a production-quality script as I’m not trying to sell it so please be aware that there are no warranties provided with anything you download from here.

Is it configurable?

A lot of the settings are, yes.  However, this is a backup script and I therefore chose to keep a number of things ‘set in concrete’, if that makes any sense.  However, being an editable script means that you can just change stuff, if you want.  Here’s what you can change.

  • Prompt on overwrite, if a destination archive already exists
  • The ‘base’ path of your backup destination, by default Dropbox
  • The list of paths that need backing up

In my opinion, you don’t really need to change much more than that.  🙂