https://medium.com/@marjibajamir9/python-for-beginners-a-step-by-step-guide-with-mini-projects-dcbd95faf28a