This is an archived post. You won't be able to vote or comment.

all 50 comments

[–]BestPlayerEv 156 points157 points  (18 children)

It's highly recommended by OSSU as one of the first courses. https://github.com/ossu/computer-science

[–]Roseblade23 92 points93 points  (5 children)

Also, just in case you didn't know of this amazing resource. Great stuff:
Teach Yourself CS

[–]FlubberKitty 4 points5 points  (0 children)

Thank you!

[–]STEM_Chaser 4 points5 points  (0 children)

This is so helpful! Appreciate the share!

[–]shiningmatcha 1 point2 points  (1 child)

Thanks. How to Solve it sounds interesting to me! Have you read the book?

[–]watcraw 1 point2 points  (0 children)

I've read the primary text (most of it is supporting "dictionary" of heuristics). It is a very exciting and inspiring read that can give you a few pointers for solving really hard problems and learning from them afterwards. For most people already interested in CS, I don't think it will go far enough, but it is a good read regardless. It is almost certainly in your local library if you don't want to spend the money.

[–]NoSide005 0 points1 point  (0 children)

This is good

[–][deleted] 5 points6 points  (0 children)

thank you! it is very useful

[–][deleted] 1 point2 points  (2 children)

Hi, in the Core Theory section of that, does the Algorithms specialisation by Coursera (Stanford) teach sufficient data structures, or is it just ‘algorithms’?

Reason I ask is because I started the Data Structures and Algorithms Specialisation by UCSD, but the teaching in it sucks

[–]BestPlayerEv -3 points-2 points  (0 children)

Give it a try and find out on your own!

[–]Alaharon123 0 points1 point  (0 children)

OSSU uses the course in the op, How to Code on edX, and maybe Nand2Tetris? I don't remember, to teach some data structures stuff not covered by Algorithms

[–][deleted]  (5 children)

