I think what is forgotten is: <i>make programmers work less!</i><p>And I can't stress this enough, just how much work in both "dotcom type" companies and corporate IT goes completely to waste.<p>N out of 10 software features some smart "requirements manager" manager, or an artsy type "product manager" make up usually end up as ballast.<p>I'm saying that to highlight that the prime majority of companies spending pennies on devs are almost as a rule pathologically inefficient, and that is the root of their problems.<p>I think there is a wrong image of tech companies among the rentier types as a maintenance free cash cows, and that they can pick a well performing companies, fire all devs, but the "maintenance crew" and secure their retirement in a few years. My own experience with that is a complete opposite:<p>Companies with well selling tech products only do so for as long as they give good support, and keep money burning on marketing. The moment the rentier type buys the company, and cuts both new developments (which in reality usually are support, and bugfixes) and marketing, they really destroy the only things that were keeping the business going.