Tuesday, March 14, 2006

All the little things

The hard drive in my work laptop failed last week. That sucks, right? Well, I thought it was irritating and all, but now it's gotten downright freaking irritating.

I had about 7-10 GB of personal data on that hard drive.

I had a few work files that hadn't been added to source control yet.

I had about 2 GB of work emails.

I had several (about 25-30) files checked out of Vault on the machine, with changes not saved.

I recreated the work that I lost. I have been dealing with the loss of email. No big deal.

Well, tonight, I decided to work on my game a bit. I thought of a way to implement the wrapping/clipping that I want to use; or at least close approximation of the behavior I ultimately want. So, I go to my Vault server, and get latest on all my code. No errors, no problems. I go to build the project, and oh boy, here come the issues.

Generally, I use source control integrated through Visual Studio. The opposite of Eric Sink. I'm one of those customers he was out of touch with. Here's where things get tricky. At work, we use another SourceGear product, SourceOffSite. At home, I use Vault. I've been trying to get my work to purchase Vault for a long time, but it hasn't worked yet (I won't get into that this time, I promise). Since I realize that my work computer is primarily a work computer, I set up SourceOffSite as the Visual Studio-integrated source control client. Vault, I have to use like Eric, in standalone mode.

There are some nuances to using source control without it being integrated. Mostly, you have to think more. Which, if you know me, you realize is sometimes pretty freaking tricky. For instance, if you add a new class to a project in Visual Studio, and have integrated source control, the source control both checks out the project file, and adds your new class to source control. If you use the standalone client, then you have to manually check out the project file, and manually add the new class. Manually add the new class. What a concept. Being used to integration, I forgot to add a couple of new classes to source control. Guess who feels like a total freaking ass?

The worst part is that those two classes are critical to the game's architecture. And, I haven't looked at the classes in months, since they have been static for a while. I have no recollection of their specific implementations. If I can't find some way to recover the data off of the corrupted hard drive, I am totally screwed.

I'm downloading SystemWorks now, to see if it can recover my data. This is SO not cool.

And, there's a bunch of the little things that are driving me crazy. Settings that have been lost. RSS subscriptions missing. Little things, but incredibly irritating. Oh well, at least I will have more empathy for customers who lose data, if I ever end up working on a source control system (hint, hint Mr. Sink).

No comments: