Remember I said that nobody knows what they want. Now say they've hired a consulting firm to design their inventory control and the consultants sit in on dozens of meetings, take notes, nod their heads, tour the building, look at the products, produce endless specs and proposals, then sit down and pound out code. Suddenly a zillion gotchas and change requests wriggle out of the carpet like slugs and maggots. The changes are made, but each one compromises the design in some way. Normally you'd iron-out those wrinkles with a good bout of refactoring, but these consultants are on the clock, and when the first bill arrives the CEO is going to want to know what features he's just paid for.Lesson for CIO. Hire full time developers and stop using contractors.
Imagine the conversation between the consultant and the CEO. "What's this line item for?" Techno mumble-jumble in reply. "What do I get for it?" Abstract and immeasurable concepts of goodness. "Take it off! I'm not paying for that!"So consultants and freelance programmers don't do much refactoring. Once the contract is over they move on to the next job and forget about what they wrote. When something breaks, they start the clock again, hack and hack and hack until it works, submit their invoice and bugger off.The person behind the role may be highly intelligent and competent (rare, but it happens), but the role makes them a moron. Sometimes they were morons to begin with, and the role makes them even worse.Now you've inherited all that code and you get to fix it and extend it, and maybe--because you're salaried--spend time refactoring it.
My thoughts for me, no comments or opinions other than mine. This is not a social site.
Thursday, August 06, 2009
So you've just been hired by an IT department...
Walken on the Moon

I want to ...