Slashdot Mirror


Your Favorite Tech / Eng. / CS Books?

chris_eineke writes "I like to read and to collect good books related to computer science. I'm talking about stuff like the classic textbooks (Introduction to Algorithms 2nd ed., Tanenbaum's Operating Systems series) and practitioners' books (The Practice of Programming, Code Complete) and all-around excellent books (Structure and Interpretation of Computer Programs, Practical Common Lisp). What's your stocking-stuffer book this Christmas? What books have been sitting on your shelves that you think are the best ones of their kind? Which ones do you think are -1 Overrated? (All links are referral-free.)"

8 of 517 comments (clear)

  1. Best books? by librarybob · · Score: 5, Insightful

    As I'm a librarian I'm extremely interested in what people will suggest. The opinion of practitioners is a lot more relevent than that of book reviewers.

  2. K&R2 by dprovine · · Score: 5, Insightful

    Still the standard for programming language books, IMHO. I tell people to work all the way through it, from start to finish, and do every exercise until it works exactly as it should.

    C isn't a perfect programming language, by any means -- no language is -- but writing lots of programs in it gives you a feel for the low-level things a computer has to do.

  3. Best Project Management Book Ever by Reality+Master+101 · · Score: 5, Insightful

    Mythical Man Month. A classic. There are no silver bullets! As true now as then.

    --
    Sometimes it's best to just let stupid people be stupid.
    1. Re:Best Project Management Book Ever by SuurMyy · · Score: 3, Insightful

      While it's a classic, and has good things here and there, I wouldn't say it's the best book. Peopleware is, IMHO, much better, and the book I'd recommend everyone reads at least once.

      --
      The lyf so short, the craft so long to lerne
  4. Dragon Book by hal2814 · · Score: 4, Insightful

    "Compilers: Principles, Techniques, and Tools" by Avo, Sethi, and Ullman.

    To be fair, I'd like to point out that the 2nd Edition just came out when I picked it up and that's what I'm basing my opinion on. I've never read the 1st Ed (though it has a much cooler cover).

    Honorable mentions:
    The C Programming Language
    Any of Tannenbaum's OS books (I'm kind of partial to the Design and Implementation one that uses Minix as a case study)
    Deitel & Deitel's Java book (To be fair, it is good but overpriced if you don't already have to buy it as a textbook.)

  5. The Art of Computer Programming by Donald Knuth by Christopher_Olah · · Score: 5, Insightful

    It's good. I'm going to have to disagree with you on it being overrated. It's dense and long but it has lots of good things. I've learned a lot, despite only having started reading it recently.

    1. Re:The Art of Computer Programming by Donald Knuth by TravisO · · Score: 3, Insightful

      Don't forget that by using bold it makes your text more important.

  6. favorite books by br00tus · · Score: 3, Insightful

    I'll start with the one I'm most qualified to know about, with many years of UNIX systems administration under my belt - the UNIX System Administration Handbook. It reads like a book written by a bunch of sysadmins who know what they're talking about, and then telling you what you need to know.

    Operating Systems Design and Implementation by Andrew Tanenbaum and Albert S Woodhull. Walks you step-by-step through Minix, a "POSIX conformant" Unix system designed primarily to teach students how operating systems work. You should probably have a *little* UNIX experience before going through it, but it will spell out in detail how things like pipes work beyond that they're STDOUT to STDIN, or how semaphores work and why it was necessary for semaphores to be invented in the first place. And so on.

    K&R - not only a classic, but a useful one to boot.

    Code Complete. Lots of the common wisdom, and theory to praxis to practice tried and true advice on how to right good programs - a preference for short functions that do one thing and do them well, with a limited number of variables, and with even more efforts to be conservative with regards to global variables.

    Richards TCP/IP book. I use it as a reference when I need to know how to do something.

    Knuth's The Art of Computer Programming is a reference book FOR reference books. You often see comments in kernel and critical software which says "Knuth's TAOCP says this is the best way to do this". He states how math underlies Computer Science which is probably why I'm still stuck on the first few pages of Volume 1. Maybe I'll go back to after I take a course in discrete math and calculus.

    These are the six I can think of. I can think of other books I have found useful as well - some books on assembly programming and how the processor and system works, lots of O'Reilly books like the PERL ones.

    And if you're looking for some light reading, Accidental Empires is good, as well as Hackers. You might also enjoy Just For Fun (by Linus Torvalds) and Free as in Freedom (about Richard Stallman) as well.