« Good article on Alaska and Global Warming | Main | Unions »

June 18, 2002

Software Sucks even in Utopia

"Why software is so bad ... and what's being done to fix it."

This article also appeared in The Technology Review, but I posted the MSNBC article because of the inherint irony.

The article covers the issue of why software is so flawed and how, unlike other engineering practices, software is apparently getting worse. I could go on about this topic for a long time, being a programmer. At the end, the author seems to not know that software makers are exempt from being sued for defects in their software. Clearly, this needs to change. Almost no other industries have this sort of protection.

This article reminds me why I don't like programming for others anymore. I still love to program, I just can't stand doing it for others. Mostly because I can't handle it to well. I take everything I do personally and want to do the best job I can. In programming, that really isn't an option. Quality comes last, behind schedule, features, and show. Unrealistic deadlines with constantly changing goals are just a few of what drive programmers crazy. Not to mention that fact that all of your hard work is almost always short lived. You're lucky if you're program will be used a year later, if its every completed at all. The above article mentions that 25% of contracted software projects were never completed. As a programmer, you are most often recognized when something goes wrong, not when you've done a good job. Those in charge rarely understand what they are asking for and do not accept technical answers which attempt to disuade them from disasterous courses. In no other industry does middle-management hurt the process more than in programming, because in no other industry are more middle managers as clueless in a situation where central knowledge and control is more important.

Now I'll revert back to my root-of-all-evil talk. I think most people agree that the problems in the software industry are caused by the pace of the pace of the software industry. There isn't enough time to develop good software? But why not? Why can't people just take more time? Greed, money, power, blah blah blah. This all goes back to my theories on why a free, utopian society won't work with humans. I'll probably go into this in more detail in another entry, but basically, its because of the 0 tollerance issue. Free is the keyword above. A society where people self-govern based on utilatarian/community principals... ie. doing whats best for the community. Let me give an example, I'll use a monitary based system in my example, but it works just as well with a barter based system.

Organization A opens in your community selling gardening products. We'll call them Green Gables. Notice I used Orgazination instead of Company (it works either way). Org B also opens up selling gardening products. We'll call them GroundWorks. Org B started to offer better products than GreenGables. GreenGables is now forced to make better products to survive, if they do not create better products, people will stop going there. Thats how its supposed to work. Org C starts a gardening org, we'll call them Soilent Green, but decides to use dishonest practices to thrive. First they defame GroundWorks and GreenGables saying that their products are faulty (which they aren't). Then they claim to be coming out with a new product that will increase gardening productivity by 300%, and works only in conjunction with the rest of their products. Then they lower their prices to below cost. All of this nearly drives GreenGables and GroundWorks out of business. GreenGables, seeing whats happening, realizes that if they don't fight back, consumers will no longer have access to truly quality gardening products, so they bend their own ethical rules to fight back... but its all for the good of the community of course. They too announce a new product coming out which increases productivity, and starts slandering the others. They also start buying cheaper materials so as to compete with Soilent's prices. You see the trend right? Of course the travesty is that GreenGables believed it was acting in everyones best interests the whole time, even when they started making decisions that were not helpful to their consumers.

The scenario above has been seen many times, and I hope we can all agree it has happened and continues to happen in almost all industries. The point in describing it is that it only took 1 organization to throw off said industry. There could have been 1000 gardening tool makers we were talking about and it would still only take 1 to throw it all off. Here's my point. If, by disaster or consensus, we did create some sort of free utopian society where people really did everything based on what was best for the community. And lets say that every single person really did follow this rule. How long would it take for 1 person to show up who was evil. There are evil people all over, no stopping it, there always has been, always will be. How does the community combat it without regulation. Anytime you introduce regulation, you introduce the possibility that an evil person becomes a regulator. and so the cycle continues.

I didn't mean for this discussion on software to go into social theory, but it has. Oh well. I'll talk more about my feelings on this in the future, I'm sure..

Posted by wonko at June 18, 2002 02:19 PM

Comments

Post a comment

Thanks for signing in, . Now you can comment. (sign out)

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)


Remember me?