* 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.
* 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.
* 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.
I think the best one was the BIOS problem. I always tell my students about this one during my hardware course.
When I was a Network Administrator we began to introduce the idea of an IBM laptop university. So I was responsible for about 100 laptops on campus and keep them up to date. This included regular BIOS updates downloaded from their website.
So I downloaded the update and applied it. For all the machines, it was a breeze. One machine however proved problematic. When I booted with the BIOS update disk and it began the actual update process, I heard a grinding noise (not something you expect to hear). I looked over at the screen and it popped up a single error on the blue screen "There is a hardware error".
I called IBM (as we leased our machines) and spoke with the techie on the phone. I explained the problem and the techie asked if he could put me on hold. I hummed happily away to the muzak and he returned.
He said "It's not supposed to the do that".
I did a doubletake. I replied with a quizzacle "It's not supposed to do that?!?". He asked to put me back on hold again. I went back to my humming again.
He returned. "There is a hardaware error!". At this point I lost it. I started laughing with an appropriate DUH! put in there. The end result was a toasted mobo and it got sent back to IBM. Needless to say, it did brighten my day. =D