https://medium.com/@davidkuda3/clean-python-make-sure-your-code-reads-from-top-to-bottom-360d5671f848