Murphy's Laws & Some Computer Addendums


Murphy's Laws ----

  1. If anything can go wrong, it will.
  2. If there is a possibility of several things going wrong, the one that will cause the most damage will be the first one to go wrong.
  3. If anything just cannot go wrong, it will anyway.
  4. If you perceive that there are four possible ways in which something can go wrong, and circumvent these, then a fifth way, unprepared for, will promptly develop.
  5. Left to themselves, things tend to go from bad to worse.
  6. If everything seems to be going well, you have obviously overlooked something.
  7. Nature always sides with the hidden flaw.
  8. Mother nature is a bitch.

Troutman's Postulate ----

  1. Profanity is the one language understood by all programmers.
  2. Not until a program has been in production for six months will the most harmful error be discovered.
  3. Job control cards that positively cannot be arranged in improper order will be.
  4. Interchangeable tapes won't.
  5. If the input editor has been designed to reject all bad input, an ingenious idiot will discover a method to get bad data past it.
  6. If a test installation functions perfectly, all subsequent systems will malfunction.

The Laws of Computer Programming ----

  1. Any given program, when running, is obsolete.
  2. Any given program costs more and takes longer each time it is run.
  3. If a program is useful, it will have to be changed.
  4. If a program is useless, it will have to be documented.
  5. Any given program will expand to fill all the available memory.
  6. The value of a program is inversely proportional to the weight of its output.
  7. Program complexity grows until it exceeds the capability of the programmer who must maintain it.

Golub's Laws of Computerdom ----

  1. Fuzzy project objectives are used to avoid embarrassment of estimating the corresponding costs.
  2. A carelessly planned project takes three times longer to complete than expected; a carefully planned project takes only twice as long.
  3. The effort required to correct course increases geometrically with time.
  4. Project teams detest weekly progress reporting because it so vividly manifests their lack of progress.

Gilb's Laws of Unreliability ----

  1. Computers are unreliable, but humans are even more unreliable.
  2. Any system that depends upon human reliability is unreliable.
  3. Undetectable errors are infinite in variety, in contrast to detectable errors, which by definition are limited.
  4. Investment in reliability will increase until it exceeds the probable cost of errors, or until someone insists on getting some useful work done.

Pierce's Law ----
In any computer system, the machine will always misinterpret, misconstrue, misprint, or not evaluate any math or subroutines or fail to print any output on at least the first run through.

Corollary to Pierce's Law ----
When a compiler accepts a program without error on the first run, the program will not yield the desired output.

Grosch's Law ----
Computing power increases as the square of the cost.

Osborn's Law ----
Variables won't; constants aren't.

Lubarsky's Law of Cybernetic EntomologyLaw ----
There's always one more bug.

Weinberg's Second Law ----
If builders built buildings the way programmers wrote programs, then the first woodpecker that came along would destroy civilization.

Sattinger's Law ----
Computers work better if you plug them in.

Horner's Five Thumb Postulate ----
Experience varies directly with the cost of the equipment ruined.

Rule of Accuracy ----
When working toward the solution of a problem, it always helps if you know the answer.

Brooke's Law ----
Adding manpower to software that is late makes it later.

O'toole's Commentary on Murphy's Laws ----
Murphy was an optimist.

Back to Computing      Home

Last Updated:   Jun. 03, 2008
Visitor:    000258