CODE Petzold's work still stands as one of the best intros into thinking like a computer
SICP. Tough, even for seasoned engineers. Helps mold your brain and expand your reasoning. Even though MIT switched to python for the class, everybody should learn a lisp. Makes you a better engineer, even if you never use a lisp in production.
The Phoenix Project. Originally published 7 years ago. Unsure if this is far enough in the past to be "classic". But every developer that works on a team with more than two people needs to read this.
Wow, you've got me in there with some pretty impressive company. If you'd told me 10 years ago that I'd be mentioned alongside Dave Thomas, Andy Hunt, and Joel Spolsky in a a round-up, I'd have spit out my coffee. Thanks for the mention of the Expert Beginner posts :D
Oh man, your blog post about expert beginner made such an impact on me and my career!
I hope you'll read this because I'm really grateful I got the chance to read it when I did. I was in a company for which what you describe in the article is the exact description. I am a junior dev, and I thought I was lame and that I would never be a good developper, and that my only way out was to get a project management job as soon as possible.
Since I read your post I quit from that company because I understood I would never learn anything good, I learned a lot from books, and even though I still have a lot to do to be good at what I do, your post was the tipping point where I decided to change my working environment. My clients have been happy about my job since that, and I learned to love coding again!
For developers I would recommed reading The Unicorn Project. It is the "sequel" to The Phoenix Project. The same event but from a software developer's angle rather than ops. Obviously read them both.
SICP is an awesome book. It divides information technology in data and procedures that transforms that data. It simplifies everything when you're dealing with the most common problem we have today, which is managing state. If you keep those two separated, you can reason about your code without having to be a genius.
Blogs
not really part of the original ask, but aren't books just long blogs?
Books
videos
Wow, you've got me in there with some pretty impressive company. If you'd told me 10 years ago that I'd be mentioned alongside Dave Thomas, Andy Hunt, and Joel Spolsky in a a round-up, I'd have spit out my coffee. Thanks for the mention of the Expert Beginner posts :D
Oh man, your blog post about expert beginner made such an impact on me and my career!
I hope you'll read this because I'm really grateful I got the chance to read it when I did. I was in a company for which what you describe in the article is the exact description. I am a junior dev, and I thought I was lame and that I would never be a good developper, and that my only way out was to get a project management job as soon as possible.
Since I read your post I quit from that company because I understood I would never learn anything good, I learned a lot from books, and even though I still have a lot to do to be good at what I do, your post was the tipping point where I decided to change my working environment. My clients have been happy about my job since that, and I learned to love coding again!
Thank you!
It's good :D. I remember reading it when it came out. Sent it to everyone I knew.
@ Erik Dietrich I've just completed reading your post, and I find it very interesting. Thanks @Benjamin for mentioning this.
For developers I would recommed reading The Unicorn Project. It is the "sequel" to The Phoenix Project. The same event but from a software developer's angle rather than ops. Obviously read them both.
SICP is an awesome book. It divides information technology in data and procedures that transforms that data. It simplifies everything when you're dealing with the most common problem we have today, which is managing state. If you keep those two separated, you can reason about your code without having to be a genius.
Excellent list!