I think this is right on. When we try to force our design to be a certain way instead of allowing the design to emerge from a simple set of rules that meets our needs, we tend to make things more complicated and create extra rules and exceptions (more inelegant).