Slashdot Mirror


Best Computer Books For The Smart

You'll remember last week, I asked for recommendations of the Best Websites for developers. This was a -great- thread and in the story, I mentioned that I was planning on doing the same regarding books this week. So here it is. What do you, the slashdot reader consider seminal works? What would you consider great introductions to technical topics? If you are interested, check it out... As part of this I'm looking for books on C, C++, Perl, Python, PHP , System Administration, anything...you name. As before I have opinions on great books, but I want to see what you think. Also, what do people think is a great introductory book for people new to linux.

4 of 514 comments (clear)

  1. Get theory books. by WanderingGhost · · Score: 4, Insightful
    Personally, I value:
    • Theoretical background -- experience in a CS course, good books that give you a theoretical base are nice. Why? Because later, to translate the theory into real work, you'll just need a reference, and things will work easier!
    • Reference books -- to learn how to implement your ideas in specific settings (OS, language, etc).
    I never found the first with books for specific compilers, IDEs, versions of things, etc, or any of those "big" books that promise you a lot.

    Interesting choices are books written "by the language author" (think Stroustrup, Larry Wall, etc), or books by people with a good background in CS (a CS professor, for example).

    Also, books on theory are interesting. A book on Compilers may change the way you think. (The old "Dragon" book is nice, and Andrew Appel's book is also interesting). One book on Analysis of Algorithm like the one by Cormen, Leiserson, Rivest and (forgot the third author) is quite good, but you need a decent math background.

    And for a reference, I think the more compact the better (I use Java in a Nutshell). References shouldn't be more verbose than the necessary. :-)

    (Just my $0.02)
  2. Code Complete! by sphix42 · · Score: 4, Insightful

    Code Complete and Rapid Development are the kinds of books I find most useful. I don't like any books that are specific to a language. These two are fantastic resources for learning how to program better, not how to write in a particular language.

  3. Re:easy by muffel · · Score: 4, Insightful

    union select * from books where author = 'R. Stevens';

    --

    bla
  4. Structure and Interpretation of Computer Programs by Chuan-kai+Lin · · Score: 5, Insightful

    This is the introductory computer programming textbook used at MIT, and had been featured on slashdot here. However it is very different from what you would expect from such kind of books, with Scheme as the implementation language, it really does not teach readers how to code in a specific programming language, but how to program computers in a large variety of paradigms, what are the trade-offs in program design, how to manage complexity, and how the basics of computing works, by stretching the flexibility of the Lisp family of languages to the maximum. I first read it four years ago as a freshman, and it was a real eye opener. And it never ceased to amaze me through all these years, as I continue to discover new insights in the passages.

    You can almost find a full undergrad CS program concentrated in this book, with topics including language design and computing paradigms (object-oriented, functional, imperative, non-deterministic and logic programming, as well as lazy evaluation), operating systems (issues of concurrency), architecture (the design of a register machine), and compiler construction (the reader is asked to build a Scheme compiler in the end). Instead of being filled with buzzwords, here you are shown how the basics of everything works, in ways that you can really understand. Working through this book will teach you concepts that many people with a CS degree had never heard of.

    Hell, if I could only save one CS book when the world comes to an end, this would be the one. And the best part is: you can get the full-text online here at MIT Press. Definitely a must read.