Shuhari is a Japanese martial arts concept describing the stages of learning to mastery. While a master can and will break rules at will, most of the time she won’t because the rules align with what is the right thing to do. The same goes for code metrics.
After writing The More I Know The Less I Know, I received a few emails talking about how there are absolute best practices that should always be followed in software development. I wanted to distinguish best practices from principles at this point.
Given the rise in popularity of NoSQL solutions, typically set apart by their explicit forfeiture of traditional RDBMS features, you might think that age old concepts like ACID transactions and foreign key constraints are simply antiquated.