I’m not sure that abstractions are always a good thing. Introducing abstractions too early can also lead to brittle, conditional and overly-complex design. A good rule of thumb is to only extract a piece of code once it has been repeated X (e.g. 3) times. :)

Technology leader and strategic advisor. I work at the intersection of people, software and words.