Recently, Les Hatton wrote a compelling article entitled The Chimera of Software Quality. (Les Hatton, “The Chimera of Software Quality,” Computer, vol. 40, no. 8, pp. 104, 102-103, Aug., 2007)
A section of the article headed The cost of poor quality points out the economic impact of poor software quality, and the almost belligerently ignorant and/or apathetic approach to it by people and businesses in the technological nations.
He summarises this in what he postulates as Hatton’s Law:
The technological societies will collectively trash around [US]$250 per person per year on systems which will never see the light of day or, if they do, do not come close to what their users wanted, assuming they were asked in the first place. This they will ignore.
(emphasis mine.)
If you aren’t flabbergasted or at least peeved by that figure (except because you’ve already come to the sad realisation), stop reading now and go and defragment your hard disk, ignoramus.
As we say Downunder, “Goodonya, Les!”. Although he didn’t suggest where that money should go, he did indicate that it’s not just about the money, it’s about the engineering legacy we’re leaving. I have no idea if he shares my views, but other engineering disciplines have helped make the world better by avoiding the cost of poor quality. Pastoral tools, houses, clothes, toilets, aqueducts, fishing nets, boats, glass, the list goes on (and will probably not include the iPhone, people!).
Of course in software there are tactical actions taken, especially when shareholders start raising concerns over short-term cost-benefits of IT (or, more accurately, when executive bonuses are impacted by it by more than a few percentage points). But this is not enough.
Sometimes, I’m accused of being aggressive in the indignation I display when I see woeful technological systems. I suppose that’s because something inside of me has always been thinking that the money spent on building that pile of steaming crap could have been used for much more constructive purposes. In that sense, I’m not nearly aggressive enough. Perhaps I’ll stop calling it “technical debt” and start calling it “karmic debt”.
Stop writing shitty software and you could do something even better than increase shareholder value or boost your annual bonus. You could help take a stand against poverty – in your own country and around the world.
There are many corporations who divert some resources to social responsibility. Think how much more they could do if they did some of the simplest, mind-numbingly basic things to avoid spending massive sums on poor software. Those things aren’t just throwing money at a problem, but the money or more freedom from cost constraints allows corporations and their employees to do so much more.
Even corporations in industries you’d normally least expect to understand are being more socially responsible in a way that doesn’t raise the eyebrows of the cynics like me. I’ve personally witnessed the activities undertaken by employees at Westpac, a large Australian bank. I also know that avoiding the cost of poor software quality would allow them to do more. ThoughtWorks is not immune either. We use a couple of systems internally that are so fantastically crappy and impact both our effectiveness and efficiency that it beggars belief (I must point out this is relative to a benchmark one would expect of a company with our ideals, and would be otherwise more than reasonable almost anywhere else — we have the luxury of being very picky when critiquing internally). One of my clients laughed at me the other day when he found out what email client we use, because he made a lot of money (and stomach ulcers) supporting it in years past and he knew the impact that its poor quality has on its users (not that most of the alternatives are a benchmark for excellence).
ThoughtWorks is on an ambitious mission to change the nature of IT. In doing so, we hope to contribute to a better world. Avoiding the cost of poor software quality is one of the things we’re doing to help.