Top 25 Most Dangerous Programming Mistakes

I would have thought failing to check for error is the most common and most dangerous of all errors

char * p = malloc (100)
strcpy(p, THis will crash at times but not always);

or

File = OpenFile(Sometimes i’am locked and will throw exception);

After coding for more than 10 years, no-error-check-assume-everything-is-fine style of coding mostly done out of pure hubris or laziness come at the top of my list

The danger from these sort of mistake is that, you cannot prove it to be a mistake unless you actually catch the potential error to be happening, you cannot find the error unless you review the code and it is most often not reproducable.

Fixing this style of coding requires to add new blocks / failure handling and other hard stuff which is almost equal to recreating the entire code. Hence it is also almost the hardest to fix depending on the original code quality.

Here is my list -

http://computinglife.wordpress.com/2008/06/03/what-really-is-bad-code-levels-of-bad-ness/