At first I thought I'd follow along the MIT OCW 6.0001 course, but it's like eight years old and on a far outdated version of Python and Anaconda. When I tried to install the software as per the syllabus's instructions, I found the download links were dead. I had to spend a few hours going through archives to get the required Anaconda 4.1.1 and Python 3.5 only for it to not even work upon installing. When I tried opening the Anaconda navigator, the logo would pop up, it would say initializing, and then it would just crash before it could launch. Referring back to the syllabus was of no help because the instructions there were literally as brief as "Install Anaconda and Python 3.5 via the installer".
I wasn't able to troubleshoot any of this because all the google results for this question were full of jargon I sure as shit won't be able to understand until I finish the course in the first place. I have no idea what an IDE is, what a pip is, what a spyder is, what a path variable is, or why one would want to use the command prompt.
I was actually able to successfully install the newest versions, but I can't use these for the course because I'm an absolute beginner who has no frame of reference for what differences are actually going to be important.
Now I'm in the process of looking elsewhere. Problem is, I can't find anything like the MIT OCW course. I really loved the videos of actual lectures and the fact that I didn't have to enroll or sign in to anything. There exist a lot of Python tutorials on the internet, but I was hoping to also get an introduction to computer science in general because I need to learn the fundamentals of the subject. I'd like to have a deeper understanding than one would get by just learning a computer language without any of the theory behind it.
Does anyone have any recommendations for a more recent curriculum? Ideally I'd love it to have lecture videos, but I'll be content with just problem sets and a good textbook if it's up to date and has a robust step by step guide for setting up.
I used Wing IDE when I was in compsci 101 and 102. I don't know why they picked that one over any others. They gave us a list of problems that was called something like 14 simple problems? It basically looked like a shortened version of a lot of these ones: https://www.w3resource.com/python-exercises/python-conditional-statements-and-loop-exercises.php Theres also Kattis for loads of programming problems.
Learning programming is such a, like, binary thing. Cause you always get the people who just get it and learn by doing and trying and failing, and then you have people who need lecture and guidance. Neither is bad. If you're the second half I can't really help because I was the first kind lol. I'm sure there's plenty of MOOCs (just online learning basically with videos and homework) besides MITs one. I searched for python moocs and this came up https://programming-23.mooc.fi/ I can't vouch for it but it's something (they have lecture vids at the bottom). Harvard has a basic intro compsci course as well but they do C++ or C, can't recall, and they might be too outdated now. I know you have your heart set on python but a lot of people swear by the old Harvard videos, I dunno.
Thanks for the advice and resources. The most effective way I learn tends to be in the middle of those two categories. I like to be walked through the basics and fundamentals and given curated problem sets. But once I do those and have a feel for the main idea, I start experimenting on my own until I get stuck and return to the structured set up.
By the way, I don't actually have my heart set on python, I just chose that because it was what the MIT OCW course was using. I'm not going to be doing that course now that I've realized how out of date it is, so I'm now considering either C++ or C instead. That said, I'd still like to to learn Python regardless, but I'm not sure if it should be my first language given the advice I received here.
Cool! You could give Harvard's CS50X series a go if you'd like! They include practice problems at the end and used to have a test at the end that checked if your programs worked. No idea if that stuff is still around.