A Programmer's Bookshelf
An anonymous reader writes "With christmas just round the corner I have been looking for gifts for my geek friends. But what book? I recently found a simple page with one person's bookshelf and explain what's good and what's not. What do you think? Whats on a programmer's bookshelf? (or what should be and is not!)"
GEB is simply amazing and really makes you think. It is a large tome but it was well worth the read when I read it in high school. It influenced me musically, mathematically and gave me insight to become a computer programmer.
It's a very common book and can be acquired cheaply on amazon, ebay and the wiki.
I also heavily recommend getting to know this site if you're willing to search through lists of books for good deals.
My work here is dung.
Aside from Knuth, which is more showing off than anything (not that the guy isn't a genius), one of the best algorithms books is Introduction to Algorithms, by Cormen, Leiserson, Rivest and Stein. I'd generally suggest algorithms over language-specific references, although modern class libraries tend to implement the best ones already.
Other than that, I suppose your favourite collection of O'Reilly titles. I find Java in a Nutshell useful, as I prefer the dead-tree version to the online documentation. Many of the books on the webpage are language or library references, which are good, but very dependent on the programmer's interests.
Dilbert books are always good, of course.
Programmers? Hardware hackers? Gamers? Gadget geeks?
0 3/qid=1134394525/sr=8-8/ref=sr_8_xs_ap_i8_xgl/202- 6834711-0899839
..or maybe even "Open Source Game Programming: Qt Games for KDE, PDA's and Windows":6 4/qid=1134395013/sr=2-3/ref=sr_2_11_3/202-6834711- 0899839
/ 0429213&tid=222&tid=6&tid=3
If your friends are into 3D programming or game development, I recommend some books about OpenGL.
I know I want this one, "OpenGL Game Programming":
http://www.amazon.co.uk/exec/obidos/ASIN/07615333
http://www.amazon.co.uk/exec/obidos/ASIN/15845040
If your friends are into hardware hacking, I recommend "Apple I Replica Creation":
http://books.slashdot.org/article.pl?sid=05/03/03
I own this book myself and it's pretty cool, it covers almost all the DIY basics for building an 8-bit computer. How cool is that?
And ofcourse, for the gadget freaks you have ThinkGeek and Nerdorama..
www.6502asm.com - Code 6502 assembly or.. DIE!!
What about the first printing of Kernigan and Ritchie's, "The C Programming language"?
THAT would look nice on a bookshelf.
Nothing But Coupons - Your no-frills site for online coupons and discou
and give them a subscription to O'Reilly's Safari Bookshelf.
A lot more adventure and excitement than I had expected. Also gives a different (sometimes flattering sometimes not) of Apple, Atari and Radio Shack.
"Enjoy what you're doing! If it becomes drudgery, you're doing it wrong!" - Jim Butterfield
The New Turing Omnibus : Sixty-Six Excursions in Computer Science?
A collection of essays about computer science, not programming. Very interesting and highly reccomended.
No folly is more costly than the folly of intolerant idealism. - Winston Churchill
And there was me thinking Christmas was primarily just the convenient hijacking of a celebratory time of year used by older traditions e.g. Solstice observation / Saturnalia ;-)
I love how so many Christian festivals just happen to dovetail with old "pagan" dates - but as anyone with knowledge of Christian history should know, its not accidental what dates were picked for Christian celebrations.
Wish I could revisit several millennia hence (assuming humanity still exists then of course) and see what (if anything) is celebrated around the time of the Winter solstice then.
However, on topic....
My "active set" has changes a lot - things such as Unix and Java books that were heavily hammered a few years ago gathering dust, whereas .NET / C# books thumbed regularly.
Tend to split into "general reminder / lookup" style books - e.g. algorithms, best practice / tips and techniques for a particular language / OS through to very technical stuff e.g. JPEG : Still Image Data Compression Standard (Pennebaker and Mitchell) relating to a specific task that I'm involved with.
A lot of it boils down to preference - many of the books are redundant in so much as I could probably web search to find the information, but its just handy (excuse pun, and easier on the eye) to have a real physical book available whereas some colleagues web search for everything and only tend too have books for arcane stuff that's not readily / freely available on the web.
Most things on my (working) bookshelf get there due to necessity rather than enjoyment (and indeed lose their place when no longer needed).
I would only consider an IT related book for someone if I knew they actually wanted it, be it for need or enjoyment (some people enjoy reading e.g. programming books for the sake of it, others only read them if they need to).
Hey I have some books on my wish list.
I do understand your thought. For a good Christmas gift might I suggest a Salvation Army Angel next year. It is too late to get one for this year. You can find a child that isn't going to get much for Christmas and shop for them. My wife and I did three this year. After we finished the first one we noticed they had a lot left and with only two days to go she decided to get two more. For feeling the Christmas spirit I highly recommend it. For the typical poster on Slashdot may I recommend some of Knuth's other books. The Art of Computer Programing is great but his other books might be of more use to a lot of people on Slashdot.
See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
Read some history. It's about celebrating the breaking of winter. A pagan celebration co-opted. Other than that, your last six sentences hold.
Sun Tzu - The Art of War (here) and Machiavelli - The Prince (here) are examples of books which have some applicability in the workplace of today.
Both have the full texts available from the wikipedia links above.
TAOCP, while it may give you some good nerd karma, is pretty much useless for day to day programming. It is far too dense, and there are better books on algorithms out there for practical usage. Most people I know with it on their shelf have not made it past Chapter 2, if they even really made an attempt to read it at all. It looks nice up there, but I don't think it is all that usefull.
Hmmm. The obvious answers:
Knuth.
Gerald Weinberg's The Psychology of Computer Programming.
George Polya, How to Solve It.
Gries, The Science of Programming.
Bentley, Programming Pearls.
Gamma, Helm, Johnson, and Vlissides, Design Patterns.
Abelson and Sussman, Structure and Interpretation of Computer Programs.
Hunt and Thomas, The Pragmatic Programmer.
Hmmm. My own bookshelf is lacking. Time to shop...
I had to read The Fountainhead for English in high school and I have decidedly mixed feelings. On one hand, it was interesting to read from an architectural perspective. The characters, on the other hand, exist not as people but as archetypes. But then again, that's the case in almost all of Ayn Rand's literature. We're currently in rehearsal for The Night of January 16th and some of the rhetoric she has characters spew out... I wasn't altogether kosher on the glorification of Roark's rape of Dominique.
Another good book (good series, actually) is the Coldfire Trilogy by C.S. Friedman. In my opinion, it's an excellent example of building a fantasy world which has a rational reasoning for magic working and not technology.
This sig has absolutely no significance and serves only to take up screen space and waste the time of the reader.
Fine; let's cancel Christmas. The majority of this nation don't believe in any particular God anyway, so there's no real reason to have it. We can just give people another couple of days' leave, so they can have it if they want to, or take a dirty long weekend in Torquay if they prefer, and forget the whole thing. It'd certainly make me happy. Given the sheer quantity of indifferent turkey and glutinous gravy that I've had stuffed down my neck as 'seasonal' meeting fare, my only desire is to catch a plane to somewhere they've never heard of gravy.
In exchange we must ask that those who do feel the need to celebrate Christ's birth do it quietly, tactfully, and without unduly disturbing the flow of traffic in the inner city.
Sounds fair to me.
I imagine that the reason why it hasn't actually happened yet is that Christmas isn't about Christ, like it or not, any more than Guy Fawkes' night is about burning traitors. It's currently a reason to let your hair down a bit about work, extort a hell of a lot of money from customers, and get incredibly stressed about your extended family.
Christmas was around before Christ (go Mithras go!). You might as well call it hypocrisy that many who don't care at all about pagan rituals are busily collecting evergreens for the Winter Solstice. In fact, I'll do it for you: Hypocrisy!
Please do. I've posted a lot of replies to questions on alt.comp.lang.learn.c-c++, and far too many of the mistakes made by the posters were the fault of reading certain books by a certain author.
I notice someone further down has pasted in some of the group's FAQ. I suggest looking it up in full; you'll find recommendations for much better books on various C++-related subjects. You might also like to search the group's history using something like Google Groups, as there have been a few very informative threads on the subject of books. This old post of mine has been mentioned a few times since I wrote it, though it's a little out of date now.
Christmas has its roots in Christian (well, roman) mythology. But when the secular United States government declared it a national holiday, it effectively became a secular holiday in the US.
Today, the economic impact of Christmas is far greater to America than the philosophical impact.
A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.