The 10+1 Most Annoying Reasons Your Program Does Not Work
Upset and frustrated? Your program does not work? Check out the @profserious list of the 10 (+1) reasons for this and feel immediate relief.
It actually is not your program. Or rather it is, but some earlier, different, broken version.
It does work, as you specified and as you correctly implemented. Now you know your specification was wrong.
It does work, as you specified, as you correctly implemented, and as you still believe it should work. But, some user says different.
It should work but somebody reintroduced the bug you had already removed.
It does work, the test is wrong.
Somebody changed the compiler, the operating system, the hardware, some box somewhere on the network, something in the many intermediate layers of virtualisation and middleware that you put in place to make things easier.
It would have worked had you programmed it in the language you originally recommended. Somewhere, there is a semicolon, bracket, white space or other piece of arcane syntax out of place.
Well, it did work and then you ran it again, under exactly the same conditions and now it does not work. Perhaps cosmic rays flipped a bit.
It works for all values of the input data, except one. Why? Please, somebody, tell me why.
You copied it from the Internet and never understood it in the first place. Now, not only does it not work but the stuff you did write , and thought you understood, does not work either.
You are just not nearly clever enough. There, you feel better now!