Live data from Hacker News

Ask HN: After SICP, what next?

news.ycombinator.com

1–10 of 37 posts

Ask HN: After SICP, what next?

#1
One of my friends just finished working through SICP (progress here - http://lawfulsamurai.blogspot.com/search/label/SICP, - the last few sections still have to be updated) and asked me for reccomendations for future work.

I thought of telling him to get really strong on algorithms etc (perhaps by working through Tardos/ Cormen et al, doing all the exercises like he did for SICP), but thought I'd tap the good folk of HN for better (or different) suggestions. Working through CTM for example is an option (another of my friends was doing this http://ctm-himanshu.blogspot.com/ but he didn't quite complete it).

(This has nothing to do with his day job which is java/python/Django. Just something for him to work through when he has a few hours and learn cool things.). Any suggestions gratefully accepted!

Thanks in advance.

Re: Ask HN: After SICP, what next?

#2
Did he enjoy sections 4 (Metalingustic Abstractions) and 5 (Register Machines)?

If so, he'd probably be interested in both these books. They are quite hefty, but seem to be goldmines (so far, I'm only just getting started on them myself).

http://research.microsoft.com/en-us/um/people/simonpj/papers...

and

http://research.microsoft.com/en-us/um/people/simonpj/papers...

Both books cover much of the same ground. The first one is heavier on theory, while the second one reads a LOT like SICP. Currently I'm working through the second one and using the first one when I want more in-depth info on a certain topic.

Re: Ask HN: After SICP, what next?

#4
It depends on what he wants to learn.

I got more out of How to Design Programs than I did from SCIP. Though to be fair I read it before SCIP:)

http://www.htdp.org/

On the other hand if he wants to learn Lisp then I really enjoyed Lisp in Small Pieces though its not a quick read. It consumed almost all of 2005 for me:)

Re: Ask HN: After SICP, what next?

#7
I'm personally going to work through Programming Language Pragmatics. I want to have a better foundation in language paradigms, plus fill a hole in my education (no, zero, nada, real exposure to compiler design).

I'll also be learning more about Lisp concurrently.

Sadly, none of this has much bearing to my day job, but when I have an hour or two it seems like a nice way to spend it. At that pace, I plan to finish sometime in 2015 . . .

Re: Ask HN: After SICP, what next?

#9

If your friend wants to a) get really strong on algorithms, b) put in some hours, and c) actually do the exercises, I'd recommend Knuth. It's worth the effort.

I haven't read Knuth but I recommend http://www.amazon.com/Algorithm-Design-Manual-Steve-Skiena/d...

From what I understand Knuth uses MIX assembly language to imlpement his algorithms. Contrast this to the Skiena book which uses C++. I found this to make it very practical.

Though to be fair, I don't think it offers near the depth of the Art of Computer Programming:)

Re: Ask HN: After SICP, what next?

#10
Introduction to Information Retrieval: http://www.amazon.com/dp/0521865719/

Convex Optimization: http://www.amazon.com/dp/0521833787/

Foundations of Statistical Natural Language Processing: http://www.amazon.com/dp/0262133601/

Read Peter Norvig's review for Foundations of ....http://www.amazon.com/review/R3GSYXSKRU8V17/

I haven't read any of these books, yet, highly recommended by some friends.

Post reply on HN