Live data from Hacker News

Paul Graham on SICP (2000)

amazon.com

71–80 of 141 posts

Re: Paul Graham on SICP (2000)

#71

I wish they rewrote this using Python code. Maybe someone can take up the mantle on that.

why?

and just to clarify my why, it really bothers me that people who do python tend to only want to do python, as if it's some advanced, modern language and the only choice for doing code if you don't like c# or java or c++. it's well over two decades old, which isn't a problem in and of itself, but python ignored and has continued to ignore better programming language designs both before and after it was created. how about you learn something new, and just use a lisp or scheme, just as the course and book does, like racket? and if one doesn't want to use a lisp or scheme, then an ml language like sml, f#, or ocaml would be the next best choice.

python is a scripting language. it should have stayed that way, but instead, it's used to build large systems and to teach programming to people. it's a real shame.

and to conclude, the entire point of SICP is that you don't need much of a language. all you need is a small collection of fundamental ideas in your language. and as it turns out, python does not even have those.

Re: Paul Graham on SICP (2000)

#72

Earlier quoted context omitted.

>"And, obviously, you've never taken a Beazley course before. " Could you elaborate on this point? I am not familiar with this individual or their classes. Is there something special?

You can see some of David Beazley's presentations on YouTube. He presents regularly at PyCon and other conferences. He's also the author of Python Essential Reference and the editor of Python Cookbook, 3rd Edition. One of my favorite presentations of his that gives a flavor of his instruction style is "Python Concurrency from the Ground Up" at PyCon 2015: https://www.youtube.com/watch?v=MCs5OvhV9S4 I saw this one liv…

Interesting, thanks for sharing. I would love to hear feedback on how the SICP course is. It looks like his classes are in person only which is unfortunate for those not in the US I guess.

Re: Paul Graham on SICP (2000)

#73

> 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…

i certainly agree there is plenty of systematic elitism out there in the world, but i don't think problem set vs. homework plays a part. haha.

Re: Paul Graham on SICP (2000)

#74
post #56
post #39

Earlier quoted context omitted.

"profound", not "profane, surely?

No, it's clear from the context they meant something negative. I'd put my bets on "mundane".

Yes, you’re smart and I’m German. Profane in German also means mundane. A false friend I guess

Re: Paul Graham on SICP (2000)

#75
post #42

Earlier quoted context omitted.

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

For me Paul Graham is a very rare breed of people that manages the delicated symbiosis between academic Vs entrepreneur - theory Vs real life - gut feeling Vs mathematical analysis. Is overwhelming contribution to the Startup culture will only be well understood by future historical analysts.

[deleted]

Re: Paul Graham on SICP (2000)

#76

I wish they rewrote this using Python code. Maybe someone can take up the mantle on that.

why? and just to clarify my why, it really bothers me that people who do python tend to only want to do python, as if it's some advanced, modern language and the only choice for doing code if you don't like c# or java or c++. it's well over two decades old, which isn't a problem in and of itself, but python ignored and has continued to ignore better programming language designs both before and after it was created. h…

Then rewrite it in Elixir.

Re: Paul Graham on SICP (2000)

#77
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…

>>This comment is for the Scheme-based book. I've never seen the Python-based version.

Recursion is heavily emphasized.

And Python doesn't support tail-call optimization.

Re: Paul Graham on SICP (2000)

#78
post #69

This book gives you a coherent view of computation. It's not just a turing machine that keeps munching instructions. I think this book takes a more dataflow-centric approach. Some people would love it, and I agree this is a good introduction for early CS students. It is focused and compact. That said, I think the enthusiasm surrounding this book is a little bit cult-like. Reading this book doesn't necessarily make yo…

> That said, I think the enthusiasm surrounding this book is a little bit cult-like. Reading this book doesn't necessarily make you a good programmer, because being a good programmer requires much, much more than having a good understanding of computation.

The usual assertion is that it makes you a better programmer, not that it makes you a good one. The reasoning behind this is that the book is pretty unique in giving you practical fundamentals of programming, in a way you wouldn't be exposed to completely elsewhere (especially if all you've learned so far is modern OOP). I'd say it's important today more than ever, given the increasing amount of programmers emerging out of bootcamps.

Re: Paul Graham on SICP (2000)

#79
post #69

This book gives you a coherent view of computation. It's not just a turing machine that keeps munching instructions. I think this book takes a more dataflow-centric approach. Some people would love it, and I agree this is a good introduction for early CS students. It is focused and compact. That said, I think the enthusiasm surrounding this book is a little bit cult-like. Reading this book doesn't necessarily make yo…

> Reading this book doesn't necessarily make you a good programmer

I don't think I've seen anyone claim SICP will make you a "good" programmer. I have seem people claim it will make a good programmer better, though.

Re: Paul Graham on SICP (2000)

#80
post #4

Earlier quoted context omitted.

There is no Python-based version, Abelson and Sussman only produced one SICP based on Lisp. It is unfortunate that there are other courses by people not associated with Abelson and Sussman that have kept the same name but not the material. It is misleading to refer to these as "SICP" as they lack pretty much everything that made SICP great. SICP works on _multiple_ levels, it is not [just] a book about Lisp or a book…

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.

Post reply on HN