SICP uses Scheme, which I don't mind. My main concern is that it's an old book. Are there ideas and concepts not discussed in the book which are crucial in today's programming landscape? Will I be better off reading a book that uses Python in the first place?
Ask HN: Is SICP/HtDP still worth reading in 2023? Any alternatives?
1–10 of 103 posts
Re: Ask HN: Is SICP/HtDP still worth reading in 2023? Any alternatives?
#2i say this as someone who has not read either of those books and doesn't even know what the acronyms refer to: knowledge is good. it'll take you many years to re-learn the knowledge that is already written in those books if you don't read them.
there is a practical limit to how much knowledge you can just throw into your brain, but these surely must be some important and well-renowned books if you throw out the acronyms without clarification, so i doubt the ROI could possibly be negative
Re: Ask HN: Is SICP/HtDP still worth reading in 2023? Any alternatives?
#3It may not align with your ambitions as a programmer, but math and functional programming still apply.
Re: Ask HN: Is SICP/HtDP still worth reading in 2023? Any alternatives?
#4There are video lectures you can use to accompany the book: https://youtube.com/playlist?list=PLE18841CABEA24090
Also, I highly recommend the courses How to Code: Simple Data amd How to Code: Complex Data on edX that are based on HtDP.
Re: Ask HN: Is SICP/HtDP still worth reading in 2023? Any alternatives?
#5Re: Ask HN: Is SICP/HtDP still worth reading in 2023? Any alternatives?
#6Re: Ask HN: Is SICP/HtDP still worth reading in 2023? Any alternatives?
#7Do the exercises too!
Re: Ask HN: Is SICP/HtDP still worth reading in 2023? Any alternatives?
#8Hopefully someone else can provide a review?
Re: Ask HN: Is SICP/HtDP still worth reading in 2023? Any alternatives?
#9SICP provided a different way of understanding programming. I enjoyed the class, did well, and became a big fan of Scheme for quite some time.
But the text was written for a different era, one dominated by C, PASCAL, and COBOL and when parallel programming was rare. In a time where almost all programming required working with low-level, basic programming constructs designed around the CPU's architecture, using Scheme to teach future non-academics was a great way to open their eyes to different ways of thinking about programming.
But it's close to the 40th anniversary of the first edition and past the 25th anniversary of the second. A four core CPU is low(er) end. Phones have 4+ cores. Even watches have dual-core CPUs. Ruby, Java, JavaScript, Python, Go, Rust, and a zillion frameworks are all available and widely used.
It wasn't possible to get performant Scheme on the hardware of the time. Now that we have the hardware, other languages have taken what Scheme could do and done it better.
Are the concepts useful? Certainly. But if your goal is to be a better programmer now, I'd pick a different book. If you're a Python programmer, pick a (modern, recent) Python book. If you're a JavaScript dev, then a (modern, recent) JS book.
If SICP was teaching woodworking, it would be the no power tools, start with a standing tree method. It's fascinating, it's neat, there are cool concepts to learn. But it's of little relevance, day-to-day, in a world filled with tools that let you focus on the goal instead of a million tiny details.
Re: Ask HN: Is SICP/HtDP still worth reading in 2023? Any alternatives?
#10I haven't started it yet, but I have great expectations of ”Software Design for Flexibility: How to Avoid Programming Yourself into a Corner" by Hanson & Sussman. Hopefully someone else can provide a review?