https://www.cojocarudavid.me/blog/10-ways-to-make-your-code-more-maintainable