I know I wasn't asked, but I'm a programmer and I think about this sort of thing off and on. I believe that the software business is fundamentally different than hardware (although they are certainly related).
At this point the software business is in its infancy, perhaps only because programming is so poorly understood and sloppily practiced (this certainly contributes to the problem). One thing to think about, to see how much worse the practice of software is than hardware, is to compare how much better hardware has gotten in the past 20 years with how little better software is. (In fact, most of the improvement in software is because there are almost no limitations on how big a program can be now -- often this has made the software worse, but not always.)
The software business tends to go in cycles that have to do with some new piece of infrastructure getting adopted and then people thrash around trying to figure out how to use it. The internet was seriously overhyped, and so lots of companies rushed to "get on the net" and now they are realizing that there wasn't much rush, and they haven't digested what they bought (and in a lot of cases it doesn't work very well, so they are struggling with that).
However, the internet is a huge change, and it will increase the demand for software tremendously, because it represents an opportunity to automate processes on a global scale. At least until that has occurred (which will take a long time, and possibly forever), the software business won't be mature. |