## Organizing your digital garden using software's design principles
Since my [digital garden](Digital%20garden.md) exceeded 400 notes and 35 different subjects, questions about how to organize it started to comes.
When I first read[ Andy Matuschak's evergreen notes article](https://notes.andymatuschak.org/z4SDCZQeRo4xFEQ8H4qrSqd68ucpgE6LU155C?stackedNotes=z6bci25mVUBNFdVWSrQNKr6u7AZ1jFzfTVbMF), explaining what [Evergreen notes](Evergreen%20notes.md) is and over which principle these should be writed, the thing that struck me the most is the similarities with how you're writing [OOP](Oriented%20Object%20Programming.md) software, using design principles like [SOLID](SOLID.md), DRY or KISS.
As I was already familiar with this design principle, doing my best to applying it to my softwares, everything start to make sense to me.
I'm writing my digital garden with in mind thoses principles:
- **Single responsability principle:** every note should be responsible of one unique topic. Even if it means having shorter notes (KISS design principle here 😄 ). I like to see this principle through the maxim "Divide for better reign".
- **Open-closed principle**: Even if it's a bit counter intuitive with the principle around evergreen notes, I try to extend more than I modify my notes. It force navigation around concepts more than getting stuck on long articles.
- **DRY (Don't Repeat Yourself)**: In this note i.e, instead of repeating `n times` the concept around SOLID and Evergreen notes, I'm linking to their own notes so I don't repeat myself. It also improve the maintainability of notes and let me expand the concepts better, without having to edit every notes.
I'm sure there's a lot of other paralelism that could be made between software design and digital garden design, but digital gardening is above all a matter of personal choices. So it is up to everyone to choose their own design principles, inspired or not, by software design.