Coding principles: The difference between defensive and offensive programming | Dark Hacker News