The root of software industries problems:
Unlike film or automobiles, where there is a significant cost of goods, software (while hard to write) was relatively fast to create. With less upfront expenses, the rush to market was coupled with relatively less risk, thereby further fueling the rush to start coding with out thinking twice. Also, the reality of Moore’s Law meant that there was no time for things to settle down to the point where such “niceties” as design, quality, and usability standards might become established. My perspective is that the bulk of our industry is organized around the demonstrable myth that we know what we want at the start, and how to get it, and therefore build our process assuming that we will take an optimal, direct path to get there.