Friday 19 November 2010

To rant or not to rant

If I think about it - I mean actually ponder it over - before actually writing it does it make it less of a rant? Now that I've asked the question the answer does seem pretty obvious and the question, utterly redundant. The thing is, I've read some of my old posts lately and I've been truly shocked on more than one occasion. While english is not my first language (a scenario I'm genuinely grateful about), the truth is that it's the language I'm most fluent in (a scenario I'm somewhat indifferent about). I'm currently not worked up about the traffic on this site but I'm most definitely worked up with the quality of anything that bears my alta ego's signature (enough about scenarios already!). I generally write my posts in the train, Friday afternoon, on my way home - which leaves little enough time to rant much less proof read. I'm tired of pursueing this train of thought so that's that. But I'll say this - there's no point writing if even I can't bring myself to read what I've written 2 days later.

Today, I learnt another lesson I hope I never forget. It's that I should remember when I write code today that posterity (or some poor ignorant soul) will hate me or love me for it. It's like that Sarah Groves' song that says "remind me of this with every decision - generations will reap what I sow". In any case, I moved code to production a few weeks back that called a function that was written 5 years ago. The function should convert any number to six digit string prepended with zeroes and it does that - sometimes. The logic in the function is the kind of voodoo code that I used to think only I could cook up. I guess it's comforting to know that those superman senior programmers once wrote code that's as bad as what I currently write... at least a little. In any case, the logic in the function ensures that 331 comes out as 033100 but returns 310000 when 033100 is passed in. The function doesn't state any contract for the argument passed in explicitly but then assumes that only one type of string would be passed in. And this gold mine of a function is responsible for preventing about $1m in fees daily - go figure! Anyhow, lesson learnt - time to move on... or not.

We've been studying humility in my little church group. This week, though, we switch to "witnessing". If there's anywhere I'm an epic fail, christian-wise, it's at witnessing. Of course, failure to witness is probably the greatest sign of how little one has genuinely experienced and has a relationship with God. After all, it's a basic fact that when you are excited about something you want to tell the world about it. It starts to crop up ever so often in your discussions and you actually start to sound like the person (or the cartoon character). So, I'm looking forward, expectantly yet with trepidation, to the series on witnessing. After all, it's bible studies like these that can condemn you to heaven or hell.

Makes me remember the words of the Asa song that says "peace for the people who are gone, ye pa for the ones not yet born, war for the people who are here" (I'm not sure if it's war she says or woe in the last phrase but I figure they both come out the same way). We are all running a race we can't win. Fortunately, though, it's a race that's been won on our behalf (least that's the bible's take on it) - if only we'd accept and claim the victory like our lives depended on it ('cause it does) and surrender to God's will.

No comments: