Slashdot Mirror


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!)"

13 of 362 comments (clear)

  1. first post by themusicgod1 · · Score: 5, Informative

    goedel escher bach d:

    --
    GENERATION 26: The first time you see this, copy it into your sig on any forum and add 1 to the generation.
  2. Frederik Brooks by rassie · · Score: 4, Informative

    The Mythical Man-Month by Frederik Brooks (clicky) has some very good insights which still hold true (the book was originally published in 1975).

  3. There are so many options by koltrane · · Score: 5, Informative

    It's hard to be specific when "a programmer" could write in a number of languages. Regardless, just about anything from O'Reilly is well worth the shelf space. I still have my original copy of "The Whole Internet"!

  4. Where are the following? by ad0le · · Score: 3, Informative

    C++: The Complete Reference by Herbert Schildt & Thinking in C++: by Bruce Eckel.

    In my opinion, the best c++ books out there.

    --
    My mother never saw the irony in calling me a son-of-a-bitch.
    1. Re:Where are the following? by hibiki_r · · Score: 3, Informative
      I'd not pick any of those two before Effective C++, More Effective C++, Advanced C++ Programming Styles and Idioms or The C++ Programming language. After you've programmed in C++ for six months, all the introductory stuff from the books you mentioned becomes a waste of paper, while the books I listed are still useful to a professional programmer.

      Also, read this excerpt of the alt.comp.lang.learn.c-c++ FAQ:

      6: Why do many experts not think very highly of Herbert Schildt's books?

      A good answer to this question could fill a book by itself. While no book is perfect, Schildt's books, in the opinion of many gurus, seem to positively aim to mislead learners and encourage bad habits. Schildt's beautifully clear writing style only makes things worse by causing many "satisfied" learners to recommend his books to other learners.

      Do take a look at the following scathing articles before deciding to buy a Schildt text.

      http://www.lysator.liu.se/c/schildt.html
      http://herd.plethora.net/~seebs/c/c_tcr.html

      The above reviews are admittedly based on two of Schildt's older books. However, the language they describe has not changed in the intervening period, and several books written at around the same time remain highly regarded.

      The following humorous post also illustrates the general feeling towards Schildt and his books.

      http://www.qnx.com/~glen/deadbeef/2764.html

      There is exactly one and ONLY one C book bearing Schildt's name on its cover that is at all recommended by many C experts - see Q 25.

  5. Joel on Software's Book List by Poeir · · Score: 4, Informative

    Joel on Software posted a very useful book list, which extends more to the management of programming than to any specific language. This makes it more generally useful than yet another C book.

    --
    Sigs are like bumper stickers.
  6. The Soul of a New Machine by khendron · · Score: 3, Informative

    This book is on my shelf and is a must read for anybody working in tech.

    It is not a technical book. It is a non-fiction novel about a team of engineers building a mini-computer back in the early 1980s. The book might be 25 years out of date from the technical point of view, but few books capture the essence of the engineer's mind and commitment as well as this one does.

    --
    Life is like a web application. Sometime you need cookies just to get by.
  7. Book Pool by NaNO2x · · Score: 4, Informative

    I can't believe that in all this discussion no one has even mentioned the site "Book Pool" http://www.bookpool.com/ . This site is one of the most extensive places to purchase any computer books. I'd highly sugest browsing around there if you want to buy new books for a geek.

    --
    Utinam me logica falsa tuam philosophiam totam suffodiant.
    1. Re:Book Pool by williepete25 · · Score: 3, Informative

      And cheaper than most, I might add.

  8. A few must-haves... by Beek · · Score: 5, Informative

    Code Complete by Steve McConnell
    The Pragmatic Programmer by Andrew Hunt and Dave Thomas
    Refactoring: Improving the Design of Existing Code by Martin Fowler
    The Mythical Man Month by Fred Brooks

    The are a few off the top of my head that any programmer should read. I'm sure there are a few others. Most things after that are probably specific to certain areas and interests.

  9. Safari by tclark · · Score: 4, Informative

    I recommend a Safari subscription. It provides online access to everthing by O'Reilly and a number of other publishers. My subscription has saved me huge amounts of time, since I can search and find useful information on all sorts of topics without leaving my desk.

  10. My personal favorites... by mackman · · Score: 5, Informative

    Neither of these I would recommend in general, but they are both excellent books if you are dealing with the subject matter they discuss. They are both enjoyable reads and extremely useful.

    Inside the C++ Object Model by Stanley B. Lippman. Lippman is one of the original authors of CFront (along with Stroustrup), the original C++ compiler which worked by translating C++ into C. This book explains how every C++ feature is implmented by the compiler: virtual functions, multiple inheritence, in-memory object layout, etc. If you are working on projects where the overhead of a pointer de-reference or virtual function call may be too much, then this book is a must read. Even if that doesn't describe you, this is still a suprisingly enjoyable read and will almost certainly help you at any job interviews for C++ programming positions.

    Hackers Delight by Henry S. Warren Jr. This deals entirely with efficient bit twiddling. It has chapters on counting the bits set in a word, finding the first set bit, quick integer square root approximations, etc. Unless you're working with embedded systems or otherwise need assembly-level optimizations, this book just serves to obfuscate your code. On the other hand, it's quite a fun challenge to try to figure out the algorithms without reading the explanations.

  11. Re:Try "Notes from Underground" by xitology · · Score: 3, Informative

    As an aside my [older] translation begins with "I am a sick man... an angry man... an unattractive man. For whatever reason the newer translation substitutes wicked for angry. Perhaps someone who understands more Russian would know why.

    The Russian word is zloy, which can be translated both as wicked and angry among others. Dostoevsky uses zloy a lot, so the choice is quite significant. I don't know English enough to advise the best choice though.