
At first I started to learn by reading Computer Science 101 textbooks. The intro MIT textbook is in python and has more depth than other CS101 books. (Guttag, John. Introduction to Computation and Programming Using Python.)
I then went practical, I learnt Ruby on Rails via https://www.railstutorial.org/. It was good to provide me with mental framework of how websites are built... html, coding and database.
For the actual CanadaPups project, I switched from Rails to Django because I found Rails to be too confusing (maybe due to my inexperience at the time).
I was curious and after a bit of looking around I found "Introduction to Computation and Programming Using Python with Application to Computational Modeling and Understanding Data", third edition, by John V. Guttag, © 2021. Looks pretty good, though it's a more traditional approach.
Basically, any language you might be interested in will have introductory books.
If you have trouble getting ahold of books, you can try (1) www.pdfdrive.com and (2) z-lib.org . The first one feels a little less sketchy but the second one has almost everything I look for, on every subject. I've had no trouble with either one so far, but use at your own risk.
I've been reading a new Python book (_Introduction to Computation and Programming using Python_) and the aforementioned book on C, and I'm doing every exercise in the book. I'll continue coding each day.
Appreciate your input!
Of the others I've checked most do link directly to the text, either as HTML or PDFs with the exception of some of the Chinese and Japanese courses which provide links to purchase texts but free aids/study guides. It's still a very helpful list, as OCW has grown so large that it can be overwhelming just going through the catalog– a huge achievement on its own, really– before you even get to the content. So much to learn, so many possible routes to take...
