Live data from Hacker News

Ask HN: How do I choose the right resource to learn CS fundamentals?

news.ycombinator.com

91–93 of 93 posts

Re: Ask HN: How do I choose the right resource to learn CS fundamentals?

#91
post #20

The two courses that give the basic CS foundation needed are: nand2teris.org and cs50.net See if you can solve all the projects & assignments in these courses. These cover a lot of ground. Once you are done with these two courses end to end, you will get a fair understanding of many of the computing big ideas.

If the student knows almost nothing, these are really good as they cover the most simple things. If you already programming, they may be too basic.

Yeah I think CS50 is too basic. The C part is interesting though, has some minor projects that worth working on. For anyone who has some programming experience (whatever language), I think CS61A is a better course.

I really wish there is a course that uses C (like first 4-5 classes in CS50) and uses C ONLY and then go as deep as possible, similar to CS61A, but apparently on other topics (one system programming project?)

Re: Ask HN: How do I choose the right resource to learn CS fundamentals?

#92
post #25

I'm surprised you didn't list CS50. That's one of the best intro to programming / CS courses around. You can enroll for free at: https://www.edx.org/course/cs50s-introduction-to-computer-sc... I never went to University and didn't take a lot of CS courses but since I create web development video courses I wanted to be able to reference other courses to folks who asked so I took CS50 a few years ago to vet it. It was…

CS50 should really stick with C and go as deep as possible. But it's good to learn multiple languages in the same course -- even then I prefer they put a functional language like Scala instead of Python. I mean once you know C it's really easy to pick up Python by yourself.

I'd say 50% C and 50% Functional, and remove the web part, really superficial and boring. And then go as deep as possible. Can even intertwine the C/Functional part, e.g. write an interpreter for a subset of the functional language in C as the last large project.

Re: Ask HN: How do I choose the right resource to learn CS fundamentals?

#93

There's an abundance of material online to get through an entire CS program on your own, if this is your desire. The problem I've seen with self-study, unless you are disciplined, chances are you will not stay the course, even if you follow a plan, unless you're single, with plenty of time/energy to burn toward a program. My suggestion would be to enroll in a college and pay for your education. This way, you'll be mo…

I actually second this. I found it struggling to keep the pace, and the thing with study is, if you wait for a few days and try to pick up, you usually have to start over from a previous "milestone", which really sucks. That means unless you are really disciplined, it's difficult to learn the whole stuff by yourself.

But I think at least one should be able to learn 2 topics by oneself: A programming language, Basic data structure and algorithm as well. Then he can learn the others leisurely.

Post reply on HN