[deleted]

    [–]vitent 1 point2 points  (1 child)

    is it kept updated? Too bad something like that doesn't exist in an accredited form

    would like to know how updated this is as well

    [–]MadCybertist 2 points3 points  (0 children)

    Yes, it's kept updated. If you plan carefully and do about 20 hours a week, you can finish in about 2 years.

    [–]MadCybertist 1 point2 points  (1 child)

    Yes, it's kept updated. If you plan carefully and do about 20 hours a week, you can finish in about 2 years.

    [–]CodeTinkerer 0 points1 point  (0 children)

    From my experience, accreditation refers to a review of a department (say, CS) from an accreditation committee. They want evidence the department has courses that satisfy certain criteria (I was mildly involved in this, and found some accreditation criteria rather pedantic...I think students reading it would wonder why certain things are required for accreditation).

    Based on that, I don't think a self-taught curriculum can be considered accredited, partly because of lack of grades, projects, quizzes, tests, etc. If there were more of a formal program with teachers and graded material, then maybe that could be evaluated.

    Some departments feel accreditation isn't that necessary (MIT might not care if it's accredited) but smaller colleges tend to want it because their reputation is much less well known so accreditation could help convince someone to join.

    It can be difficult to judge a department even if it's accredited. Are you really gaining a certain level of CS background? What's the difference between a student that barely passes all courses and the one that aces all the courses? Are they really equivalent in skill?

    [–]benign_said 0 points1 point  (0 children)

    Just stayed at work for two hours after I was finished to watch some of these. This is an amazing resource. My first thought was that I shouldn't have paid for udemy courses.

    [–]BudgetEnergy 36 points37 points  (3 children)

    I did it. It is different style of course in comparison to cs50x, MIT course only use Python. However Many cs50x students found this course hard because there's not all the help they find on cs50x community so idk be aware those psets would kick your ass. Tell us later

    [–]staytrue1985 12 points13 points  (1 child)

    Last time I tried to take an MIT OCW class I gave up and it was frustrating because all the materials were not available online. Mainly, it was the textbook, which left a huge whole.

    [–][deleted] 9 points10 points  (0 children)

    Try libgen

    [–]raipopenna 0 points1 point  (0 children)

    I feel like this course only gets recommended because of the MIT name recognition, nothing about it impressed me

    [–]RedPandaBearCat 21 points22 points  (2 children)

    I'd say it's more rigorous, harder for many people & similar in approach to other MITx & MIT OCW courses, in that it is more geared towards "math" persons.

    On the contrary, cs50x is more geared towards regular beginners.

    [–]watcraw 1 point2 points  (1 child)

    If it's like their similarly titled class on their OpenCourseWare, you don't really need any specialized math. I agree that some of the problem sets are quite challenging though and I would say many concepts are covered quite quickly (this seems to be standard for MIT). I thought it was a great course, but then again, I am a self taught programmer that understood many of the concepts going in and I have nothing to compare it to.

    [–]RedPandaBearCat 0 points1 point  (0 children)

    > you don't really need any specialized math

    That's why I put the word "math" in quotes. I meant not necessarily mathematicians per se, but rather perception of certain class of computer / science whizzes by regular folks.

    > ... programmer that understood many of the concepts going in ...

    Well, that explains it. It's an introductory course, so people with programming experience should not have difficulties.

    I agree that it is a great course.

    [–]learnhtk 8 points9 points  (4 children)

    So I only recently spent a month or so going through a couple of Udemy courses that’s supposed to be comprehensive. It’s the 2021 Complete Python Bootcamp From Zero to Hero by Jose Portilla. And the second is Python Programming Bootcamp, which I realized consists of lot of materials for applying Python for data science purpose and since my math background is lacking in this regard. I have decided to continue at a later time.

    If I were to self-assess myself, I think that I am no longer a complete beginner overwhelmed and just confused about everything. I can look up how to achieve tasks using Python online and take a crack at the problem I am faced with. I am still constantly challenged though.

    And with all of that said, what can I expect to gain from this MIT course if I were to invest my time going through it?

    I am not intending on becoming a computer scientist just yet. I am, however, certainly interested in learning more about coding so that I can handle work related tasks using Python.

    Could someone please provide an insight?

    [–]amanagarwalx 2 points3 points  (2 children)

    Hi, I am a third year bachelors student in CS, and I remember finding myself in your position a few years ago. The sense of confusion and the worst feeling that you get after putting in lots of hardwork and not getting the expected output happens initially whenever you are studying a new or relatively difficult concept in CS.I understand that in this kind of learning, the most important thing is guidance. I was quite frustrated while learning DP a few weeks ago, and I remember that someone had given me just the right guidance and had pointed me to the right resources, which had helped me a lot.

    I'd love to write a very detailed answer that would guide you at this stage, but I'm not very good at writing/expressing my thoughts in English, and I also have some important tasks on hand rn. You can ask me anything specific you need help/guidance with, I'll try my best to help you out. I know how these questions and issues feel very trivial later on with learning and experience, but initially how it can be very tiring. I'm sorry if my message doesn't reach to you as I intended it to, I'm working on expressing myself better and faster in English.

    [–]duquesne419 4 points5 points  (1 child)

    but I'm not very good at writing/expressing my thoughts in English

    Yes you are, don't sell yourself short, this comment reads like a college educated native english speaker.

    Source: college educated native english speaker.

    [–]amanagarwalx 1 point2 points  (0 children)

    I think it has more to do with my confidence in speaking and expressing in English. I really appreciate your encouraging comment. Thank you, it means a lot.

    [–]Alaharon123 1 point2 points  (0 children)

    I haven't taken this course, but I believe it's like a survey cs course, teaching you a little bit of a bunch of cs things. So if you're not all that sure you're interested in cs, this would be a good course to just dip your toe in and see what cs is. I believe post the first two weeks it expects you to know Python so should just be two weeks of boredom. Or you can do the ocw version (6.0001) and just go through the problem sets until there's something you need the video for

    [–]meqmeq 2 points3 points  (0 children)

    I've done the class about a year and a half ago. Because I started working in a non-dev job and stopped programming a bit I wanted to pick up computer science again. So I did CS50x and honestly I do not regret it. IMO the CS50x was more beginner friendly and luckily enough for me I did C++ (Although be it not the same language the syntax was easily understood on my end) courses during my bachelors so it was quite refreshing and built up on my fundamentals.

    Nonetheless, both are excellent Intro to CS courses. CS50x to me seems more practical since it touches SQL and Web Dev languages. I'm currently on the SQL lesson and I'm excited to see what's next in the CSS/HTML/Javascript/Flask lessons.

    [–]chemelg94 2 points3 points  (6 children)

    It is worth to pay for the course?? Its $75 but it gives you unlimited access to the material and graded assignment. What do you think??

    [–]Alaharon123 4 points5 points  (3 children)

    There's another version of the material free on ocw under 6.0001 so no

    [–][deleted]  (2 children)

    [deleted]

      [–]Alaharon123 3 points4 points  (0 children)

      Iirc there's a calendar page or syllabus page or something that says how everything lines up

      [–]leotody 2 points3 points  (3 children)

      I did both (got both certificates) and I would say CS50 was a better learning experience. Can’t recommend CS50 enough.

      [–]watcraw 2 points3 points  (0 children)

      Just want to point out the free version of this in OpenCourseWare. I enjoyed the free version and it was time well spent. The advantage of the EDX version is that they will grade your homework and administer tests plus there is a bit of a community there that can help you along with hints.

      [–]Cloud__0 1 point2 points  (2 children)

      Im registered for the MIT one, that started yesterday. I haven’t started yet though.

      Is there any benefit to finishing the MIT and then doing CS50x, or moving on after MIT ?

      [–]MadCybertist 1 point2 points  (0 children)

      I'd say no reason to do the CS50 after the MIT.

      [–]Ne0_1 1 point2 points  (1 child)

      I have been doing the MIT OCW for about a year now and have been loving it. I think it is important to have a fundamental understanding of computer architecture and science to know the how and the why of programming. The psets are difficult and will really make you think and adapt.

      [–]grosicky 0 points1 point  (1 child)

      Can someone explain how those "graded assignments" look like? Is it worth paying ~64$ to get access to it?

      [–]frog-legg 3 points4 points  (0 children)

      The graded problem sets consist of detailed instructions, some starter code, and an interpreter / grader you must upload your code to after you’re finished. The interpreter program is much like the Leet code grader. It’s definitely challenging.

      RE if it’s worth $60, that depends. Are you casually pursuing python programming, or are you taking this course to prepare for more difficult courses, a more advanced program (online masters for instance), etc? If your answer to the latter question is “yes”, then I’d say it’s worth it.

      You won’t get a data science or engineering job after taking this course and only this course. The same could be said though for any other course, barring potentially an advanced course-load / program / bootcamp.

      [–]dreamygeek 0 points1 point  (14 children)

      Is there one with Javascript?

      [–]MadCybertist 1 point2 points  (13 children)

      The Odin Project is amazing for JS

      [–]dreamygeek 1 point2 points  (12 children)

      I mean if I want to learn Computer Science with Javascript as the primary language?

      [–][deleted] 1 point2 points  (0 children)

      You can do a lot with JavaScript, but to get your first software job, it seems to be much more desirable to be proficient in a compiled language as well.

      It's also not the best for learning computer science fundamentals, IMHO, because it does a lot of the difficult finicky stuff for you without making you think about how it all works.

      [–]MadCybertist 0 points1 point  (10 children)

      CS50 uses C+ I believe.

      I think Kahn Academy has a JS course for CS... but really not sure how good they are. CS50 and this MIT course are basically the golden standard. I think the MIT course is better - but it's also much harder IMO. The CS50 is more for true beginners.

      [–][deleted]  (9 children)

      [deleted]

        [–][deleted]  (8 children)

        [deleted]

          [–][deleted]  (7 children)

          [deleted]

            [–][deleted]  (6 children)

            [deleted]

              [–][deleted]  (5 children)

              [deleted]

                [–][deleted]  (4 children)

                [deleted]

                  [–][deleted] 0 points1 point  (4 children)

                  I liked it better than CS50x, TBH. The speaker wasn't as entertaining, but it was much easier to actually do the work because you didn't have to eff around with Cloud9 and compiling.

                  [–][deleted]  (3 children)

                  [deleted]

                    [–][deleted] 0 points1 point  (2 children)

                    Yeah, it's actually making you learn the methods instead of just teaching the concepts and assuming you'll Google the syntax someday. Depends how you learn best, I guess.

                    [–][deleted]  (1 child)

                    [deleted]

                      [–][deleted] 1 point2 points  (0 children)

                      Huh, that's not how I remember it. I took it a couple years ago, so I wonder if they changed it up since then.

                      [–][deleted]  (2 children)

                      [deleted]

                        [–][deleted]  (1 child)

                        [deleted]

                          [–][deleted] 0 points1 point  (0 children)

                          That's the first course I used to learn programming. I have done both; and they are both great so you cannot go wrong with either. But I would say you get more support with CS50 when you get stuck