We may need to go deeper on this one. But I will start small.
Please, repeat yourself a bit more, don’t go crazy on DRY (don’t repeat yourself)
DRY for DRY results on bad abstractions, which can be hard to make sense of, and can make it hard to change.
Think about an abstraction in a logical way, it will uncover itself when the time is right…
Rule of thumb: if you can’t explain to another human the logic behind your abstraction, it’s a bad abstraction.
“Duplication is far cheaper than the wrong abstraction” ”prefer duplication over the wrong abstraction” — Sandi Metz, “The Wrong Abstraction”