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:

SM: One of the points I make in Rapid Development is that all kinds of different things that can go wrong. I enumerate three dozen classic mistakes in Rapid Development. There are lots more mistakes than that that can come up on a project. Actually succeeding in a software project depends a whole lot less on not doing a few things wrong but on doing almost everything right.

TNC: Now, I've been developing software for about ten years and I don't think I exaggerate when I say that 90 percent of the projects I've worked on were not successful. And when I say not successful, the problem was not that they didn't complete on time or they didn't include the features that were originally intended. But they didn't complete at all. Is my experience representative?

SM: I think your experience might be worse than average. 90 percent not completed at all is higher than any number I've seen reported for industry data. But a number like 25 percent not completed at all would be much more in line. And that's still pretty awful. If you look at the remaining 75 percent of projects that are completed, you see that a very tiny percentage are completed on time, on budget and with the originally expected feature set. If you look at the various surveys that have been done, and I'm using some very round numbers, a quarter of the projects are canceled before they're completed and another 50 percent are completed over budget or behind schedule. And 25 percent are completed on time and on schedule, but the piece that's always missing from those surveys is how much of the original functionality was delivered in that 25 percent that was on time and on budget.

The depressing reality of software development is that your project has to be almost supernaturally well run to avoid failure, much less succeed. And it still happens all the time; this article is dated last week:

The FBI's Virtual Case File project -- on which the bureau has spent almost $170 million since June 2001 -- won't succeed. That's the conclusion the Justice Department's inspector general has reached. The auditors' gloomy forecast, contained in a draft report obtained by GCN, echoes criticism from systems specialists within and outside the bureau who cited the project's technical and management flaws.

The bureau likely will not be able to recoup the money it has given contractor Science Applications International Corp. of San Diego for VCF work, sources said.

Via today's yahoo news:

A $170 million computer overhaul intended to give FBI agents and analysts an instantaneous and paperless way to manage criminal and terrorism cases is headed back to the drawing board, probably at a much steeper cost to taxpayers.

The FBI is hoping to salvage some parts of the project, known as Virtual Case File. But officials acknowledged Thursday that it is possible the entire system, designed by Science Applications International Corp. of San Diego, is so inadequate and outdated that one will have to be built from scratch.

In my experience, only developers who have been through a number of failure cycles can appreciate the pain they're about to inflict on users. They work much harder to understand the pitfalls and avoid the classic mistakes. I'd seriously question the credentials-- or at least the intellectual honesty-- of any developer who denied being a part of any software disasters.

Read more

Stay Gold, America

We are at an unprecedented point in American history, and I'm concerned we may lose sight of the American Dream.

By Jeff Atwood · · Comments

The Great Filter Comes For Us All

With a 13 billion year head start on evolution, why haven't any other forms of life in the universe contacted us by now? (Arrival is a fantastic movie. Watch it, but don't stop there - read the Story of Your Life novella it was based on

By Jeff Atwood · · Comments

I Fight For The Users

If you haven't been able to keep up with my blistering pace of one blog post per year, I don't blame you. There's a lot going on right now. It's a busy time. But let's pause and take a moment

By Jeff Atwood · · Comments

The 2030 Self-Driving Car Bet

It's my honor to announce that John Carmack and I have initiated a friendly bet of $10,000* to the 501(c)(3) charity of the winner’s choice: By January 1st, 2030, completely autonomous self-driving cars meeting SAE J3016 level 5 will be commercially available for passenger

By Jeff Atwood · · Comments