Like DRY or unit test coverage - rules are nice, but if you apply those concepts 100%, you're going to have a bad time.