https://medium.com/@Marioskif/javascript-daily-tips-11-how-to-create-interactive-web-pages-with-dom-manipulation-164edb4636eb