https://medium.com/@giorgio.martinez1926/level-up-your-python-skills-with-these-practical-examples-af2e601fc721