We suck at testing our own code. We suck so badly at it that it has led to entire professions like as Quality Assurance analysts and test engineers. Why is that? How do you take some of the smartest people out there and find some of the most glaring omissions and defects?