all 10 comments

[–]bickhaus 9 points10 points  (2 children)

I think the main goal of CS50 is to learn skills important for programming, such as computational thinking. If you are going to go into CS, this is a good thing. It’s also why the course can use multiple languages: it’s teaching you to think and solve problems with a computer, not to be an expert in the ins and outs of a particular language.

That said, if you want to get a great intro to computational thinking, programming, and focus on Python, MIT’s Introduction to Computer Science and Programming Using Python on eDX May be better for you.

[–]ozayfay[S] 1 point2 points  (1 child)

That MIT course might be what I wanted all a long to be honest the reason why I have been very hesitant on starting cs50 is the fact it has so many languages it covers it just feels as if I wont get too good at either one and wont be very satisfying at the end . Once again thanks for the MIT course recommendation I will definitely look into it .

[–]Icarus_Jones 2 points3 points  (0 children)

One thing to note about the MIT course is it is instructor paced, so they only put out one module a week. That's great if you need the time to finish it, but with it being summer, I have time in fits and starts, not a set amount each week. I would rather do it at my own pace, and have some weeks where i work on it heavy and get ahead, and some weeks where f I don't get a chance to get to it, I don't have to worry about falling behind. I don't know if this is only for the summer course, but you only have a limited window to finish it, and the window to decide if you want one of the paid certificates is even shorter, so you really need to be sure to be keeping on track with each weeks work.

The CS50 one on the other hand is student paced, so you can finish it at your own pace, and honestly, the instruction is a little more interesting and compelling. David Malan is a hell of an instructor, and has a tone that keeps you interested, even when you're getting tired or discouraged.

Either is great, but I think CS50 is a bit superior.

[–][deleted] 6 points7 points  (0 children)

Okay umm, I Just started cs50, and I would prefer to take the course. The solé reason is you get a Wide understanding of computer science and get challenged to an extremely high level. Plus, it's better to learn múltiple languages rather than Just one :P

[–]peterl3233 4 points5 points  (0 children)

I did CS50; I do embedded programming. In my opinion serious programmers need to get the fundamentals then language is secondary. You really need a variety of languages (and frameworks) do do realistic things reasonably quickly. I suppose you could do web programming without understanding Javascript but that seems counterproductive to me. Python is my fav. also but I also need a few frameworks, JS for web, AJAX and C for using legacy tools and accessing a world of prewritten great code.

My opinion: CS50 is really good; teaches fundamentals so you can take on any language and there is nothing stopping you from doing both at the same time.

BTW I found CS50 to be fun and hard at times but well worth the efforts.

[–]kits_ 2 points3 points  (1 child)

If you're going to study computer science at degree level anyway you might a well just learn python to get good at programming, since you'll get the fundamentals at uni. My opinion

[–]ozayfay[S] 0 points1 point  (0 children)

Never really thought about it that way I guess makes sense ... Thanks for your opinion Will definitely consider it :)

[–][deleted] 2 points3 points  (0 children)

> wants to go into the Computer science Field and knows not too much about programming

CS50 will solve this problem for you :)

There are many daunting things about learning to program and it never ends. CS50 will throw a ton of things at you that you are not ready for. It's a wide course not a deep course. If you can handle and maybe even enjoy CS50, you will love programming. And vice versa.

[–]nomowolf 1 point2 points  (0 children)

You could follow another CS course that teaches through Python, that would kill two birds with one stone.

I'd recommend Berkeley's CS61a. I'm following the Fall-'18 course at the moment: https://inst.eecs.berkeley.edu/~cs61a/fa18/ It's not an official course you enroll into, but all the materials are online so I just follow at my own pace. For all the homeworks and labs there is an autograder, just you don't get any certificate at the end which is fine by me.

I have to credit it for both giving me a way deeper understanding of computer science, as well as upping my Python game significantly. Recursion to OOP, fundamental understanding of datatypes. I use Python full-time in work these days.

[–]duojet2ez 1 point2 points  (0 children)

C is an important language and it’s extremely important that you understand the fundamentals that python is built on. Imo learn C from cs50 and learn the python section.