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 use pycharm for testing shit. pycharm is an ide, an all in one software with code editor, debugger, compiler etc. python has packages which are contain other people’s open source code, pip can be used to get these packages for your own use. for example requests is a package for requesting stuff from web servers and can be used for scraping. spyder is an ide similar to pycharm and path variable is a location containing binary files so lets say python3 is located in C:\Program Files\Python\bin, you will have to cd (change directory) to that location to access it but with path variable set to that path whenever you open command prompt and type in “python3” it automatically understands to look for python3 in that folder without having to cd. command prompt is used to run python scripts because you need to specify to python interpreter which script you need to run and you can’t do that with gui.
for code snippets i recommend stackoverflow and chatgpt. you can ask chatgpt to make simple scripts (complex ones may have errors) with explanations. read the code and try to understand it instead of blindly copy pasting it.
I considered this approach, but I’d much prefer something more structured and guided as in a college course. I’m not really looking to make even very simple programs yet. I’d first like to get a handle of the theory and fundamentals of what computer science and programming even are in general, how to use the tools Anaconda comes with to compose programs, and the basic techniques for writing programs. Not to mention learning what all of that jargon is I mentioned in the post.
The tricky thing is, the fundamentals of computer science don’t actually have much of anything to do with setting up or using programming tools, or even with the basic techniques for writing programs.
Right, but I was hoping to get them both in one course in order to understand how the tools work and what the programs themselves are actually doing beneath the abstraction.
Python might not be the best language to learn a lot of those things, because python hides them for usability. Python really is a “try to make it before you really know how” kind of language. Python is also not the language I would want to learn object oriented programming on.
JavaScript would be a little better, in that regard. but I struggled to learn any programming until I learned something with stricter typing: C then Java. Python legit confused me as a beginner, because I couldn’t tell what was happening. Idk maybe its just me.
I initially decided on Python because that was the language the MIT OCW course was using, but since I’m not going to be doing that course, I’m willing to choose a different language. The only thing is I’ve heard C is much harder for a beginner to learn than Python is, but if you could suggest any good books written for beginners, I’d give it a try.