You know what the biggest problem in coding is these days, that far surpasses any of these?
The fact by US law, a CEO - and therefore indirectly, all management under that CEO - must always act in the best financial interest of the stock holders, unless forbidden by the stockholders from doing so. Should the CEO favor long-term or short-term profit? That question ends up answered by another: Will today’s stock holders be stock holders in a few more quarters?
Sadly, the mistakes of the past are so tempting because more often than not, they get crap on the shelf, albeit in a shoddy condition. In a market where companies routinely plaster their products with disclaimers, warnings, and license agreements making it clear that you shouldn’t ever rely that the product even function, let alone function well, how the hell is anyone ever supposed to expect quality?
The modern IT consumer ends up raving happy just to get a product that works out of the box, works properly, and continues to work. That is to say, the customer is so used to getting shafted by the industry that shoddy goods are the norm and something that ought to be merely acceptable is regarded as excellence.
The opposite happens from time to time, however… customers who’ve totally been had with an overpriced IT bauble will rant and rave about some new feature they claim to love to hide the shame of purchasing a product that, while it has that excellent new feature, completely fails to deliver up to expected standards in its other base functionality.
Programmers whine and bitch like children about crap like the last 10% of the job being 90% of the effort, but face facts: you people ship stuff with bugs anyways, so its complete bullshit to count that last 10% as part of the development time; its more like, part of the “We sold you broken shit and now we have to fix it after the fact” service call.
Take a look at how many days, months, years go into bringing something to market from conception of the idea in a field like medicine. It doesn’t exactly take too much time to go from “chemical in a test tube” to “bound agent in an unlicensed pill”, but take a look at the quality control efforts, product testing, approvals procedures, the massive time, effort, and expense involved in seeing if its worth it at all, it its going to work right, learning all the kinks and oddities of the product.
Outside of NASA and the medical field, where else has this sort of attention ever been paid to software development? Because THATS how its done RIGHT, when its done RIGHT. The rest of you whiners are just selling broken junk, and you know it.