Keep you code DRY means reducing duplicate code by using abstraction. The opposite of DRY code is WET, which means “Write everything twice”.
Sources
https://deviq.com/don-t-repeat-yourself/
Only implement things you actually need and not things you might need in the future. This helps with staying on track with completing tasks that are necessariy, instead of going down a rabbit hole trying to implement things you won’t even need.
Sources
Make sure the programs you create are kept as simple as possible without any unnecessary complications.
Sources
https://en.wikipedia.org/wiki/KISS_principle
Separate a program into different modules that concerns themselves of only one thing. A program which follows SoC is considered a modular program. Separate business logic from data transportation logic, etc.
Sources
https://en.wikipedia.org/wiki/Separation_of_concerns
An acronym of five principles to follow in Object-Oriented Programming to create clean and maintainable code.
A class or module should only be responsible for one thing. Do not overstuff a class or module with functionality that should be placed into a separate module.
Sources