Monday, May 29, 2006

I Love the Smell of Java in the Morning

And I was having so much fun. Co-developer Ridge and I had spent an enforced sojourn in the grey and barren hinterland of our company’s flagship software project: a sprawling billing edifice, reminiscent of a Trantor or a Coruscant; most probably controlled by some alien hive-mind or Wachowski-style Architect – we never quite figured it out, confined as we were to patrolling the banlieus, chasing replicants through the ghettos and generally experiencing the unglamorous underworld of minor feature programming within an oppressive and mastodonian framework. The Pope may have dispensed with Limbo – even for sub-par Catholics like me, but it lives on the world of telecoms software systems.

All changed when our tour of duty ended one fine autumn day and we were recalled out of our secondment of discontent to our former project team. We had been charged with a brand-spanking-new, dependency-free module to develop, and had been given relative carte blanche with the design details. And for one blissful fortnight we reveled in developer-heaven, certain that the dark times had passed and that whatever we had been punished for had been forgiven.

Then came the bad news. Another project’s patch had been rejected by the system test department, having been overwhelmed by a cornucopia of issues. Beset with structural problems stemming from a long-life without much-needed re-factoring along the way, it had finally gone berserk and rampaged all over the place, scattering testers and analysts hither and yon. Ridge and I were identified as the two remaining developers who had worked briefly on the project in the past, and so were unceremoniously extracted from our cushy harem, languishing in the sweet delights of virgin code and exploring strange and exciting new technologies, unsullied by the hands of other developers, and deposited back behind enemy lines to wade into the thick of it again. I turned to Ridge as our hearts sank. The conversation went something like this:

Me: “This is going to suck balls”
Ridge: “You said it, cowboy”

Prophetic words. At least for Ridge and another co-opted developer who had to spend the weekend doing most of the fixes while I stayed home “studying”. My sympathies went out to them, though, specially since I am back in it again, chasing down minor problems. I recalled my last stint on the project, and discovered that I had found solace in constructing a (subsequently) completely unappreciated playlist for my colleagues, which I now repeat, as it is as relevant today as it was then. Ladies and Gentlemen, I give you: “Burt Bacharach’s Bedtime Balancer Blues”:

(Some exposition: Balancer is the name of the project; “Tracker” is a 2500-line source file therein composed entirely of convoluted evil, and believed to have been developed by Satan himself in a fit of menace. Into it he poured his malice, his cruelty, etc., etc. At least no-one else will own up to it.)


1. "God Give Me Strength" - the melancholy strains of Elvis Costello echo the Forensic Developers' stock refrain when about to plunge into the dark and perilous depths of Tracker, that most feared class in all of Christendom.

2. "Wishin' and Hopin'" - for when you're about to test a small change, and are entertaining the vague hope that it won't have unforeseen knock-on effects in 14 seemingly-unrelated classes, 3 other modules, and at least one satellite in near-earth orbit. Dusty Springfield's breezy optimism is quite delightful.

3. "I Say a Little Prayer" - Aretha Franklin's cynical take on one of those situations where you're about to check whether the getter method you need to write will be able to extract the values it needs from only one nice and obviously-named field guaranteed to always hold what its name suggests independently of whether you thought to sacrifice a goat the night before. Her effortlessly ironic treatment of the material shows all the hallmarks of a seasoned performer.

4. "Don't Make Me Over" - sage advice from the ever-practical Burt when you totally flip out and swear that you'll delete everything and rewrite the entire package from scratch. J-Man, this one's for you.

5. "Make it Easy on Yourself" - when all seems lost and you're going in endless change-break-fix circles, Jackie Trent's soaring, transcendent vocals remind you that if you check in to CVS, go home and sleep on it, someone else might have got frustrated and fixed it by morning.

1 Comments:

Blogger Thor Harley said...

Resident Trojan Shaun has escaped the burning city with your top-secret designs, and is somewhere in the wilderness of Asia Minor attempting to unite the scattered business logic. Our thoughts are with him.

11:10 am  

Post a Comment

<< Home