My background: I've been programming for 7 years now without any formal education. I have been doing enterprise work for this entire time. The company I work for basically runs on the code and programs I write for it. I am at the point where I am no longer being challenged at work.
I've considered applying to school, but the hefty costs have turned me away for now (USA). I'd like to teach myself what I can until I hit another wall. (Eventually I'd like to get into machine learning/AI/statistics). I feel a lot of cognitive dissonance knowing that I can build programs that run a company but I have only a vague idea what a tree or linked list is.
So, I'm looking for free online resources that are preferably NOT videos (cause they are too slow for me), with all content available upfront. I would love to learn this with C (first language I learned, felt like I was much closer to the computer), so I both understand what the computer is doing and where/when it should be implemented.
thanks!!
If you don't like videos, maybe consider some textbooks?
Sadly I don't really have any personal recommendations for good resources about CS.