I was a junior C coder, 6 months experience.

New job, low man.

I was given an MS-DOS interactive database program, hand coded in C. Screen, keyboard, btree indexes, record insertions, balancing, etc.

The guy wasn't that bad, or so I thought, but I had nothing to compare against.

He assumed incorreect order of operation, VERY simple one.

Index_Memory_Needed = CURRENT_INDEX_COUNT + 1 * Index_ITEM_SIZE

Dumb shit thought the + 1 happened first.

I then went around the office, quizzing people. I found about 1/2 of the people I asked had no idea how order of operations worked, even the "smart" ones.

I then found a lot of bugs like that.

Taught me to never assume any other programmer is the slightest bit competent. That code had been corrupting indexes for years before I was given it.