+1. What are the fundamentals of CS? Algorithms?
Data structures, algorithms, algorithm analysis, various discrete math topics (set theory and number theory, a bit of graph theory, are usually included in a typical CS undergrad curriculum), models of concurrency, models of computing (lambda calculus, Turing machines), complexity classes, Chomsky hierarchy, type theory (some might consider this more advanced, varies by school and its lean towards practical or theoretical CS), systems of logic.
I've also heard good things about 7 programming languages in 7 weeks, as well as crafting interpreters.
The latter 2 I intend to pick up this year
https://sarabander.github.io/sicp/
If you want to run these locally, I can set Chicken Scheme for you.