For Algorithms, I know the amount of materials available online can be overwhelming, so here's an alternative: get a copy of "Algorithms, 4th Edition" [1] from Sedgewick and Wayne, and work through it cover to cover, ignoring any other resources. This book has very little in the way of prerequisites, and it covers a lot of fundamental algorithms and a little bit of Math, but it is a lot more accessible and didactic t…
Second the recommendation to read Algorithms over CLRS; it’s significantly nicer in part because it uses actual code with good variable names instead of its own strange psuedocode dialect.
Ask HN: How do I choose the right resource to learn CS fundamentals?
31–40 of 93 posts
Re: Ask HN: How do I choose the right resource to learn CS fundamentals?
#32> I am attracted by the resources/online/books posted by courses in UCB/Princeton/MIT/Stanford/CMU. At the same time I get boggled down and overwhelmed that I have soooooooooo many materials to cover. I think you'd be better served by doing a lot of courses from the same institution. If you choose courses that were designed to fit together, you'll have a lot less wasted time from overlapping material or holes from mi…
while I generally agree with your idea, a little counterpoint: it depends on a way you consume those materials. If you do that thoroughly, actually read and analyze source codes or examples, try things on your own as instructed, complete excercises and so on there is absolutely no point in doing multiple thins on the same topic. But if your preferred method is fast skimming, skipping some excercises and so on then skimming two or three books/videos/whatever on the same subject could make some sense. The latter method is very chaotic and is probably not the best idea to apply it for learning the fundamentals, but I just wanted to point out that such a learning technique does exist and sometimes makes sense, especially if just the general understanding is your goal.
Re: Ask HN: How do I choose the right resource to learn CS fundamentals?
#33For Algorithms, I know the amount of materials available online can be overwhelming, so here's an alternative: get a copy of "Algorithms, 4th Edition" [1] from Sedgewick and Wayne, and work through it cover to cover, ignoring any other resources. This book has very little in the way of prerequisites, and it covers a lot of fundamental algorithms and a little bit of Math, but it is a lot more accessible and didactic t…
Second the recommendation to read Algorithms over CLRS; it’s significantly nicer in part because it uses actual code with good variable names instead of its own strange psuedocode dialect.
Its also focused on how to solve problems than Sedgwick. Algorithms explains some elementary algorithms that noone is ever going to code themselves. CLRS teaches you what to look for in algorithms for solving particular problems.
Re: Ask HN: How do I choose the right resource to learn CS fundamentals?
#34I'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…
In contrast, I like the MIT/Princeton/UCB courses since they use an easier language to start with and also introduce C in the later courses for systems programming.
Re: Ask HN: How do I choose the right resource to learn CS fundamentals?
#35For Algorithms, I know the amount of materials available online can be overwhelming, so here's an alternative: get a copy of "Algorithms, 4th Edition" [1] from Sedgewick and Wayne, and work through it cover to cover, ignoring any other resources. This book has very little in the way of prerequisites, and it covers a lot of fundamental algorithms and a little bit of Math, but it is a lot more accessible and didactic t…
I did the intro course from the sedgewick and wayne from coursera along with their book and loved it. Would recommend it to anyone who likes a decent challenge while learning. The book is pretty dense.
Re: Ask HN: How do I choose the right resource to learn CS fundamentals?
#36Of the intro-level courses I'm only familiar with CMU's 15-112, which I took as my own intro to programming a few years ago [1], and UC Berkeley's CS 61A (from hearing friends talk about it and looking at their assignments). But given the choice between just those two, I would definitely go with 112. Compare the second homework assignments, which are supposed to be given after 2 weeks (~6 days) of instruction: 15-112…
Re: Ask HN: How do I choose the right resource to learn CS fundamentals?
#37Being self taught, I often wonder the same thing. I don't know that this is "THE ANSWER" but I was impressed by the job done here of curating a bunch of disparate CS materials (including some from the universities you mention) into some kind of structured learning approach https://github.com/jwasham/coding-interview-university As the url suggests, it's got an agenda about interview prep but the materials do not - the…
Re: Ask HN: How do I choose the right resource to learn CS fundamentals?
#38For Algorithms, I know the amount of materials available online can be overwhelming, so here's an alternative: get a copy of "Algorithms, 4th Edition" [1] from Sedgewick and Wayne, and work through it cover to cover, ignoring any other resources. This book has very little in the way of prerequisites, and it covers a lot of fundamental algorithms and a little bit of Math, but it is a lot more accessible and didactic t…
I really do not recommend videos/online classes for algorithms. The primary reason is that if you are learning them for the first time, there is a lot of information to get through and using the book format will force you to slow down and ensure you are learning things at your own pace.
I also highly recommend "Grokking Algorithms" as a easy primer. It seems a little "basic", but it really is a great way to quickly pick up the basics of algorithms, an a great refresher. I used it in parallel to TADM and helped me get unstuck a quite a few times.
Re: Ask HN: How do I choose the right resource to learn CS fundamentals?
#39Re: Ask HN: How do I choose the right resource to learn CS fundamentals?
#40Going through hackerrank tasks is a great way to practice. Also Cracking the Coding Interview and online interview questions.