Premature abstraction is the root of unnecessary rework.