http://web.archive.org/web/20040608013838/http://emilysolutions.com/Papers/vhll.html#section1
(excerpts)
Frederick Brooks, in his famous article "Essence and Accidents of Software Engineering" (IEEE Computer Magazine, April 1987) gives an excellent explanation of the situation: large software systems are the most complex artifacts of human civilization; the very property of software that makes it so useful (its malleability) also makes software very difficult to produce. Brooks poses a question to sum up the entire problem: Why has the cost-to-performance ratio of computer hardware decreased by five orders of magnitude in the last 30 years, while the cost-to-performance ratio of software has not improved by even a single order of magnitude?
---------------------
That was written ten years ago so the question has compounded in importance. The situation in general hasn't changed. In fact, given the stagnation and waste generated by the many dead-ends, restatements, and missed opportunities costing the clients of the computing world at large, the situation has gotten much worse.
And people like mirror laugh about it because they know they're stealing their customers blind. He likes that because he claims it proves him right.
That's a condemnation of development techniques considered the rule within the software industry for the past four decades.
I suggest the reader work through the following and do so with an open mind: