https://medium.com/@rubik22/boost-your-python-skills-six-best-practices-for-high-quality-code-4ec28f46e745