RYE: Repeat Yourself Enough
As is often the case, I found myself discussing the relative merits of applying the DRY principle in code, because there was some overlap between two components doing similar things. I have long held the view that you should repeat yourself as many times as you need to in order to properly understand the problem you are trying to encapsulate in your abstraction. Without this, you are destined to repeatedly revisit your abstraction.
By: Chris Tarttelin