# DRY helps forgetting

When code you wrote has duplication of knowledge (therefore not DRY), you'll have to constantly remember to update your change in multiple places.

For example, you might be documenting rigorously about how your code works, even when your code is already expressing well on how it works. When you need to change your code, you'll need to remember to update your documentation as well (Documentation or comments can be a knowledge duplication).

Remembering is hard as that's a cognitive load for us. Having the ability to forget about those duplication, means we'll spend less energy remembering them. Also Forgetting is a healthy process of inhibiting irrelevant memory.


# References

The Pragmatic Programmer (p. 31).

It isn't a question of whether you'll remember: it's a question of when you'll forget.