3 ms·
I'd put SICP on the better read when dead list. Fundamental Algorithms shouldn't be read anymore but at least I liked it when I read it. SICP was the text in 61
by CalChris 10y ago
I'd put SICP on the better read when dead list. Fundamental Algorithms shouldn't be read anymore but at least I liked it when I read it. SICP was the text in 61A at Berkeley but there were no assigned readings from it. It was meant to be worshipped rather than read. I rather like the Dragon book but compilers have come along. The 2nd edition is an improvement.
I'd add that EE20N used a Berkeley written text, Structure and Interpretation of Systems and Signals. I was in the minority and liked that book. I still have it.
- smikhanov 10y agoI read SICP for the first time in February this year, 15 years into my programming career and 12 years after graduating from a CS department. It's a very easy and enjoyable read, even the code blocks are readable, unlike coding examples in most (all?) modern programming books. I literally loved every page of it. There's just something special in the way material is presented in SICP, in the order of topics, in the text's tone: it remains enthralling without being difficult, it teaches without being indulgent. It absolutely is meant to be read.
- sotojuan 10y agoThe tone of the book is that of learning programming and computer science for enjoyment, learning, and fun. That's what makes it timeless. A "stronger" example of this tone would be The Little Schemer series.
- catnaroek 10y agoSadly, SICP is lacking in mathematical rigor. Often, the book rushes to give broken code snippets based on insufficiently deep analysis of the problem at hand (e.g., interval arithmetic in chapter 2), and the exercises consist in fixing the code after taking additional information into consideration. It would be preferable to first carefully write a formal specification, and then write the right program without so much trial and error.
- sotojuan 10y agoTo be fair, it was written to be a student's first introduction to computer science. I think it's fine if you don't have to prove everything. Ironically, Chapter 1's reliance on math for examples and exercises turns people off!
- catnaroek 10y agoThis is getting it backwards. The first introduction to CS is precisely when proofs matter most. I agree that, ultimately, not everything has to be proven correct. Often there isn't even a well defined criterion for software correctness. But proofs absolutely matter in certain domains (algorithms, databases, compilers, etc.), and there's no way you can be ready to prove things about moderately tricky programs if you don't have practice proving things about toy ones.
- RandomOpinion 10y agoHave to agree with this. Having gotten my education well before SICP became a thing, I fail to see anything special or even particularly interesting about it.
- sedachv 10y agoWhich book do you think is a better introduction to computer science?
- hyperion2010 10y agoHeh, sounds like the classic undergrad approach to textbooks. Having skipped out in CS as an undergrad I am currently reading SICP to fill in gaps that I have missed and have found it to be a great read and the problems to be enjoyable. Frankly, I can't imagine going to class being more effective than reading the text (assuming you do the problems in either case).