30Jan/0912
Software development has failed
Face it, it’s failed.
We spend a lot of time and energy trying to understand the problem domain or at least have the client communicate it to us and the customer hardly ever gets what they want or are satisfied.
Need to put the ability to craft a solution in the hands of the client. Domain specific languages may help, but you still need to know how to program at this point. In the future, college majors may include programming courses. Only CS will use generic “foundation” languages like C/C++/Java/.NET. and will mostly focus on building platforms for the domain experts.

January 30th, 2009 - 07:42
Don’t be so despondent! The most successful projects always teetered on the brink of failure at some point, otherwise they weren’t trying hard enough. The mass of software development is not done by those most qualified to do it, but rather by those who are only just qualified, and with very little excess, because that’s how efficiency works, and that’s how markets allocate resources.
You might wish to live in a world where everything is rosy, the experts work on systems that they can perfect, and the inexpert work with systems that save them from their mistakes, but that’s not what makes the most money.
Sorry.
January 30th, 2009 - 10:06
Software Development, has failed, is failing, and will fail again. This is no different than what has been pointed out ever since the publication of the “Mythical Man Month”. On this point you imminently correct.
However I’m sure that if you ponder this a little longer from a bit of a different lens you will see that Software Development has succeeded, is succeeding and will succeed again. The world is full of the carcasses of software failure, and when I’m stuck on a project to nowhere it sure seems like everything is an elephant graveyard. When I step back an look at how the world has changed in the last 30 years and how much of that is purely a mind work / software driven process you can’t help but say “wow”.
January 30th, 2009 - 11:22
I’m sure that title will get some attention, but it’s a ridiculous statement, in my opinion.
You were able to post this message sitting in the comfort of your office or maybe even from your phone. And I’m sitting here thousands of miles away responding to it. Software development has not failed. It is challenging and needs fundamental improvements, but it succeeds every day.
Also, this craft is still in its infancy. If this were 1800, you’d probably be saying, “Let’s face it. Medicine has failed.”
January 30th, 2009 - 11:24
Software development hasn’t failed. You may say it sucks, but I can’t see where it has failed. There’s a lot of live software, doing a lot of stuff that wouldn’t be possible otherwise. A tiny portion of that software is great, some of it is good, a lot of it sucks but more or less does the job, and the rest is utter failure.
The failure distribution curve probably doesn’t look much different from the junk you can buy at your local big box retailer. I wouldn’t call toddlers’ sippy cups a failure as a concept, even though probably 1/2 of the cups we’ve ever bought have a tendency to leak.
January 30th, 2009 - 16:40
I agree and I disagree.
I agree it’s a failure, and I think it will be a failure for some time. However, I know that business people who know programming will not be the answer, because no matter how it’s taught in school, it’s still going to have the same intrinsic problems.
In the best case, for the business people who build good enough solutions, there will be good solutions that produce reliable results and they can maintain them, but when they leave, the system will not be able to be maintained by the next person. In the worst case, someone will build something and happily use the answer it spits out, despite it producing the wrong answer, and they will not even have made an effort to determine how to determine whether the system is operating correctly.
In general, programmers (and teams) who learn the business build better systems than business people who know or learn programming. I don’t think that’s going to change.
January 31st, 2009 - 23:22
This has already been tried with Cobol and it was an utter failure then and it’s a failure now and will be in the future. Ask *any* business major to sit down and write *one* line of Cobol or use a Domain specific language at all and you’ll get nothing but crap if it works at all. This scenario won’t change in the future because not everyone knows how to code. Jeez…
February 1st, 2009 - 11:48
You have failed to be cogent in any way, shape or form.
February 1st, 2009 - 21:16
Lots of projects fail, and lots succeed. I suppose you could say more software projects fail then, say, construction. But people building buildings build the same ones over and over again.
But basically you’re just trolling, putting out an outlandish thesis in order to get lots of hits. Weak.
February 1st, 2009 - 21:54
You should really get to know failure well, then you can avoid it.
That comes with experience.
Note the facts, most companies fail over time, big or small, over 50% of software projects fail – face the facts, there is no reason you should start out expecting to succeed when you look at the actual facts.
You have a 50% chance of failure! can you face that fact? So why start out feeling you will succeed?
However, after a lot of experience you realise what the causes of the failures are and then you can address those causes … put out those fires before the project gets completely burn’t.
Really – get to know failure, its your best friend.
February 2nd, 2009 - 20:58
Yes. Largely it has failed. But it’s is because our foundation is wrong. We can thank Unix and Microsoft for that.
February 6th, 2009 - 12:34
I think we are still in the infancy of software development. It is still very much a creative process versus engineering process and those who appear to speak the language of software development still find it rather easy to acquire contracts/employment. The industry is consolidating as is natural and those who are actually good at what they do will survive and succeed.
Just look at the recent reports of the number of new CS enrollments in colleges and you will see that the intruige has diminished and those who actually are capable will rise to the top.
February 17th, 2009 - 13:02
Software development hasnt failed. Management has failed. The notion that creative work MUST be produced between 9am and 5pm with 1 hour lunch and 2 breaks has failed. The fact that know-nothings get promoted into management and management of humans, creative ones at that, doesnt call for watching over their shoulders, calling them on the phone every 20 minutes or instant messaging them constantly with some form of “Where are we at?”.
We dont want to go to meetings. We dont want to run instant messenger. We dont want to answer our phones and we dont want our managers sticking their heads into out pathetically horrible and wonderfully creative-inspiring workspace!
Do you want to give me that project and interrupt me a zillion times and have it late, over budget and full of bugs (as is the case today), or do you want to give me that assignment and allow me to code it so that in two weeks the product is done, bug free and under/within budget.
Oh… thats right… marketing wants to change things a hundred times a day. I forgot. Well, there’s ANOTHER problem……..marketers..
It will never change unless WE programmers change. Until WE demand respect like plumbers, doctors, lawyers, electricians and the like, we’ll be continually walked all over.
Ever try to change the “project” with one of those other professions? HAHAHAHA! Good effin luck to walk away not getting charged for every little change.
Its OUR fault.