Live data from Hacker News

Paul Graham on SICP (2000)

amazon.com

101–110 of 141 posts

Re: Paul Graham on SICP (2000)

#101
post #60
post #2

I first read SICP after 25 years of professional development, and while I didn't learn anything new I did see things in a whole new light. I think it would have been really useful to have read the book 25 years ago: I think you're going to benefit from having a few years of real-world development experience before reading this book. The profundity, impact and applicability to your work will be much greater. Highly re…

> I first read SICP after 25 years of professional development, and while I didn't learn anything new I did see things in a whole new light. How is possible that you read the whole book and didn't learn anything new?

>How is possible that you read the whole book and didn't learn anything new?

For one, it's not a book on anything state of the art. It describes very well known concepts and techniques.

It's more of an introduction to programming and functional concepts and such than something where someone with 25 years of experience or a CS degree will learn much new from.

Re: Paul Graham on SICP (2000)

#102
post #80

Earlier quoted context omitted.

Studying SICP in Python is kind of like reading the Odyssey via Google Translate. You'll get the gist of it, but you won't feel the earth move. Python is a "Lisp lite" and the parts of Lisp that Python leaves out or cripples are incredibly important.

>>Python is a "Lisp lite" More like "Ruby lite". You will likely do more Lisp in Perl than you will do in Python. In fact the whole point of Python is not to be like Lisp.

No that is not the point of Python. The point of Python was to create a language which was simple, readable and maintainable, easy to learn for beginners, but not limiting. It was the first mainstream language (I believe) where the design was informed by actual usability testing rather then just subjective opinions.

Re: Paul Graham on SICP (2000)

#103
post #100

I have a copy of SICP sitting on my shelf right now. I've really wanted to get started on it, but I must say that it seems like the kind of book that would take hundreds of hours to get through (with all the exercises, etc). Is that true? Roughly how long have people taken to get through it?

I worked through the book in my spare time some years ago, and yes it probably took me hundreds of hours. I don't know the exact amount of time, but it was definitely in that range. I did not have any CS or math background, but a lot of practical programming experience. I was absolutely worth it.

I did not watch any of the lectures, just worked through the book, so I can't say if watching the lectures will make it easier or just take more time.

Re: Paul Graham on SICP (2000)

#104
I came to SICP from a totally different path. In 1996 I started programming Scheme and developed my own library for matrix calculus and for symbolic calculus. A few months later I had a copy of SICP in my hands. All the things I did previously on my own now were dealt with in a more systematic and profound way. - Many concepts that I learned from that book became important twenty years later in modern programming languages. Closures, immutability, higher order functions, functions returning functions, etc

SICP was a very profound experience. I still have that copy on my book shelf.

Re: Paul Graham on SICP (2000)

#105
post #103
post #100

I have a copy of SICP sitting on my shelf right now. I've really wanted to get started on it, but I must say that it seems like the kind of book that would take hundreds of hours to get through (with all the exercises, etc). Is that true? Roughly how long have people taken to get through it?

I worked through the book in my spare time some years ago, and yes it probably took me hundreds of hours. I don't know the exact amount of time, but it was definitely in that range. I did not have any CS or math background, but a lot of practical programming experience. I was absolutely worth it. I did not watch any of the lectures, just worked through the book, so I can't say if watching the lectures will make it ea…

Thanks, good to know how much time I need to apportion.

I'm trying to find a way that I can fit it around work/family schedules and not let my concentration go too stale. I'm thinking of trying for an hour a day, but that feels so prescriptive...

Re: Paul Graham on SICP (2000)

#106

Earlier quoted context omitted.

Not at all. It was written as an introductory text for freshman computer science students with no prior exposure to programming (much less a Lisp or Lisp-like language). Just keep in mind that the students in question were at MIT. :-) The book gets very deep (note some of the things that Paul Graham says in his review, and note who is saying those things). Be prepared to expend a lot of challenging brainwork to get t…

Even at MIT a lot of people struggled with it because they threw so much at you so quickly, and it's since been replaced with a Python-based intro course.

It is definitely challenging and I'm not sure it is appropriate for beginners unless they are geniuses. But the challenging part is not learning Scheme (which is even simpler than Python if not quite as nice to read), the challenge is it works through a lot of computational topics (implementing an interpreter, lazy evaluation, an object system, a logic language, etc.) in a quite compact format.

Re: Paul Graham on SICP (2000)

#107

>> Yet SICP, which is pretty much the bible of our world, has only three? pg posted his review on May 20, 2000, when it had 3 stars. From then till today, the book has 4.5 stars. What must have caused this change of opinion?

Well he suggest himself it is due to annoyed students. Since apparently the book is not used as much in introductory classes anymore, less people are forced to read it before they are ready.

Re: Paul Graham on SICP (2000)

#108

I can't understand why "694 people found this helpful". It's not a very good review or even a review at all. The only review-like part of it is "I still don't feel I have learned everything the book has to teach." which is very cryptic. Why doesn't Paul Graham feel like he has learned everything from the book? Is it because the book has a huge amount to teach and it isn't possible to consume it all in a short period…

I have the feeling anything PG says these days is applauded w/o proper reflection. Maybe it’s just me, but I have the feeling most of his thoughts are quite profane

I think you are only half right. I don't know him, but from his online writings, he seems to be a guy who does have a clue, has been around, and has some good insights. But you are correct that he is hero-worshiped more than such things normally deserve. Like everyone else, he is a person whose reputation online might not be in sync with who he is on a personal level. But that is the nature of the internet, and not a reason to lash out at him personally.

Re: Paul Graham on SICP (2000)

#109
post #102
post #80

Earlier quoted context omitted.

>>Python is a "Lisp lite" More like "Ruby lite". You will likely do more Lisp in Perl than you will do in Python. In fact the whole point of Python is not to be like Lisp.

No that is not the point of Python. The point of Python was to create a language which was simple, readable and maintainable, easy to learn for beginners, but not limiting. It was the first mainstream language (I believe) where the design was informed by actual usability testing rather then just subjective opinions.

>>The point of Python was to create a language which was simple, readable and maintainable, easy to learn for beginners, but not limiting.

Adding limits to programmer thinking and creativity is the fundamental design principles of Python.

>>It was the first mainstream language (I believe) where the design was informed by actual usability testing rather then just subjective opinions.

That's actually BASIC.

Python and BASIC come from the same Philosophy.

This is what Edsger W.Djikstra has to say about Basic:

It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.

Re: Paul Graham on SICP (2000)

#110

> Let's see if we can put this in terms that the undergrads will understand -- a problem set It would be more accurate to say "in terms that MIT/Stanford/Ivy undergrads will understand", considering most universities just call it "homework". Since that's the background Paul and many of his colleagues come from, it's understandable. However, as a CS undergrad at a more run-of-the-mill university, it's a bit discouragi…

lol what are you talking about. what a thing to interpret as a "micro-aggression" or indicator of "class-divide". Google the term problem set and you'll see plenty of schools that aren't ivies.
Post reply on HN