Structure and Interpretation of Computer Programs (1996) [pdf]
I took a one-week SICP course with 5 or 6 other professional programmers last year. It was amazing. I wrote about my personal motivation for doing so here:https://amontalenti.com/2018/08/26/sicp-expandingAs for an update: SICP was as good as I expected and definitely makes a professional programmer regain some love for the art and magic of computer science. (However, the book is a hard read without a guide. But it's really fun if you alternate between coding and reading, by using a local Racket & DrRacket install.)One can find recorded courses from MIT with the SICP authors on YouTube, so that may be one way to do this from home.Hal Abelson was recently interviewed about the lasting influence of the book in this podcast. It's a good conversation:https://pca.st/wmrdiyvq