|
|
|
Murphy's Computers Laws
- Any given program, when running, is obsolete.
- Any given program costs more and takes longer each time it is run.
- 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 the available memory.
- The value of a program is inversely proportional to the weight of
its output.
- Program complexity grows until it exceeds the capability of the programmer
who must maintain it.
- Every non- trivial program has at least one bug
Corollary 1 - A sufficient condition for program triviality is that
it have no bugs.
Corollary 2 - At least one bug will be observed after the author leaves
the organization.
- Bugs will appear in one part of a working program when another 'unrelated'
part is modified.
The subtlest bugs cause the greatest damage and problems.
Corollary - A subtle bug will modify storage thereby masquerading as
some other problem.
- Lulled into Security Law
A 'debugged' program that crashes will wipe out source files on storage
devices when there is the least available backup.
- A hardware failure will cause system software to crash, and the customer
engineer will blame the programmer.
- A system software crash will cause hardware to act strangely and the
programmers will blame the customer engineer.
- Undetectable errors are infinite in variety, in contrast to detectable
errors, which by definition are limited.
- Adding manpower to a late software project makes it later.
- Make it possible for programmers to write programs in English, and
you will find that programmers can not write in English.
- The documented interfaces between standard software modules will have
undocumented quirks.
- The probability of a hardware failure disappearing is inversely proportional
to the distance between the computer and the customer engineer.
- A working program is one that has only unobserved bugs.
- No matter how many resources you have, it is never enough.
- Any cool program always requires more memory than you have.
- When you finally buy enough memory, you will not have enough disk
space.
- Disks are always full. It is futile to try to get more disk space.
Data expands to fill any void.
- If a program actually fits in memory and has enough disk space, it
is guaranteed to crash.
- If such a program has not crashed yet, it is waiting for a critical
moment before it crashes.
- No matter how good of a deal you get on computer components, the price
will always drop immediately after the purchase.
- All components become obsolete.
- The speed with which components become obsolete is directly proportional
to the price of the component.
- Software bugs are impossible to detect by anybody except the end user.
- The maintenance engineer will never have seen a model quite like yours
before.
- It is axiomatic that any spares required will have just been discontinued
and will be no longer in stock.
- Any VDU, from the cheapest to the most expensive, will protect a twenty
cent fuse by blowing first.
- Any manufacturer making his warranties dependent upon the device being
earthed will only supply power cabling with two wires.
- If a circuit requires n components, then there will be only n - 1
components in locally-held stocks.
- A failure in a device will never appear until it has passed final
inspection.
- Adding manpower to a late software project makes it later.
- A program generator creates programs that are more buggy than the
program generator.
- A part dropped from the workbench will roll to a degree of un-reachability
proportional to its importance.
- In a transistor circuit protected by a fuse, the transistor will always
blow to protect the fuse.
- No matter how hard you work, the boss will only appear when you access
the internet.
- The hard drive on your computer will only crash when it contains vital
information that has not been backed up.
- Computers don't make errors-What they do they do on purpose.
|