https://medium.com/@ameermuawiya472/10-tips-for-beginners-in-learning-programming-languages-4cdfbfddc241