The first principle is that you must not fool yourself – and you are the easiest person to fool. - Richard Feynman

Programmers love to fool themselves. "This line has to work! I didn't write that bug! It works on my machine!" But if ever there was a field where you can't afford to fool yourself, it's programming. (Unless of course you want to do something like lose $172,222 a second for 45 minutes).

Over the years I've enjoyed lots of articles that talk about false assumptions that programmers accept without really questioning them. I thought it would be helpful to have these collected in one place for reference purposes. If you know of articles that would be a good fit on this list, let me know and I will add them.

Falsehoods programmers believe...