Steve Bennett wrote:
On 2/10/07, geni geniice@gmail.com wrote:
The cynical side of my says that is more to do with people wanting job security. Mind you I have the same view about much of copyright law.
Eh, no. If you want job security you redesign everything you can get your paws on, so you're the only one who understands how everything works. Leaving things alone makes you replaceable.
Yeah, you're right, it's just fear. Fear and laziness.
The few programmers I've met who are both entirely cynical about their work and socially adept enough to be manipulative don't seem to want to code their way into a lifetime of bug fixes. Instead, they'll become evil managers or jealous guardians of key knowledge. But they won't intentionally make a mess.
Interestingly, and bringing this almost back on topic, it's our own Ward Cunningham who gave me my best tool in fighting that death-by-cruft pattern: the concept of code debt.
The people paying the bills don't care much about abstract notions of quality, especially the sort of mysterious under-the-hood quality that they can't see. But if you talk about programmers building up debt, and the interest you pay in having to touch high-debt code, they start to get it. And then when you tell them that if the total debt ever rises above the value of the code, that's when you have to declare project bankruptcy and start from scratch, that really makes their eyes light up.
Suddenly, instead of bad code being a vague problem for programmers to deal with by working harder, it's a financial issue, a debt that is getting in the way of something they want.
William