Saturday, January 1, 2011

Back up your data! Now!

So, wow... this has been a crazy last week for me. I managed to luck into having the entire week off of work, so I was looking forward to a nice break that I could spend working on my game project (which I mentioned a couple of posts back) to try and get it ready for the Mozilla Game On competition.

[Quick side note here: Apparently Mozilla decided to go and drop WebSocket support in Firefox 4 due to security concerns with untrustworthy proxies, something which I utterly fail to understand as being a WebSocket concern. If your proxy is lying to you, aren't you pretty much screwed anyway? Whatever the reason, though, that put a serious cramp in my entry as is because I relied heavily on WebSockets to get performance that didn't, you know, suck. I was rather annoyed about the whole thing, but that's not much of a concern for me now...]

Before I jumped into my little coding spree, however, I did a little post-Christmas shopping with some gift cards I received. I used one of these to purchase a new hard drive, since I was running a bit low on space on one of mine. Took the new drive home that night, plugged it in (SATA, so the plugging part was ridiculously simple) and flipped the computer on...

...and all hell broke loose.

My UPS immediately began to wail because I was apparently drawing too much power. The fans on my machine were spinning, but the machine wasn't coming up. Then I caught that delicious scent of burning ozone. (Anyone who has ever worked with computer hardware knows and fears that scent). Switches were flipped and plugs were pulled quickly, but I knew that this had just turned into a long night.

My first instinct was that the power supply must have fried, but upon further inspection imagine my surprise when I found that the burning smell was actually coming from the area of my CPU! Oh Joy. Attempts to turn on the machine again were met with absolute silence. No fans, no hard drive spinning, nothing. I called up a nearby friend and ran over to his place to borrow a spare power supply real quickly, but my hopes of making a quick recovery were sliding downhill fast. Upon plugging THAT one in, I got the case fans spinning again (Dead power supply: check!) but also started getting that nasty burning smell from the CPU once more, and no POST beeps whatsoever. (Dead CPU and/or motherboard: check!)

So now I was faced with a decision: Do I even bother to rebuild my PC? It was about 4 and a half years old (with one Motherboard replacement mid way through it's lifespan), so I had gotten a good deal of use out of it, and frankly it had been acting a little wacky lately. I did some quick window shopping at Newegg and figured that if the video card and hard drives were still good I could probably do a decent rebuild for about $400 and end up with a reasonably up-to-date machine. That's all well and good, but there was part of me that actually cringed at the idea of cobbling together the parts and hoping it all worked again.

That surprised me, to be honest, but after giving it some more thought I realized that it was true: I didn't WANT to tinker around inside my machine anymore. It was great to fiddle like that when I was a hobby developer in high school, or a poor college student trying to squeak in an upgrade and still make rent, but at this point I'm a professional developer with 7 some years under my belt and priorities have shifted a bit. I still enjoy playing with the hardware and putting machines together, no question, but when it comes to my personal computer I just want it to freaking work!

Of course, once I made up my mind to get a boxed PC, there was no question in my mind where I would get it from. I would never even consider a Dell or HP or Sony or what have you. I've worked with too many of them over the years and seen far too often the shortcuts made to cut costs. No thank you, my choice was quite clear.

So I got a Mac. Specifically the 21.5 in 3.2 Ghz iMac. Yes, it's stupidly expensive for the hardware, (and no, I refuse to concede otherwise. Apple hardware IS overpriced. Period.) but their warranties are very good and the hardware IS nice. They don't take shortcuts out in Cupertino. Plus the fact that I had long wanted the ability to develop for OSX and iOS was a huge driving factor as well. There are a lot of development opportunities in the Mac world now, far more than even a few years ago, and professionally it makes a lot of sense for me to familiarize myself with the environment and APIs, even if I'm not using them at my work currently. I'll probably do another post about my experiences in the Mac world soon, but outside of a few quirks I've been quite happy with my decision.

Anyone, on to the REAL point of this post: After getting my shiny new toy and setting it up, I went back to my old drives to pull over my photos, music, documents, etc. Except, when I plugged them into the USB adapter nothing showed up on screen. And I got that funny burning smell again. Well.... crap. (Dead hard drives containing years of family memories and important documents: Check!)

And NOW the panic sets in. Just think about all the stuff thats on your computer that you would absolutely hate to lose. Now imagine that your PC died catastrophically right this second, and none of that data was recoverable. Would you have any way of getting it back? Scared yet? I should have been. (Yes, I know that you can do data recovery. Unless you're a big business, though, it's not worth it. That's expensive stuff.)

So now the fact that I rarely ever did backups comes around to bite me hard. As a developer there's no excuse: I should have known better. I scrambled, and tried to retrieve a backup that I did to a free Mozy account about a year and a half ago, but it appears that they've gone and deleted my account without notifying me (Note to everyone: Avoid Mozy at all costs! They're obviously not to be trusted with maintaing your data!) After a bit more panic (and consoling a wife who believed we had just lost wedding and honeymoon photos) I did manage to dig up a drive from mid 2008 that I had actually done a backup to! YAY!

That gave me back a lot of my data, and some more recent things like photos of a Disneyland trip were still on my phone, so it wasn't an absolute disaster. There's still a good two year gap of photos and documents, though. Most critically: The game that I had been working on is now completely gone. I had been committing to a local Mercurial repository, but never synced it out to a server. (Stupid developer! No Cookie!) That's a good month or so of my own code that's completely gone. I'm going to re-build it, probably starting on Android this time, but I will be starting completely from scratch. Not. Happy.

Moral of the story: Back up your data! As in: Now! And frequently thereafter! My new Mac has a feature called Time Machine that does backups to an external drive for you automatically, and you can bet that I'll be making good use of it! Don't be a stupid developer like me, don't assume that your computer will be running tomorrow, and don't get stuck digging through your closet in a panic for two year old data! Just backup!