The two courses that give the basic CS foundation needed are:
nand2teris.org and
cs50.net
See if you can solve all the projects & assignments in these courses.
These cover a lot of ground. Once you are done with these two courses end to end, you will get a fair understanding of many of the computing big ideas.
Yeah I think CS50 is too basic. The C part is interesting though, has some minor projects that worth working on. For anyone who has some programming experience (whatever language), I think CS61A is a better course.
I really wish there is a course that uses C (like first 4-5 classes in CS50) and uses C ONLY and then go as deep as possible, similar to CS61A, but apparently on other topics (one system programming project?)
The problem sets in CS50, at least the first half, are great and I would highly recommend. I ditched it when it moved to python and web, the problems were interesting but there was an added level of boredom in the 'now make it a website' approach.
Here are some research findings related to yoga practices, what difference does it make to human system is well documented here: https://www.innerengineering.com/research
Go through it if you are interested.