This isn't about rejecting bad programmers — it's about rejecting good ones. If you can't afford a bad hire, that means you should spend more time and care trying to determine accurately whether somebody is good rather than relying on a rough heuristic with a strong negative bias — especially if you find that your heuristic is rejecting everybody.