If you could only have one programming book on bookshelf what would it be?
softwareengineering.stackexchange.com
softwareengineering.stackexchange.com
it's such a complete book, i always recommend to any backend developers.
I’d never read it, but it would impress some people whilst I beat ChatGPT into submission.
Even the best programming book in the universe won’t help if the environment, leadership and team don’t support your efforts.
Only answer I would choose if only one book. I don't care if it's slightly dated, programming fundamentals are the same.
There's more real material in that slim book than in many a thousand page doorstop out there, yet at the same time it's easy to follow.
Is it the one you consult often because it has so much timeless or deep knowledge?
The one you loved the most so far and has a sentimental value?
The one that is most impressive as a background in online meetings? :)
The one you most want to read but haven't gotten around to yet?
I guess we'd get different and less conflicting answers here if everyone interpreted the question in the same manner.I am not even joking.
I don't need to "learn" programming anymore (and if I did, I would use something interactive, not a book), and thus not falling into rote monkey-coding, but questioning "what am I doing here?" and "how can this be done different ways?" are much more important.
Alice gives you that. I recommend Martin Gardner's "the annotated Alice", which explains a lot of things that us non-Victorians might have missed otherwise.
"Oh, that's the name of the song, is it?" Alice said, trying to feel interested.
"No, you don't understand," the Knight said, looking a little vexed.
"That's what the name is called. The name really is 'The Aged Aged Man'."
"Then I ought to have said 'That's what the song is called'?" Alice corrected herself.
"No, you oughtn't: that's quite another thing! The song is called 'Ways And Means': but that's only what it's called, you know!"
"Well, what is the song, then?" said Alice, who was by this time completely bewildered.
"I was coming to that," the Knight said. "The song really is 'A-sitting On A Gate': and the tune's my own invention."
Get a clear understanding of what's going on in that passage, and pointers will never cause you any difficulties.
48. The best book on programming for the layman is
"Alice in Wonderland"; but that's because
it's the best book on anything for the layman.
-- Alan PerlisI should have known this earlier, when I stopped buying textbooks in undergrad.
The textbooks I still keep on my shelf are deeper than programming and are books I still didn’t reach the end of during university (abstract algebra, algorithms, compilers, statistical methods).
I find that when I make them available within eyesight, I will occasionally take them down and look in them for answers; I would not have asked myself those questions with the books not being present.
The other programming book that I really learned something from was Physically Based Rendering, the fourth edition recently featured here[2]. It had, for me, a really good mix of math and how to actually implement the math, and I found the literate programming style made it very easy to follow[3].
[1]: https://www.goodreads.com/book/show/539154.Assembly_Language...
[2]: https://news.ycombinator.com/item?id=38110448
[3]: https://pbr-book.org/4ed/Introduction/Literate_Programming
Fundamental topics when you don't know anything are a different problem. But you've outgrown those.
For me, it'd probably be the K&R book. C will never die.
It's a huge book covering a lot of ground, while on the same time being very approachable for anyone with some experience of linux trying to go further, and last but not least it's extremely enjoyable to read.
This book makes you feels like you're in same room as very fun and knowledgeable people showing you the ropes. It's colorful, and not afraid to be opinionated sometime.
but if i had to pick a wise book about software development, i would go with "Rapid Development" by Steve McConnell: https://www.amazon.co.uk/Rapid-Development-Taming-Software-S...
"The War of Art" by Pressfield
On days where you question your IQ it'll help keep you sane and grounded.
Another design patterns book that is much more enjoyable is Game Programming Patterns [0]. Though of course focus is games.
Would be nice to have a more “entertaining” version of the GoF book, discussing same patterns.
———
and
https://softwareengineering.stackexchange.com/questions/1487...
And then I switched into Python, where you just don’t need majority of those patterns anyway.
So I wouldn’t recommend this book 15 years ago, let alone today. And as the only book? Never :)
So basically it doesn't cover AI tools well enough?
Ask HN: Top 10 Timeless Software Books That Changed Life as Software Engineer?
To be accepted, you need to post the whole text of the book.
But, I would probably choose the Camel Book or Perl Cookbook.
Or did you just use this to push politics?
And personally, I always chafed at the “Uncle Bob” moniker. I’m a grown-ass man, and I’m not calling some random guy “Uncle Bob” unless he’s related to me. Calling yourself “Uncle Bob” seems creepy, and it makes me feel like I’m supposed to look up to him by default. No. I’d rather look to people like Rich Hickey or John Ousterhout, who have no similar pretensions. They’re just experienced practitioners sharing what they’ve learned.
His attitude towards development has always been way too dogmatic with not nearly enough focus on trade offs. It's probably not a coincidence that his politics trend that way too but it doesn't affect how good or bad his advice is.
edit: and oops, someone has recommended clean code.
and again: i remember when he tried to set himself up on stackoverflow (a while back, when i was a front page contributor)- he got pissed on from a great height.