This is a series of rough notes that is updated regularly. Check back later for more updates. Latest update: 27 February 2021
Start with Harvard's CS50
One of the more daunting things about going from "I want to learn how to code" to actually learning how to code is deciding where to start. YouTube overwhelmed me (there really can be too much of a good thing), so I enrolled myself in IBM's Python Basics for Data Science. Mistake #1: Do not start with IBM's data analytics/data science courses. Great technical detail, but mind-numbingly boring. If I wasn't so motivated to finish the course to earn my certificate, I really wouldn't have finished it at all. It's a terrible place to start, in retrospect.
Do yourself a favour and start with Harvard's CS50x. Anyone and everyone starting from scratch should start with CS50x. You can either do the whole course from start to finish or jump straight into the Python classes (or whatever else interests you). I realised that you can't actually learn all these languages in isolation - it helps to have some context on how these programming languages evolved. David Malan does a great job of doing this.
Install Python onto your computer
You would think that installing Python onto your computer would be the easiest step on this journey...but no. Giles McMullen a.k.a. Python Programmer on YouTube does a good job of guiding you through the two best ways of installing Python here:
Without Anaconda (using virtual environments)
To be continued.