https://medium.com/@navoddulanjana/how-i-learned-to-program-and-you-can-too-tips-for-beginners-ed33b91949bb