Murphy's Laws of Computer Programming
Laws of Computer Programming
- Any given program, when running, is obsolete.
- Any given program costs more and takes longer.
- If a program is useful, it will have to be changed.
- If a program is useless, it will have to be documented.
- Any given program will expand to fill all available memory.
- The value of a program is proportional to the weight of its output.
- Program complexity grows until it exceeds the capability of the programmer
who must maintain it.
Troutman's Programming Postulates
- If a test installation functions perfectly, all subsequent systems will
malfunction.
- Not until a program has been in production for at least six month will the
most harmful error be discovered.
- Job control cards that positively cannot be arranged in improper order
will be.
- Interchangeable tapes won't.
- If the input editor has been designed to reject all bad input, some
ingenious idiot will discover a method to get bad data past it.
Gilb's Law of Unreliability
- Computers are unreliable, but humans are even more unreliable.
- Any system which depends on human reliability is unreliable.
- Undetectable errors are infinite in variety, in contrast to detectable
errors, which by definition are limited.
- Investment in reliability will increase until it exceeds the probable
cost of errors, or until someone insists on getting some useful work done.
Brook's Law
Adding manpower to a late software project will make it later.
Laws of Computerdom According to Golub
- Fuzzy project objectives are used to avoid the embarrassment of estimating
the corresponding costs.
- A carelessly planned project takes three times longer to complete than
expected; a carefully planned project takes only twice as long.
- The effort required to correct course increases geometrically with time.
- Project teams detest weekly progress reports because it so vividly
manifests their lack of progress.
Lubarsky's Law of Cybernetic Entomology
There's always one more bug.
Shaw's Principle
Build a system that even a fool can use, and only a fool will want to use it.
"Murphy"