Yet Another Software Sucks Article
Narril Duskwalker writes "This one's from cNet.
`There's only one problem with software development these days, according to security analyst and author Gary McGraw: It isn't any good.'"
`There's only one problem with software development these days, according to security analyst and author Gary McGraw: It isn't any good.'"
The problem is that software vendors get away with using the laughable disclaimer that "this product isn't warranted for any suitability or purpose."
I'm not even sure that the kind of disclaimer above should be legal without a more concise "NOT GUARANTEED TO WORK" stamped across the splash screen.
If a company isn't willing to guarantee that a program fucking does something, why do they keep coming back to it? Because it's got a Madonna song and fluffy clouds in the commercial?
If a company consistently provides unstable software, why do people run to upgrade instead of demanding more comprehensive patches for what they've already paid for? Is rushing toward flashy new features more important than stabilizing what you've already got?
OK, so the article is about coding for security, but it's worth considering Tom DeMarco's line in his excellent book Why Does Software Cost So Much ? where, he says, the correct answer is "Compared to what ??".
Kicking those who manage complexity is always going to be easy - but until you can do better then you're not really helping.
The book is well worth a read... if only to shut up all those metrics freaks...
T
I spent a lot of money on booze, birds and fast cars. The rest I just squandered. - George Best
"And the best way to determine how many problems are going to be in a piece of software is to count how many lines of code it has. The simple metric goes like this: More lines, more bugs."
No the best method also factors in competancy of management, competancy of engineers, and the cost of failure.
Lets take as example nuclear power plants than have operation control code behind them - how many lines of code do they have? I'd suggest 10's of millions.
Why don't we see crashes of these systems widely reported?
1) They are safety critical, if an error occurs anywhere the surrounding code must fail closed meaning that it should not result in false results being produced.
2) If you screw up you can't just say "hey we'll fix it in the next version" - if you are lucky you'll simply get your day in court for negligence and you will no longer have a place in the safety critical market. If you are unlucky that still happens but you then get the ass sued off you by the relatives of anyone injured, maimed or killed by your software bug.
You have to admit the second point really is one hell of an incentive not to screw up!