One of the best places to start learning to code is the very famous Harvard CS50 course. The online version is CS50x. Highly recommended as a great introduction course, suitable perhaps for high school age and above. Incredibly, offered for free online!
Here’s a brief summary of week 0:
- Binary number system – How computers represent information
- Various coding systems – ASCII & Unicode to represent letters, characters, and even emojis
- Algorithms – The basic premise of what an algorithm is. Some form of system/way of doing things to figure out/solve a problem
- Time to Solve – Way of measuring and notating the efficiency of an algorithm. Time to solve a problem vs size of a problem
- Pseudocode – Just a way to write, basically in summary English like points, how you’d like a program to run
- Scratch – Graphical tool here for learning basic logic and programming constructs
- Key concept – breaking a problem into sub-problems and solving each of these in turn.