Colloquium at Stanford
The Unfinished Revolution


Date: Tue, 25 Jan 2000 00:14:12 -0800 (PST)

From:   Dick Karpinski


Subject:   Big Projects Usually Fail

Some of you may not understand this, but literally most multi-million dollar computer projects actually fail and are thrown away. The best solution to this horrible state of affairs that I know of is the one Tom Gilb suggests in "Principles of Software Engineering Management".

He demands that such projects be done in twenty to fifty sub parts, each of which is delivered and used and tested while the next is being implemented. This reduces the cost of failures to a maximum of five percent of the project, per failure. Using such a scheme, you will not ever see a total failure after 180 percent of allocated resources have been consumed.

Therefor, I suggest that we seek as many useful sub-projects with tiny costs and significant payoffs, that fit into the chosen general plan, as we can. We should pay special attention to short term, low cost efforts. I will have a few to suggest, such as the Idea Farm, which I claim can be implemented in some useful form within a week by a single person or a team of two or three.

Permit no one to avoid facing reality often by claiming that we should leave them alone for two years, we're gonna love the system. We won't. Besides it'll be two years out of date. I call it the big bang theory of programming. In general, success in such plans requires more miracles than can be collected by a determined crew in two years.

Perhaps it should be compared to the wrong way to get to New Orleans on the Mississippi River. We do not give the helm to a man who measures very carefully the direction to the destination and ties the rudder. Instead, we require a captain who will be continually correcting her course to keep the boat in the navigable part of the river, and even avoid running into other boats. We laugh derisively at the first, for we know in our bones that his plan will fail.



Dick Karpinski