I can certainly vouch for CS50, when I was in middle school I messed around with programming, but taking CS50x was what made the intuition and process come together for me.
I've seen those first two on Reddit before, and they're amazing. They take the time to explain thoroughly but still remaining engaging with no special tricks. The use of physical models instead of diagrams (or Powerpoint slides) doesn't seem like it should be important, but it is.
How a car differential works: https://www.youtube.com/watch?v=yYAw79386WI
Downright the best zero-to-programmer course in the world. Wish I knew about it when I was starting out: https://online-learning.harvard.edu/course/cs50-introduction...