Introduction Every software developer makes mistakes. The obvious ones receive plenty of attention in books, blog posts, and code reviews—using…