Summary (TL;DR)
DRY is a useful principle but often taken too far. Three criticisms: 1) DRY is misused to eliminate coincidental repetition, coupling code to specific cases instead of abstract concepts. 2) DRY creates a presumption of reusability, leading to awkward interfaces when new needs arise. 3) DRY drives unnecessary complexity, turning simple tasks into elaborate designs. Copying small snippets is often simpler and should not be reflexively rejected.
Public access expired
Save this link to your readplace queue and read every link without expiration.
Save to My Queue