Live data from Hacker News

Ask HN: I'm looking for a good book on the fundamentals of CS

news.ycombinator.com

31–40 of 190 posts

Re: Ask HN: I'm looking for a good book on the fundamentals of CS

#32
post #18

For formal resources: You might like the Princeton Algorithms Coursera course: https://www.coursera.org/learn/algorithms-part1 SICP is an amazing book, but I HIGHLY recommend you follow along with a lecture video as the textbook was designed to go along with lectures for electrical engineering computer science students. Brian Harvey's lectures are fantastic: https://www.youtube.com/watch?v=4leZ1Ca4f0g&list=PLhMnuBfGe…

Harvey also has his own book, which is sort of an "intro to SICP". Available free online:

https://people.eecs.berkeley.edu/~bh/ss-toc2.html

Re: Ask HN: I'm looking for a good book on the fundamentals of CS

#33

Based on the description you give, you probably want a Data Structures/Algorithms intro. The canonical Algorithms textbook is Introduction to Algorithms by Cormen et al. The MIT OpenCourseware course on Algorithms -- which includes videos and assignments -- follows along with that book: https://ocw.mit.edu/courses/electrical-engineering-and-compu... Note: In your case, I'll recommend against SICP as a first resource,…

CLRS is great, no doubt about it, but I think Sedgewick is probably friendlier to someone studying on his or her own. Note that there are several versions of Sedgewick, which use different languages (I think there are at least C, C++, and Java versions). I'd go with Sedgewick, then get CLRS and Knuth for use as reference material.

Agreed. Are you aware of any recorded lectures / assignment sets for a course based on Sedgewick? I tend to suggest CLRS because the OCW lectures are so high-quality and most learners want at least the option of watching lectures.

Re: Ask HN: I'm looking for a good book on the fundamentals of CS

#34

For my CS degree, the two classes that were most useful foundations-wise were: 1. Learning how to prove things with math 2. "Baby compilers" machine code, building an assembler, building a simple MIPS compiler, regular expressions, parsing, etc There's a lot of other topics but those two really set the foundation. All algorithms class and data structures are best understood with a mathematical intuition. Not to menti…

> All algorithms class and data structures are best understood with a mathematical intuition.

It's funny, I like to say I program by intuition. Trying to go through algorithms now, many years after college, makes me realize some math shortcuts really help, and I no longer have an intuition for that.

Re: Ask HN: I'm looking for a good book on the fundamentals of CS

#35

Earlier quoted context omitted.

CLRS is great, no doubt about it, but I think Sedgewick is probably friendlier to someone studying on his or her own. Note that there are several versions of Sedgewick, which use different languages (I think there are at least C, C++, and Java versions). I'd go with Sedgewick, then get CLRS and Knuth for use as reference material.

Agreed. Are you aware of any recorded lectures / assignment sets for a course based on Sedgewick? I tend to suggest CLRS because the OCW lectures are so high-quality and most learners want at least the option of watching lectures.

Well, there's apparently one by Sedgewick himself. :-)

https://www.youtube.com/watch?v=1QZDe28peZk&list=PLwwk4BHih4...

I can't vouch for it, as I haven't watched them.

Re: Ask HN: I'm looking for a good book on the fundamentals of CS

#38

For my CS degree, the two classes that were most useful foundations-wise were: 1. Learning how to prove things with math 2. "Baby compilers" machine code, building an assembler, building a simple MIPS compiler, regular expressions, parsing, etc There's a lot of other topics but those two really set the foundation. All algorithms class and data structures are best understood with a mathematical intuition. Not to menti…

As far as math proof books go.. I'd just check the library for something which covers stuff like truth tables in the 1st chapter and then lots of proof strategies (induction, breaking down by cases, contrapositive, proof by contradiction) with exercises. And find somebody to correct your mistakes which you will make XD

I found one! OP, please check out this Mathematics for Computer Science book from MIT. [1]

That book can be found on the Teach Yourself Computer Science page. [2]

The TYCS page says this book is advanced... but they teach this content to 1st years at University of Waterloo.. so really it's just difficult beginner material.

[1]: https://courses.csail.mit.edu/6.042/spring17/mcs.pdf

[2]: https://teachyourselfcs.com/#math

Re: Ask HN: I'm looking for a good book on the fundamentals of CS

#40

Based on the description you give, you probably want a Data Structures/Algorithms intro. The canonical Algorithms textbook is Introduction to Algorithms by Cormen et al. The MIT OpenCourseware course on Algorithms -- which includes videos and assignments -- follows along with that book: https://ocw.mit.edu/courses/electrical-engineering-and-compu... Note: In your case, I'll recommend against SICP as a first resource,…

Note that a 4th edition of this book (frequently referred to as CLRS) is coming out sometime early next year.

So this one? By Cormen, Leiserson, Rivest, and Stein (CLRS)

https://mitpress.mit.edu/contributors/charles-e-leiserson

Post reply on HN