Follow The Rules, Except When You Shouldn’t
Throughout your career you’ll be exposed to best practices, leading practices, established standards, conventions, design patterns, and many other rules of the trade. At times they may seem pointless or arbitrary (and some are), but most are the result of the blood, sweat, and tears of those who came before you. They are the hard-fought experience of other developers who want to save you the same pain and suffering. Learn them. Follow the rules… except when you shouldn’t. No rule applies in all situations. Learn the Why behind the rules, too. The Why is important. Part of maturing as a human being is understanding why a leading practice is leading… and when it no longer is. There is an art to coloring outside the lines, but you need to know What, Where, and Why the lines are. Then, when faced with a situation where the convention really isn’t the right course of action you can make a reasoned decision to break with convention – rather than just saying “I don’t get it, it must be stupid!”
Our industry has 70 years of hard-won experience behind it. Learn it, leverage it, benefit from it… and in so doing you’ll learn how and when to break the rules like an artist, not an amateur.
—
(source: http://wisdomoftheelephpant.com/)