Friday, October 21, 2011

Prepping the place for a new roomie

Another programmer will be starting where I work, which will double the dev staff. In preparation I decided it was time to go through a few things and get them a bit cleaned up. Source code control. The dev area on the intranet. I've tried to be professional even while working by myself for almost seven years, yet there are still times where things get a little lax, a victim of "I'll come back and clean that up later."
"Oh, man - why do I still have that repository in the main production tree? We haven't used that code since 2006!"
I'm trying to get all the code organized and documented (with at least a "read me" in every project saying what it is - even a sentence is better than nothing, right?), weeding out obsolete docs and updating others. It's all actually not in that bad of shape - I do these things every few years even if just for myself (the last time was when I transferred all my code to Mercurial from Subversion). Often it's a good exercise during the year-end holidays, since that tends to be a down time in many places anyway. But it was still time to do it again, and this is good motivation.

But the thing that got me thinking was in the past I've often done this during my final two weeks at a job. I am actually rather proud of always making sure things were left clean, organized and documented, even if the former employer then just let it decay...I've gotten emails and calls years later - "Um, I know you don't owe us anything, but could you tell me where the xyz source code was when you left? We seem to have lost it." And I've always been helpful when that has happened. You can turn over everything except a deep-seated understanding of why it matters. That just has to be learned by hard experience, and I try to be nice when someone is going through that.

The exercise is somewhat like painting and deep cleaning a house right before you sell it, which I've done twice now. When you're finished, you look around and wonder, "Why the hell didn't I do this earlier? Woulda made living here more pleasant!" You're proud of the effort and the results, and it does help sell the place - but it still would have been better to do it for yourself, really.

Instead of moving (on), though, this time it's in prep for a teammate. One of the ways I can put my best foot forward, as well as set some expectations up front, is by having everything tidy when he arrives. It won't be perfect. There's lots of things that are going to take explaining. "Well, you see...it seemed like a good idea at the time because..." However, it's still a good exercise, and I am glad I am doing it.

Perhaps you should take some time soon and "get the house ready for sale" in terms of your source code, docs and environment. When was the last time you did that?
BlinkList Delicious Digg Facebook Furl Google Bookmark LinkedIn Mixx Reddit StumbleUpon Technorati Yahoo

3 comments:

ccjjharmon said...

couldn't agree with you more... I have a habit of doing that where I'm at (as well as when I'm about to leave...).

Good to hear you're getting another... hopefully goes great! :)

Jim said...

Thanks, Chris. Somehow, I can't shake the feeling they've actually hired my replacement (on purpose), and that one way or another this is my housecleaning prior to leaving anyway. But we shall see.

ccjjharmon said...

Sorry to hear that is your thought. I was curious what the relationship was going to be... co-worker or you as boss or what-not even though I remember a prior post/comment conversation stating it was going to be something like a co-worker.

Hopefully that won't be the case ... unless you're *wanting* it to be the case.