In the world of IT contracting, I do a lot of picking-up-pieces – I rarely get a chance to start a project from scratch, and when I do it’s something I’ve instigated because the previous incarnation is beyond salvation. It’s frustrating in a lot of ways, and I see some horrible hacks – some of which don’t even pass the lint test.
Today is one such afternoon, but with a twist. The code I’m making an attempt to maintain is something I began writing mid-2006, as a replacement for another hacked project. I was dropped from the project in favour of a permie, but the code was documented and in really quite a nice state of maintainability. Now fast-forward to the permie having left to go back to his old job and leaving behind an absolute mess. He’d just not ‘got’ the philosophy of the code, and ignored the boss’s requests to maintain the code in the house style. There are hardcoded email addresses, lack of comments, lack of indentation, and a heady mix of reliance on code from other projects (which, incidentally, shares across multiple projects – dare you change anything?).
I’m not saying I’m perfect – a friend recently pulled me up on forgetting to check whether a query had completed successfully, among other things. But… is there no pride in development work any more, or is it a case of ‘I’m a contractor, get me out of here and hang the consequences’?