Hi all – here is the last in what has turned out to be a 3 part “series” of posts, dealing with my journey (so far) of learning Python – how I went about it and what resources I ended up using.
As a quick recap of the main points highlighted so far:
- It is VITAL to identify and select a project you wish to eventually create – something that really means something to you and excites you when you think about it.
- Steer clear of Codecademy as an early Python resource – Most of it is now behind a paywall and the whole concept of trapping you inside their sandboxed environment can end up causing added confusion rather than helping.
- Consider signing up to a quality MOOC beginner Python course – my recommendations are the two listed in the previous blog post. (I’m sure there are many other quality courses on offer out there, but those are the two I have experience with and they both did a good job of getting me from zero to “absolute beginner”).
- Approach the MOOC courses you decide to take in a “serious manner”. You’ll gain so much more if you solve the exercises and homeworks yourself, without searching for solutions etc on Google – it’ll take a lot longer, and take a lot more effort but that’s when the learning happens!! After all, you’re doing all this to learn right? Nothing worth having comes easy! 😉
- Prepare mentally for when you reach the inevitable “cliff of confusion” and “desert of despair” – both are surmountable with enough perseverance, hard work and simple belief in yourself!
- Be willing to take a step back and take stock of your situation objectively. You may need to revisit the process of following structured Python courses for a period, that perhaps don’t teach EXACTLY what it is your trying to focus on for your end goal. This is ok….don’t beat yourself up about it. Take a moment to appreciate how far you have come since you sat down on day 1. Perhaps even go back and attempt some of the exercises you completed in your previous MOOC courses – compare your new solution to your old one, both in terms of conceptual approach and code style or efficiency etc. I bet you surprise yourself.