Archive

Posts Tagged ‘source control’

Are You Paranoid Enough?

May 1st, 2009 Comments off

(Image from iStockPhoto)
When it comes to preserving your valuable data, it pays to be paranoid.

Assume the worst, think of all the possible ways things could go wrong. Be paranoid. The question is not whether you are paranoid, but whether you are paranoid enough.

These days, everyone has valuable data, and it’s taking up more and more room. Documents, spreadsheets and databases; emails, photographs and even video. Game players have many save files capturing their progress in various games. In my case and that of most programmers I also have many files and folders comprising highly valuable program source code. We’re all working hard generating digital files of one form or another, almost every day.

So, think about how you would feel if you lost that data. Bad? It could be worse than bad.

About ten years ago the young programmers in my office were having fun replaying an audio file garnered off the Internet, from some computer company’s help-line. It was a call from some guy who had been writing a book on his computer, maybe a novel. Something went wrong with the machine and he sent it in for repair. The computer company had (for whatever reason) wiped the hard disk. The young guys in my office thought it was hugely amusing to hear this guy raging in despair about the loss of all of his data, almost literally foaming at the mouth. Personally, I found it very painful to listen to. I could feel his pain.

Losing data, particularly creative work you have labored over, is tragic. This is why I am paranoid about backups.

Here are my paranoid rules:

  • If there’s only one copy of something, it might as well not exist at all, you’re going to lose it. Make an immediate copy of any irreplaceable item (such as photographs of a wedding, which can’t be replaced at all).
     
  • If you only have two copies of something, each copy must be kept in a different physical location. The house or office could burn down (or, as happened to my daughter and her husband, the backup drive can be stolen along with the laptop it was backing up).
     
  • Two copies is not enough. Your hard drive could crash AND the backup copy could be lost or prove corrupt. I’ve had it happen.
     
  • How do you know your backup files aren’t corrupt? Check them regularly.
     
  • Are you backing up everything you might want? I regularly (say once very 18 months) reformat my desktop computer. That’s when I remember all the things I should have backed up but could easily forget to: fonts, passwords, email archives, application settings.
     
  • What about backups of material not on your desktop computer? Like on-line blogs, forum posts, etc. A colleague of mine forgot to renew his domain name and hosting package and lost a valuable travel blog and photographs.
     
  • Think about how much time you would be prepared to put in to re-create your work if it was lost. In other words, how much work could you bear to lose? A day’s worth? A week’s worth? Backup more often than that.
     
  • There’s no such thing as too many copies if the data is really valuable.

So here’s my backup strategy. Personally, I don’t yet think it’s paranoid enough.

  • For program source code, I use a version control system (Subversion) to save progressive versions, each time I do significant work on any programming project. The commit happens via a VPN, to a server in a different physical location to my desktop – in fact, to an office some 20 km away. This generally happens once or twice a day on a current project. As Jeff Attwood says, source control is the absolute bedrock of software engineering.
     
  • I have an external network drive (a 500GB LaCie Ethernet Mini). I use Acronis to schedule weekly backups of ‘My Documents’ and source code folders, on an incremental basis (this means I can backtrack, à la Mac Time Machine, to previous versions of things).
     
  • I copy the Acronis backup files from the LaCie to one of two identical external USB drives (Western Digital MyBooks). Only one of these is kept at my house. On an approximately weekly basis, I take the current MyBook drive with me to another physical location, and swap it with the identical drive already there. Even in my house, the MyBook drive doesn’t live on my desk, but somewhere else in the house where a thief won’t find it.
     
  • When I’m feeling particularly vulnerable, I burn DVD-ROMs of really critical files and keep them somewhere else.

You might quite reasonably ask why I don’t use ‘cloud storage’ to backup files to a location on the Internet, like Amazon’s S3. The answer is that in Australia our broadband upload speeds are still so feeble that it would take weeks to backup any significant volume of data this way.

So am I paranoid enough? I guess I’ll only find out when things go wrong.

“Even paranoids have enemies”
— Golda Meir to Henry Kissinger

Performance Optimization WordPress Plugins by W3 EDGE