The Reality of Failure

How can you tell experienced programmers from beginners? New programmers think if they work hard, they might succeed. Experienced programmers know that if they work really hard, they might not fail. Allow me to elaborate with an excerpt from an interview with Steve McConnell:


This is a companion discussion topic for the original blog entry at: http://www.codinghorror.com/blog/2005/01/the-reality-of-failure.html

I’ve made a number of small apps and I could probably follow the 90% rule that person defined. I don’t consider them failures it’s just usually that I find something that does the job I was trying to do, usually in some obscure place. Also I seem to like to spec out designs but follow through with very little. That said I have used some programs well passed their prime and are working to completely revamp their nature. The problem with me is I like version 1 to be THE ULTIMATE when I really should work that into version 2 or 3. I can’t possibly think of everything up front but I try to before I even begin coding. Guess it’s good I’m don’t get paid for this stuff.

When it comes to SalesLogix (VBScript work) it’s the only “programming” I do get paid for and everything I touch is completed. If I could count SalesLogix it would skew my 90% to something more like 10% since I’ve done far more SalesLogix work than all of my projects combined. I usually follow KISS but I like to think of new ways of doing things so I have been caught a number of times doing stuff I shouldn’t be. The end users may not touch half of it but I can at least say I know how to do it.

Now as far as a $170 million failure that’s just obsurd. You don’t just scrap that kind of money. If that is just what it took for research what was the point of the thing to begin with? I would think people could think of things and progress gradually then at some point (well BEFORE $1 million in the whole) a decision is reached to can the project, or keep it moving. $170 million is just insanely stupid and it’s not the first time our government has had to throw this kind of money right out the window. I mean yeah it still comes back in that the company that has the money buys goods and stimulates our economy but that’s money we’ll likely never see again. While I agree that you should be paid well for the work you do, I seriously question the ethics of the people involved when they throw away that much money. At some point well before then a red flag should have been thrown but then again it’s not “their” money. Retards. You live in this country don’t you? Technically it IS your money and the money of others that you’re throwing away. Do what you want with your money, but touching mine is an extreme no-no.

The larger projects get, the more likely they are to follow the percentages Steve outlined. You’d have to work in a larg(ish) company to see the “reality of failure” in action as projects and teams grow. None of us is as dumb as all of us!

I think small projects and small businesses do disproportionately better, probably because they have no other choice but to keep it simple.

The problem with the FBI’s sink hole, from what I gather from the book “Dreaming In Code”, isn’t just that it can’t be done but what they needed done in the timeframe they wanted was what was impossible. Changing requirements midstream and new managers on the FBI’s end due to their bureaurcratic snafu isn’t things that would help.

I think the problem is that people with no knowledge of what a programmer can be expected to do are asking for everything in a month. And then saying they want more two weeks later.

If the FBI did stuff more gradually with their software it’d work out better I think.