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.

  • blashork [she/her]M
    ·
    edit-2
    1 year ago

    Hey, I'm a uni taught programmer, I write a lot of python. Here are my recommendations for you:

    for learning python, try reading "automate the boring stuff with python", it will teach you the basics of the language and how to do troubleshooting and understand various concepts. It came out in 2015, but there's a second edition that's updated for 2019 but most of the examples should still work.

    Further, I highly recommend reading source code. There are many large and popular projects and libraries. If you want to learn about programming and how people tackle various problems, it is a really good investment of you time to read some project source code.

    For learning general computer science, I highly recommend the rest of nostarch press' catalogue. They have a lot of algorithm and data structure books. I find their work very approachable and extremely good reads. They have some silly stuff that's still surprisingly informative, like a manga that teaches you basic sql.

    If you need any help getting your environment setup and installing linux and stuff just let me know.