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

517 comments

  1. TCP/IP Illustrated, Vol 1 by W. Richard Stevens. by whistl · · Score: 5, Informative

    The classic IP networking book

  2. 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.

    1. Re:Best books? by MightyMartian · · Score: 4, Interesting

      Introduction To Algorithms 2nd Edition was by far the most useful book I've ever delved into. Back in the olden days when I was stuck coding in a borrowed copy of QuickBASIC, I developed one helluva binary search routine that could search through about 50,000 records in tolerable time on an PC-XT, and that book saved my ass.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    2. Re:Best books? by Workaphobia · · Score: 3, Interesting

      Then let me reply directly (read: a poor excuse to top-post).

      Michael Sipser's "Introduction to the Theory of Computation." It's easily the best textbook I've ever owned, and had me paging through it well ahead of the pace of the course. It of course doesn't serve nearly the same purpose as K&R and all those other books on practical topics, but for someone who's never been exposed to the theoretical side of CS, it's a wonderful eye-opener.

      Apparently the same opinions are shared by most of the other CS students I've talked to.

      --
      Evidently, the key to understanding recursion is to begin by understanding recursion. The rest is easy.
    3. Re:Best books? by SlashDotDotDot · · Score: 4, Informative

      Effective C++, Scott Meyers -- I own the 2nd Edition, but there may be a newer one. This is the best book I've seen for really making sense out of C++. It is well-organized, covers its chosen topics thoroughly, and is fun to read.

      --
      /...
    4. Re:Best books? by ed1park · · Score: 2, Informative

      This is my favorite and a must for anyone for interested in computers. Puts all the other excellent books recommended here in perspective.

      Computer Science by Brookshear

      http://www.amazon.com/Computer-Science-Overview-Glenn-Brookshear/dp/0321524039/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1230062205&sr=8-1

      PC architecture, cpu design, programming paradigms, TCPIP, np complete, neural networks, etc. Excellent explanations. Brief but dense. Wonderful starting point.

      You get to see all the beautiful forests instead of getting lost in a few groves...

    5. Re:Best books? by 0xABADC0DA · · Score: 2, Informative

      The Computer and the Brain.

      There is no book that says more what computing is all about, from the historical perspective of appreciating how genius the founders of computer science were to the zen of how digital computers actually operate and to a different perspective on analog computing.

      This book is only 110 pages and is 50 years old, but it is still worth more than any other book mentioned.

    6. Re:Best books? by nategoose · · Score: 1

      Libraries can get the biggest bang for their $ by trying to get books that won't be obsolete in a year. Books on hot new technology are likely to be nearly worthless in a year or two. Books on fundamentals and theory last a lot longer. If you do want obsolete books (for archival purposes) ask for them to be donated or work out a deal with your local Salvation Army and pick through their donations.

    7. Re:Best books? by sakonofie · · Score: 2, Informative

      When the two overlap (which they mostly do), I prefer "Introduction to Automata Theory, Languages, And Computation" by Hopcroft, Motwani, and Ullman* over Sipser's "Intro to Theory of Computation". http://books.google.com/books?id=pvPeAwAACAAJ

    8. Re:Best books? by Anonymous Coward · · Score: 1, Informative

      Meyer's C++ books are good, but I would characterize them as overrated since they are not necessarily better than many other intermediate C++ books out there (especially those pub. by Addison Wesley, B. Kernighan series editor). He has an attention-hogging personality and that comes through in his books - I will admit he pulls off the "This is my book, so I make the rules here" schtick better than others I've seen.

      Meyer was very late to catch on to the template meta-programming wave that swept the C++ community throughout the 1990's. IIRC the first couple editions of "Effective C++" scarcely mentioned them, while "More Effective C++" discussed some elementary topics such as smart pointers.

    9. Re:Best books? by NovaX · · Score: 2, Informative

      Then you might like "Algorithm Design" (2008). Its a superior, imno, but has slightly less coverage with better depth. My personal favorite algorithm book is "The Art of Multiprocessor Programming".

      --

      "Open Source?" - Press any key to continue
    10. Re:Best books? by Anonymous Coward · · Score: 0

      Then let me reply directly (read: a poor excuse to top-post).

      Michael Sipser's "Introduction to the Theory of Computation." It's easily the best textbook I've ever owned, and had me paging through it well ahead of the pace of the course. It of course doesn't serve nearly the same purpose as K&R and all those other books on practical topics, but for someone who's never been exposed to the theoretical side of CS, it's a wonderful eye-opener.

      Apparently the same opinions are shared by most of the other CS students I've talked to.

      I second this. The book is a wonderful introduction to the subject. It explains the concepts carefully and has some of the most well-written proofs that I have ever seen.

    11. Re:Best books? by Fear+the+Clam · · Score: 1

      Although it's not programming, I think Donald Norman's *The Psychology of Everyday Things* (also goes under the title of *The Design of Everyday Things*) deservers a place in every programmer's designer's library.

    12. Re:Best books? by Jonathan+Walther · · Score: 1

      I've been a programmer for fifteen years. Here is my list: http://reactor-core.org/programmer-syllabus.html Some of the books are hard to find. Ted

      --
      It isn't true unless it makes you laugh, but you don't understand it until it makes you weep.
    13. Re:Best books? by Anonymous Coward · · Score: 0

      By whom is that Algorithm Design? Theres a few with that title an amazon but nothing 2008.

    14. Re:Best books? by NovaX · · Score: 1

      Sorry, it's "Algorithm Design Manual" by Skiena (2008).

      --

      "Open Source?" - Press any key to continue
    15. Re:Best books? by zildgulf · · Score: 1

      The best textbook I ever read about the Zen and Psychology of writing code is "The Psychology of Computer Programming" (now in Silver Edition) by Gerald M. Weinberg. This book was "ancient" by Computer Science standards, but since the people coding programs have not changed much.

      Other Computer Science books by this author that was helpful for me was "Introduction to General Systems Thinking", in graduate school, and "The Secrets of Consulting" for programming in the real world.

      His books may or may not be the best academically, but his humorous and self-effacing writing style takes the drudgery out of reading such normally dry topics.

  3. computer books by Anonymous Coward · · Score: 0

    so far i can only find the ones that put me to sleep :( so i only use computer books for refs Do good computer books exist?

    1. Re:computer books by eln · · Score: 1

      If you're looking for a computer book that won't put you to sleep, why not try The Story About Ping? It's a short read, but gives a great overview of the ping command, one of the most useful commands in the history of UNIX.

      It's a very short and simple read, so if you really hate your kids you could read it to them and make them want to grow up to be sysadmins. A warning, however: steering your children toward system administration is considered child abuse in some states.

  4. The Art of Computer Programming by larry+bagina · · Score: 3, Interesting

    (personally, I think it's overrated, but I'm still proud to own the set).

    --
    Do you even lift?

    These aren't the 'roids you're looking for.

    1. Re:The Art of Computer Programming by fm6 · · Score: 1

      Right, not as good as its reputation, but still one of the most essential books in CS.

      What I don't get is why Knuth still thinks that he can finish writing the series. He's even given up teaching and stopped reading his email to give himself more time to work on it. CS was already too big for a comprehensive intro text when the series first came out, and now it's far more so.

    2. Re:The Art of Computer Programming by Anonymous Coward · · Score: 0

      I should think Part 4 would be out in 2009. Then I hope Knuth lives long and healthy enough for Part 5.

      I wonder who will continue his work. It's a shame.

    3. Re:The Art of Computer Programming by berend+botje · · Score: 1

      No-one will continue. Or should continue, for that matter.

      You can see the table of contents for the upcoming volumes on Knuths' site. Even if Knuth himself manages to finish them, they will never be as relevant as the original trilogy.

      It's just too obscure, too arcane.

    4. Re:The Art of Computer Programming by zerocool^ · · Score: 1

      Add to that, for the mechanical engineering mindset, or those that love math, Knuth's Concrete Mathematics is the definitive book for "hard math". Or, so I've heard from people who understand it.

      ~W

      --
      sig?
    5. Re:The Art of Computer Programming by Anonymous Coward · · Score: 0

      Seriously, has anyone finished completely reading even the first book?

    6. Re:The Art of Computer Programming by Anonymous Coward · · Score: 0

      I think it's far better than its reputation. But then from what I can tell its current reputation is that it is dense, academic, outdated, good as a reference but not much more, etc. Have you actually read it? Most of these opinions I see seem to come from people who haven't gone all the way through it.

  5. Oh Pascal! by Anonymous Coward · · Score: 0

    Best text book title ever.

  6. Switching Power Supply Design, Abraham I. Pressman by digitalunity · · Score: 3, Interesting
    --
    You can't legislate goodness. Let each to his own destiny, by will of his freely made choices.
  7. 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.

    1. Re:K&R2 by Anonymous Coward · · Score: 0

      I've found "C a Reference Manual" by by Samuel P. Harbison and Guy L. Steele much cleared than K&R while still providing a complete description of the C language.

    2. Re:K&R2 by Amazing+Quantum+Man · · Score: 2, Interesting

      Add a vote for K&R2, and one that may seem off the wall:

      "Oh! Pascal", by Cooper and Clancy. It's probably out of print, but it had the most lucid, understandable explanation of pointers that I have ever seen in my life.

      --
      Fascism starts when the efficiency of the government becomes more important than the rights of the people.
    3. Re:K&R2 by Per+Larsen · · Score: 1

      Best known for their C programming language, both Kernighan & Richie have also made valuable contributions to the field of computer science.

    4. Re:K&R2 by spiffmastercow · · Score: 1

      Add a vote for K&R2, and one that may seem off the wall:

      "Oh! Pascal", by Cooper and Clancy. It's probably out of print, but it had the most lucid, understandable explanation of pointers that I have ever seen in my life.

      I'm going to have to disagree with that one.. That book gave me the complete wrong impression about how to program. Luckily I already knew that, but it took some of my fellow students years to unlearn what they learned in that book.

    5. Re:K&R2 by Anonymous Coward · · Score: 0

      I keep hearing people sing the praises of K&R, but I just don't get it. I've read it (I even own a copy), and I think it's competent, but nothing special.

      Compare SICP (for Scheme) or PAIP (for Common Lisp) -- those are far better books about their respective programming languages, IMHO.

      When I read something in K&R, I say "Yes, that is how that's done". When I read something in SICP or PAIP, I say "Wow, that's clever yet elegant".

      SICP builds a register-machine simulator, and then a compiler for it, including a GC. That gave me a far better picture of "the low-level things a computer has to do" than any of the exercises in K&R.

    6. Re:K&R2 by libkarl2 · · Score: 1

      The UNIX Programming Environment [Kernighan, Pike] is a great companion to the K&R, and a cute little retro read. You can get em used for around $1 (mine cost $0.85).

      Some others:
      C - A Reference Manual 5th ed. [Harbison, Steele]. The CARM is a great book for absent minded geeks like myself, who easily remember complicated topics but tend to forget the simple ones.

      Advanced Programming in the Unix Environment 2nd ed. [Stevens, Rago] (aka The Dilbert). The one that gets used. Stevens is to UNIX what Elvis is to Rock and Roll. This book is but one of several that prove it.

      --
      You are where you are at the time you are there.
    7. Re:K&R2 by Quartz25 · · Score: 1

      The K&R book is to CS majors as The Great Gatsby is to English majors. Not the greatest book ever created, but you keep coming back to it.

      --
      Most people don't get why the integral of "e to the x" is so funny. Most math majors don't have a sense of humor.
  8. Modern C++ Design by abigor · · Score: 4, Informative

    Possibly the most mind-expanding "C++" book ever written, and certainly the most poorly-named. It's all about template programming and will really change how you think about generic programming.

    There's also Schneier's "Applied Cryptography" and Norvig's "Paradigms of Artificial Intelligence Programming" and "Artificial Intelligence: A Modern Approach" to satisfy the urge one sometimes gets to skip syntax and write software directly as a parse tree.
     

    1. Re:Modern C++ Design by Slicebo · · Score: 5, Funny

      Minor correction to your post: It actually refers to parsing the leaf level (the lower ridge) of a B (binary) tree.

      Or (to put it more concisely):

      A parse-ridge in a pair tree.

    2. Re:Modern C++ Design by abigor · · Score: 1

      Hats off to you, sir.

    3. Re:Modern C++ Design by Anonymous Coward · · Score: 0

      "Modern C++ Design" is great if you want to learn what NOT to do. Full of Stupid Template Tricks of the sort that make people (especially those reading your code) hate C++. For the love of god, please stop doing that shit.

    4. Re:Modern C++ Design by mpsmps · · Score: 2, Interesting

      I actually taught a class with "Modern C++ Design" as a primary text. Perhaps surprisingly, it turned out to be a great success. While the actual techniques in the book are not always suitable for use in most professional C++ programming shops, the revolutionary thinking and skills in it will serve you well whatever programming you do, even if it is in a different language, which is a hallmark of classic texts.

    5. Re:Modern C++ Design by edmazur · · Score: 1

      Sorry to nitpick...

      B-tree != Binary tree

      In short, nodes of b-trees can have many children while nodes of binary trees have at most two. You see the former used in databases indexes where you're primarily waiting on disk operations. It makes sense to have the number of siblings nodes be on the order of the size of a disk block when you're disk-bound, so you end up with nodes having hundreds of children each.

    6. Re:Modern C++ Design by Slicebo · · Score: 1

      . . .Which in turn means that those indexes would be excellent candidates for use by the optimizer when the query only references columns that are part of the index keys.

      In other words, the index "covers" the query and allows us to efficiently extract the needed values from those densely packed index pages with few I/Os.

      The "smartass pun" part of my brain operates quite independantly from the "relational database knowledge" part.

  9. Most Excellent Book by D+Ninja · · Score: 2, Funny

    Teach Yourself C++ Programming in 21 Days

    What? No? Alright then...

    The C++ Programming Language, 3rd Edition is pretty excellent.

    1. Re:Most Excellent Book by internerdj · · Score: 1

      I learned C and C++ from the 21 days books back in high school. They aren't much use now, but I still have them on my desk.

    2. Re:Most Excellent Book by zieroh · · Score: 2, Insightful

      The C++ Programming Language, 3rd Edition is pretty excellent.

      Ugh. He may have invented the language, but that book is as long as it is awful. There are *much* better (and more accessible) texts on C++.

      --
      People who say "sheeple" have about as much sophistication as an AOL user, and in fact are probably actually AOL users.
    3. Re:Most Excellent Book by Like2Byte · · Score: 1

      Teach Yourself C++ Programming in 21 Days

      What? No? Alright then...

      The C++ Programming Language, 3rd Edition is pretty excellent.

      While I agree that it's an excellent read, let's not jump the gun. Bjarne's 3rd edition does not teach C++ from the bare-ground up. This tome, as no other words seems to do justice to the words contained within, has been written almost entirely with generic programming in mind - that is, it begins by twisting the reader's mind with templates. Templates, as a lot of C++ developers are aware can be quite painful for experienced developers, let alone lowbie magi.

      I'm going to do a public service announcement by introducing "C++ Primer 4th Edition" (Lippman/Lajoie/Moo) (clickity).

      Then, after mastering that excellent read, partake of "The C++ Standard Library: A Tutorial and Reference" (Josuttis) (clickity).

      If after reading those first two, and maybe many others, one finds oneself still up for more mental anguish, then and only then could I recommend "The C++ Programming Language" (Stroustrup).

    4. Re:Most Excellent Book by Anonymous Coward · · Score: 0

      A little OT, but I got a black-and-white X11 session up with Teach Yourself Linux in 24 Hours..

      That book delayed my trying again by at least 8 years. :^(

    5. Re:Most Excellent Book by Cyberax · · Score: 1

      It's perfectly possible to teach yourself C++ programming in 21 days.

      PS: it requires days to be polar days ( http://en.wikipedia.org/wiki/Polar_day ) though.

    6. Re:Most Excellent Book by mkaushik · · Score: 1

      Here's my favourite: SAM's Teach Yourself Bash Programming in 24 hours. Took a lot more than 24 hours, though, yet very useful to get started.

    7. Re:Most Excellent Book by jgrahn · · Score: 1

      The C++ Programming Language, 3rd Edition is pretty excellent.

      While I agree that it's an excellent read, let's not jump the gun. Bjarne's 3rd edition does not teach C++ from the bare-ground up. This tome, as no other words seems to do justice to the words contained within, has been written almost entirely with generic programming in mind - that is, it begins by twisting the reader's mind with templates.

      I don't own the 3rd edition, but I'm pretty sure it doesn't focus on generic programming, start with templates, or try to twist anyone's mind.

      It gets my vote as my favorite tech book for the last few chapters about design, life as a programmer and so on. Stroustrup deserves a lot of credit for that non-C++ part of the book.

    8. Re:Most Excellent Book by Anonymous Coward · · Score: 0

      The C++ Programming Language, 3rd Edition is pretty excellent.

      Ugh. He may have invented the language, but that book is as long as it is awful. There are *much* better (and more accessible) texts on C++.

      [citation needed]

      Can you give some examples?

    9. Re:Most Excellent Book by flyingindian · · Score: 1

      The C++ Programming Language, 3rd Edition is pretty excellent.

      Ugh. He may have invented the language, but that book is as long as it is awful. There are *much* better (and more accessible) texts on C++.

      I agree with you. Having read the third edition soon after it came out (and having read the second edition earlier) I felt that the third edition present too much stuff early on for someone new to the language. I also got the impression that intent of the book seemed more to "sell" the language to the reader than introduce the language.

    10. Re:Most Excellent Book by Anonymous Coward · · Score: 0

      I felt that the third edition present too much stuff early on for someone new to the language.

      You nailed it. It drives me nuts when people suggest it as a first C++ book. It's worth reading but not as an introduction.

    11. Re:Most Excellent Book by libkarl2 · · Score: 1

      It is a terrible book for beginning and intermediate C++ programmers. It is however, a great book for a highly experienced programmer who is writing library code. It is also *the* most exhaustive treatise on C++ language semantics that I know of. IMO: A daunting book for a daunting language...

      --
      You are where you are at the time you are there.
    12. Re:Most Excellent Book by Anonymous Coward · · Score: 0

      Generally the 5th edition of Teach Yourself C++ Programming in 21 Days is actually quite well regarded. You just cannot actually do it in 21 day. It's far more like 21 weeks.

  10. The Camel Book by happy_place · · Score: 2, Interesting

    Programming Perl (by O'Reilly) is a classic, imo. I know it's language specific, but it's also very funny and really defined the iconic symbol of the camel and Perl, and at least for me made O'Reilly a publisher worth its salt... --Ray

    --
    http://www.beanleafpress.com
    1. Re:The Camel Book by Lobster+Quadrille · · Score: 1

      Another vote for the camel book. If only for the chapter on regexes, which defines the standard used for this oh-so-useful-if-you-understand-it tool in so many other languages.

      --
      "The cup is in turn designed for holding hot or cold liquids, and has an open rim and closed base." --US Patent #5425497
    2. Re:The Camel Book by berend+botje · · Score: 1

      The Camel Book is a Must Have. And Must Read.

      That said, I would strongly suggest Mastering Algorithms with Perl for anyone that needs a brush up on algorithms. It is easily the best book on them, even if you don't program in Perl!

    3. Re:The Camel Book by arghnoname · · Score: 1

      I think it's also good to understand a little bit of the reasoning of perl. A lot of the weird perlisms make sense if you know why they are the way they are.

    4. Re:The Camel Book by Kazin · · Score: 1

      > The Camel Book is a Must Have. And Must Read.

      Eh, all the information is available via perldoc. I have the book, but haven't looked at it in probably 9 years. I might have thrown it out even.

  11. Applied Cryptography by Bill+Wong · · Score: 2, Insightful
    1. Re:Applied Cryptography by Anonymous Coward · · Score: 0

      If you're going to buy one, and only one, cryptography book, buy Koblitz, A Course in Number Theory and Cryptography.

    2. Re:Applied Cryptography by fm6 · · Score: 3, Interesting

      Here's a criticism of that book from its own author: it supports the illusion that all you need to secure a system is the right technology.

    3. Re:Applied Cryptography by zieroh · · Score: 1

      Yes! One of my all-time favorites.

      --
      People who say "sheeple" have about as much sophistication as an AOL user, and in fact are probably actually AOL users.
    4. Re:Applied Cryptography by Anonymous Coward · · Score: 0

      No, you need the right technology and the book...

  12. design of welded structures by bugs2squash · · Score: 1

    By Omer W Blodgett

    It's a work of art.

    --
    Nullius in verba
    1. Re:design of welded structures by Anonymous Coward · · Score: 0

      Great - between your book and searching for a Christmas present (Anne of Green Gables trilogy), my Amazon suggestion list is totally screwed now.

    2. Re:design of welded structures by Monsieur+Canard · · Score: 1

      Oh man, I use that at least 3 times a week. Best $15 I ever spent (well, technical bookwise that is). Although it's up to $25 now, it's still a bargain.

      I'd also add Roark's Formulas for Stress and Strain and the Machine Design handbook.

      --
      He took a duck to the face at 250 knots.
    3. Re:design of welded structures by JCSoRocks · · Score: 1

      Trying buying gifts for nieces or nephews on Amazon. No, no I'm not actually interested in the latest My Little Pony movie / toy, thanks for the e-mail Amazon. Music is even worse. Never, ever cave and buy someone some horrid CD by Hannah Montana from Amazon... your music recommendations will forever be filled with garbage by people that can't even drive yet.

      --
      You are using English. Please learn the difference between loose and lose; they're, there, and their; your and you're.
    4. Re:design of welded structures by Fulcrum+of+Evil · · Score: 1

      check the 'gift' box and your purchases won't be used for recs.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
  13. come on by nomadic · · Score: 1

    I thought the stock answer was Alice in Wonderland.

    1. Re:come on by Anonymous Coward · · Score: 0

      If you don't say what you mean, however can you mean what you say

    2. Re:come on by fwarren · · Score: 2, Funny

      Only if you start at the beginning and remember to stop once you reach the end of it.

      --
      vi + /etc over regedit any day of the week.
    3. Re:come on by berend+botje · · Score: 1

      I would love to have a CS-oriented annotated copy of that, actually...

  14. Effective Java by Josh Bloch by SpuriousLogic · · Score: 4, Informative

    I love this book. Many times I run into developers that program the exact same way they learned in school, without ever really knowing why they do things a certain way or question if something can be done better. Effective Java is basically the knowledge that a mid-level and higher developer should have learned codified into book form. The organization is great (broken into topics - you do not need to read from front to back), and has clear and easy to understand examples. It is a great book to move a junior Java developer up to a mid-level Java developer very quickly. It is now available in a second edition that is even better and with more content than the first edition. It is also a Jolt award winner.

    1. Re:Effective Java by Josh Bloch by Anonymous Coward · · Score: 0

      And I would recommend *any* of Scott Meyers' "Effective" books. I'm re-reading the third edition of More Effective C++ right now and it is very, very good.

      Scott is a fantastic author and speaker. I went to a C++ seminar once and his sessions were incredibly valuable for me.

    2. Re:Effective Java by Josh Bloch by greg_barton · · Score: 1

      I second your comment. "Effective Java" is the programming book I quote most often. Those who ignore it are full of fail.

    3. Re:Effective Java by Josh Bloch by BlackCreek · · Score: 1

      Second that. "Effective Java" is an easy read, and "insight" dense.

  15. My Math Books by pipboy9999 · · Score: 1

    With little formal CS education, I rely a lot on my supply of books such as PERL in a nutshell. Although my favorite reference books are my various Math books from college, they have been extra helpful out side of classes.

    --
    Yeah, I've got nothing...
    1. Re:My Math Books by poopdeville · · Score: 4, Interesting

      I agree completely. Aside from language reference books (a dime-a-dozen) and the web, I primarily use Mathematics texts books as my primary reference works. Lattice and Category theory are very helpful for understanding database design and algorithms -- an inner join on database tables is join of "sub-tables" in the Dedekind-MacLane completion of the lattice of "sub-tables", for example.

      Combinatorics are helpful when analyzing algorithms in general. Category theory and some first order logic (quantifying over categories) gives you a sound and rich theory of types (or you can develop an equivalent one in about a million different ways). Never mind the domain specific problems I've worked on, including statistical analyses of large amounts of data.

      For most computing domains, a CS degree is overrated. A Mathematics degree gets you 90% of the way there, and gives you so much more.

      --
      After all, I am strangely colored.
    2. Re:My Math Books by z-j-y · · Score: 3, Funny

      When I was about to write my first "Hello World" program, I thoroughly studied the theory of computability. The I had to give up the project, because I couldn't find a way to prove the consistency of such a program.

    3. Re:My Math Books by BlackCreek · · Score: 1
      One of the things that CS (or more appropriately software engineering) teaches you is that writing software is a team sport, and that clarity is also of foremost importance.

      In other words, the theorem needs to be right, and as clear as possible, and you shouldn't be fighting over the color of the bicycle shelter.

    4. Re:My Math Books by Anonymous Coward · · Score: 0

      For most computing domains, a CS degree is overrated. A Mathematics degree gets you 90% of the way there, and gives you so much more.

      Most computing domains are pretty abstracted these day. A math degree would go to waste.

    5. Re:My Math Books by Anonymous Coward · · Score: 0

      And of course, this is the first thing you learn in Mathematics: proof writing is a team sport. Clarity and accuracy are important to communicate to an audience -- your peers and instructors. Working with your peers is expected.

      The parallels here run deeper than you think. Indeed, the Curry-Howard isomorphism theorem implies that every program "is a" constructive proof, and vice-versa.

  16. Mine by John+Jorsett · · Score: 1
    How to Build and Use Electronic Devices Without Frustration, Panic, Mountains of Money or an Engineering Degree - First good book on operation amplifiers that I encountered.

    Calculus Made Easy - First book on calculus that ever explained things in a way that made sense to me.

    1. Re:Mine by geminidomino · · Score: 1

      Calculus Made Easy - First book on calculus that ever explained things in a way that made sense to me.

      Did it give deep coverage explained more clearly, or was it more lightweight.

      I ask because I have issues grokking "statistics for engineers" (when did "Calculus-based X" turn into "X for engineers"?) and I'm looking for something similar before I take the course next fall.

    2. Re:Mine by John+Jorsett · · Score: 1
      Did it give deep coverage explained more clearly, or was it more lightweight.

      I'd have to say the former, but our respective definitions of "deep coverage" might differ. I got an engineering degree and discovered this book many years later. It made me realize that I had made it thru all of my calculus classes heavily reliant on rote learning and memorization, not by any real understanding of the underlying principles. For example, I didn't really know what the notation dx/dt in integrals actually signified. Calculus Made Easy finally made it clear. More than once during reading it I had a "Holy crap, so that's where that comes from" moment. Your mileage may vary; it might be that the book just happens to suit my style of learning. I didn't read the Martin Gardner version, I got a cheapo copy somewhere thru some obscure book catalog. I just did a scan on eBay and saw copies like mine going for $2 plus $4 shipping, so it's not an expensive investment.

    3. Re:Mine by geminidomino · · Score: 1

      That's what I'm talking about. I'll have to look at the author and series, to see if there's a stats book out there for it. Thanks!

  17. My very favorite by dzfoo · · Score: 5, Informative

    My very favorite technical book is Programming Perl, a.k.a. The Camel Book, by Larry Wall et al. It is indeed a rare gem to find a book with such complex technical concepts, that is so much fun to read, you can take it with you on the train commute, or on holiday, and read it from cover to cover.

              -dZ.

    --
    Carol vs. Ghost
    ...Can you save Christmas?
    1. Re:My very favorite by girasquid · · Score: 1

      I'm inclined to agree - I've found that out of all my programming books, it seems the Perl-oriented ones have the most enjoyable tone.

    2. Re:My very favorite by dzfoo · · Score: 1

      Then, check out this new one, High Order Perl:
              http://hop.perl.plover.com/

      I'm half way through it, and I already can't wait to see how it ends! Heh :)

              -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
    3. Re:My very favorite by Tiro · · Score: 1
      My favorite Perl book is Damian Conway's Perl Best Practices. Conway teaches how to modularize and make readable your Perl programs. The techniques are general to other languages as well.

      Along the way Conway informs readers of a ton of great modules that I wouldn't have heard of otherwise.

      Also the jokes are much better than the Camel book.

    4. Re:My very favorite by dzfoo · · Score: 1

      I'll check it out then. Sounds a lot like my personal assessment of High Order Perl, by Mark Jason Dominus.

      Except that the jokes are just as lame (and I mean that in the nicest way possible) than in the Camel Book.

            -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
    5. Re:My very favorite by girasquid · · Score: 1

      Haha, I've been working through that one already. :)

    6. Re:My very favorite by libkarl2 · · Score: 1

      I still have an old magenta coloured 1rst ed. It and the K&R were the first books that really enabled me to move beyond C64 Basic... lol.

      --
      You are where you are at the time you are there.
    7. Re:My very favorite by dzfoo · · Score: 1

      Ha! What enabled me to move beyond C64 Basic was the C=64 Programmer's Reference Guide and it's focus on machine architecture and Assembly. I still have a copy somewhere, complete with the included machine's schematics!

              -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
  18. 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 elnyka · · Score: 1

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

      Amen!

    2. Re:Best Project Management Book Ever by Anonymous Coward · · Score: 0

      There are no silver bullets! As true now as then.

      Sad but true. The werewolf population continues to increase (see also: Microsoft Windows).

    3. Re:Best Project Management Book Ever by timewasting · · Score: 1

      Preaching to the choir again... have to agree

    4. Re:Best Project Management Book Ever by Anonymous Coward · · Score: 0

      I bought that about a month ago because I'd never read it (and was writing a paper on whether or not Brooks's Law still holds for a grad class). It's amazing how pertinent 35 year old writing on computer science can be.

    5. Re:Best Project Management Book Ever by i-am-alex · · Score: 1

      Must agree of course. Just wonder if there's anybody below some advanced retirement age even heard about it :-)

    6. Re:Best Project Management Book Ever by berend+botje · · Score: 1

      I've bought one for every manager I ever had. Even hit one in the head with one. That didn't go over all too well...

    7. Re:Best Project Management Book Ever by lbalbalba · · Score: 1

      An excellent choice indeed. I own the 20th Anniversary edition myself. However, it must be said that it deals on managing (big) software development projects, rather than on the actual coding itself. Still an excellent choice though.

    8. Re:Best Project Management Book Ever by sbeckstead · · Score: 2, Funny

      9 women x 1 month != Baby
      classic

    9. Re:Best Project Management Book Ever by Anonymous Coward · · Score: 0

      Seconded. Best book ever written on leading software development projects. Personally, I don't think students should graduate with a CS degree until they've read it.

    10. 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
    11. Re:Best Project Management Book Ever by jon_adair · · Score: 1

      For years, Mythical Man Month was required reading in Gus Baird's freshman class at Georgia Tech. He also required The Psychology of Computer Programming (Weinberg), which is ok. I think we also had to read The Soul of a New Machine (Kidder), which is great.

      My list would include Programming Pearls, The Design of the Unix Operating System (Bach), Knuth's books, the big white MIT "CLR" algorithms book (Cormen), The Turing Omnibus, Code Complete (McConnell), and a CRC math reference. Maybe the Pocket Ref.

    12. Re:Best Project Management Book Ever by cjHopman · · Score: 1

      Best book ever written on leading software development projects. Personally, I don't think students should graduate with a CS degree until they've read it.

      I agree, knowing how to lead software development projects is very important to a computer science degree.

    13. Re:Best Project Management Book Ever by nybble_me · · Score: 1

      9 women x 1 month != Baby I always like to add "but it sure is fun trying!".

      --

      reenigne
    14. Re:Best Project Management Book Ever by Anonymous Coward · · Score: 0

      I'll fullheartedly second that!!

  19. Digital Computer Analysis by James F. Turner by lq_x_pl · · Score: 2, Informative

    Some of the "technology" discussion is VERY dated (the book was published in 1968), covering things like magnetic drums and punchcards.
    BUT, The rest of the information covering logic gates and binary math takes the reader down to the fundamentals of the fundamentals.

    --
    An internal system operation returned the error "The operation completed successfully.".
  20. text processing in python by bugs2squash · · Score: 2, Informative

    David Mertz

    --
    Nullius in verba
  21. Nonlinear Dynamics and Chaos by orzetto · · Score: 4, Informative

    Nonlinear Dynamics and Chaos by Strogatz. The one and only book about math that I ever read without ever being bored nor puzzled, and I actually learned something at the end of it.

    --
    Victims of 9/11: <3000. Traffic in the US: >30,000/y
    1. Re:Nonlinear Dynamics and Chaos by Anonymous Coward · · Score: 0

      I second this. It was the text for my senior thesis course and I found it simply amazing.

    2. Re:Nonlinear Dynamics and Chaos by VisceralLogic · · Score: 1

      Indeed... it's actually written in English, not academese!

      --
      Stop! Dremel time!
    3. Re:Nonlinear Dynamics and Chaos by mako1138 · · Score: 1

      I've been reading James Gleick's Chaos, which is a pop-sci sort of book. I'll definitely check out Strogatz when I've got the time.

  22. The Non-Book Book by quaketripp · · Score: 1

    Some of the college courses I learned the most from didn't even have text books, but rather I created a "book" from the pages and pages of notes I took from the professor's lectures. I still have most of these compilations of notes -- my favorite being on Theory of Programming Languages featuring OCaml.

  23. The Art of Computer Programming all volumes by Anonymous Coward · · Score: 0

    The Art of Computer Programming all volumes

  24. 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.)

    1. Re:Dragon Book by berend+botje · · Score: 1

      Let's begin by making a bold statement: The Dragon Book is Crap!

      Why, you ask? The book is full of parsers, but nowhere, anywhere, does it mention iteration as a concept. So, after finishing the book you still can't write a compiler.

      That's pretty poor for a book that pretends to be the standard text on compilers.

    2. Re:Dragon Book by geminidomino · · Score: 1

      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.)

      It's overpriced if you DO have to buy it as a textbook too...

    3. Re:Dragon Book by Anonymous Coward · · Score: 0

      Monica Lam is also an author on the second edition.

    4. Re:Dragon Book by Anonymous Coward · · Score: 1, Informative

      Iteration is not essential to all programming languages.

    5. Re:Dragon Book by faragon · · Score: 1

      It is Aho, not "Avo", from Alfred Aho (I read the book a decade ago).

    6. Re:Dragon Book by hal2814 · · Score: 1

      From the perspective of being able to implement, most "standard" texts fall very short. What I learned from my compilers class is indeed parsing. I don't build compilers but when I'm faced with a task that involves parsing, I have a clear plan of what to do thanks largely to my coursework in compilers and this book. Just like when I'm faced with a task that requires scheduling or threading, I find what I learned from OS very useful though I've never implemented an actual operating system (unless you count nachos).

      I could see if your goal were to build a fully-functioning compiler not liking this book. If I had to do that and could only use one book, I'd probably opt for Modern Compiler Implementation in C/Java/ML.

    7. Re:Dragon Book by berend+botje · · Score: 1

      True, not for all languages. But for most of them it is.

      That's the problem with the book: it is written by academics for academics. And as such it is a briljant exercise in intellectual masturbation but it is completely useless in the real world.

      Would it have killed the authors to include a single example of iteration? Or anything about jumps/returns in the part about code generation?

    8. Re:Dragon Book by I+cant+believe+its+n · · Score: 1

      Let's begin by making a bold statement: The Dragon Book is Crap!

      That is not bold when you are hiding behind a fake name.

      The Dragon book is based on a special kind of magic. It is only useful to people who accept that they don't know everything.

      --
      She made the willows dance
    9. Re:Dragon Book by BazilBBrush · · Score: 1

      I could say something corny like "I for one bow to our new non-iterative overlords..."

      But seriously, can you tell me for which languages iteration is not a core concept???

      Are you a self taught vb programmer per chance?

    10. Re:Dragon Book by xenocide2 · · Score: 1

      I have to say, that Modern Compiler Implementation sits on my bookshelf still, and was pretty handy for my compilers class. I haven't bothered looking at the Dragon Book, but I can't say any of the above conversation has convinced me it's worth pursuing.

      --
      I Browse at +4 Flamebait

      Open Source Sysadmin

    11. Re:Dragon Book by chrisjrn · · Score: 1

      Off the top of my head: LISP.

    12. Re:Dragon Book by spiffmastercow · · Score: 1

      Indeed. I was disappointed by my CS education (they didn't offer a compiler design class), and decided to teach myself. I looked at the dragon book and couldn't make heads or tails of it. Then I read Compiler Construction: Principles and Practice. It does a great job of teaching the theory, then giving an example in C. The project in the book is really good too.

    13. Re:Dragon Book by stiller · · Score: 1

      Agreed. This book only starts being useful, after you have finished writing your first compiler. And even then, I found the lex & yacc book from O'Reilly to be a better companion.

    14. Re:Dragon Book by Anonymous Coward · · Score: 0

      The dragon book is really an awful compiler book. Just about every other compiler book written is more useful. It just happens to be the one that is used by most students in school.

  25. 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 Have+Brain+Will+Rent · · Score: 1

      I agree - Knuth is one hell of a smart guy and TAOCP is well worth having. And though it's a bit dated Aho et al Design and Analysis of Computer Algorithms; most anything by Hoare or Wirth; Foley et al on Graphics, Kay's original stuff, Goldberg's Smalltalk The Language book; Numerical Algorithms in [your choice of language]; Just Java; Designing Object Oriented User Interfaces by Collins; Object Oriented Analysis & Design by Booch; Object Oriented Modelling and Design by Rumbaugh et al; The Tacit Dimension (iirc); Kraft's Programmers and Managers... and so many more.... I haven't seen a good book on assembler in a long time and the ones I think are good are too dated for practical use.

      --
      The tyrant will always find a pretext for his tyranny - Aesop
    2. 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.

    3. Re:The Art of Computer Programming by Donald Knuth by Anonymous Coward · · Score: 0

      That's what she said!

  26. Design Patterns by MozeeToby · · Score: 5, Informative

    http://www.amazon.com/Design-Patterns-Object-Oriented-Addison-Wesley-Professional/dp/0201633612/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1230057946&sr=8-1/

    If you're doing oject oriented, there's no better place to start looking when you you're trying to learn good software design. I know, some people say patterns are overused, but they are essential to understanding and designing complex software.

    1. Re:Design Patterns by strimpster · · Score: 1, Informative

      I have to agree (it is the "gang of four"). Even if people say that patterns are overused, they are necessary if you want to reduce current and future estimates.

      While working on my Master of Science degree, this book was probably the most useful book that I had to read. I applied the concepts instantly to my work, which allowed us to take on much larger projects and increase profit margins.

      I should also state that it is very easy to read and has great examples to show the concept. This is really a must read for any individual who is writing software.

    2. Re:Design Patterns by Anonymous Coward · · Score: 0

      Indeed! "Design Patterns" is the seminal programming book of our time.

    3. Re:Design Patterns by Anonymous Coward · · Score: 0

      Design patterns are needed by those who can read, but can't write. To write code you need to be able to ... write.

      If you want to become better developer, you should start learning to write your own code, not "copy-paste" examples from books.

    4. Re:Design Patterns by Rary · · Score: 5, Informative

      Agreed. And I would add: Refactoring by Fowler and friends.

      --

      "You cannot simultaneously prevent and prepare for war." -- Albert Einstein

    5. Re:Design Patterns by ThePhilips · · Score: 1

      Even if people say that patterns are overused, [...]

      In University, on all math related courses we were strongly prohibited using calculators or PC software to solve assignments.

      Point is not that design patterns are overused, but that people do not learn to think for themselves and go on copy pasting examples.

      To become decent developer, you have to be able to figure out solution to problems yourself without consulting books.

      On flip side, the only effect of design pattern application I have seen is exponential growth of code base size: piles of crap code doing nothing else but implementing the patterns, instead of actually solving the problem at hand.

      First time I have stumbled on design patters in code, I have managed to make out of very beautiful and well referenced ~120 classes, >1MB object code library something what actually didn't crashed, didn't hogged CPU/memory, was easily reviewable and actually worked. And it all took to me about 15 plain, design-pattern-free classes and 100K of object code. Feel the difference.

      --
      All hope abandon ye who enter here.
    6. Re:Design Patterns by timewasting · · Score: 3, Interesting

      GoF --> -1 Overrated. Not because of the book, but because of most of the idiots who didn't conceptually understand the applications after reading. Half the people who try to talk in patterns don't understand the difference between Command, Visitor, Chain of Responsibility, etc. They understand Singleton, and that's it. Of the people who can talk in patterns, a good 50% don't really know how to appropriately use them together in system and software architecture. Meaning, at best, 1 in 4 of those who reference GoF patterns are actually using the work to help in communication and design.

      I think it's probably an important book in the history of Software Engineering (not to be confused with CS). The book unfortunately spawned at much bad design as it did elegance.

    7. Re:Design Patterns by Shados · · Score: 1

      As a general rule, people who "don't understand the difference between Command, Visitor, Chain of Responsability, etc", are people who learned patterns on Wikipedia, not those who read the book. Its fairly tough to read the book and "miss the point" (though I've seen posts for this very article of people who did...still, its uncommon).

    8. Re:Design Patterns by strimpster · · Score: 1

      To become decent developer, you have to be able to figure out solution to problems yourself without consulting books.

      A decent developer will refuse to refer to a book for help in solving a problem class that has been solved many times over. A great programmer will remember what he/she read in a book a while back about what to look for and how to reduce efforts. That book will not give you any answers to your problems that you will be able to cut-and-paste, rather it will give you the tools necessary to become a more competent programmer. There is more to writing good code besides knowing what the syntax of a language is.

      On flip side, the only effect of design pattern application I have seen is exponential growth of code base size: piles of crap code doing nothing else but implementing the patterns, instead of actually solving the problem at hand.

      I'm sorry that you have come across someone's bad code. Have you ever seen a bad implementation of a sorting algorithm and said this is so bad, and refuse to ever use that algorithm again? Just because you came across a bad use of something, does not mean that it is bad.

    9. Re:Design Patterns by strimpster · · Score: 1

      Design patterns are needed by those who can read, but can't write. To write code you need to be able to ... write.

      I really have to question one's programming skills when they state something like this (I would almost think that one that says this would also say that there is no reason to do any requirements or design before actually beginning the coding). No matter what you are writing, you are coming up with design patterns all of the time. You might not be writing as elegant solutions as "The Gang of Four" did, but you are still coming up with re-usable bits of code that solve problems in a specific domain. Design patters are simply solutions to design problems that are found to be reoccurring. I think that some people come across bad uses of the patterns and assume that all uses are bad.

    10. Re:Design Patterns by east+coast · · Score: 1

      Gang of Four is great. Entertainment! is one of the best post punk albums ever.

      --
      Dedicated Cthulhu Cultist since 4523 BC.
    11. Re:Design Patterns by Champion3 · · Score: 1

      What we are talking about here is the formalization of common design idioms. Design patterns are useful, but I shudder when I hear developers talking about their code as if they're just stringing together a bunch of design patterns to arrive at a solution. Design patterns are a tool. Use the tools to work the problem, but don't make the mistake of using the problem to work the tools.

      --
      I'm going to the casino. Don't gamble.
    12. Re:Design Patterns by NoPantsJim · · Score: 1

      Holy crap, you guys have Amazon up there in Canada?

      My, how far you've come.

    13. Re:Design Patterns by Anonymous Coward · · Score: 0

      It's not made by great men!
      Things will soon look a whole lot better for the working classes!

      Man, that was great stuff.

    14. Re:Design Patterns by Anonymous Coward · · Score: 0

      What must be the best book on OO principle and a good candidate for the best CS book is Betrand Meyer's tome
      http://www.amazon.com/Object-Oriented-Software-Construction-Prentice-Hall-International/dp/0136291554/ref=sr_1_1?ie=UTF8&s=books&qid=1230102585&sr=1-1

    15. Re:Design Patterns by Tragek · · Score: 1

      My problem with the GoF book is that the "patterns" feel like someone is adding a terminology to something that doesn't really need it. It feels... over engineered to talk about patterns. Yes, there is useful information in there, and most likely everyone who does programming should read it / learn about design patterns, but I loathe the types of discussion that come from design patterns.

    16. Re:Design Patterns by Perrin-GoldenEyes · · Score: 1

      Yes, both of these.

      Also, as a practitioner's guide, Agile Principles, Patterns and Practices in C# by Robert C. Martin is one of the best books I've read. You don't have to be a C# programmer to appreciate it (the examples are in C#, but could just as easily be in any other OO language), but if you're turned off by C#, look for the earlier edition which, I believe, uses C++ for the examples.

      Also, The Pragmatic Programmer by Andrew Hunt and David Thomas should be on every programmer's bookshelf.

      --
      -Perrin.
      Now I want you to go in that bag and find my lightsaber. It's the one that says bad mother-fscker on it.
    17. Re:Design Patterns by buckles · · Score: 1

      Fowler's Refactoring is a remarkable work. Our team revisits it periodically to get our bearings . We throw more crap into the bit bucket because of this book.

      Books that address theory rather than technical implementation help you think more clearly.

    18. Re:Design Patterns by Anonymous Coward · · Score: 0

      Ugh, I give it an overrated. It is best in its class but that is like being the best rat in the sewer: you still stink.

    19. Re:Design Patterns by Rary · · Score: 1

      Actually, come to think of it, a good recommendation would be to go to your local bookstore and pick up pretty much anything by Martin Fowler, Robert C. Martin, or the Pragmatic boys (Hunt and Thomas).

      --

      "You cannot simultaneously prevent and prepare for war." -- Albert Einstein

    20. Re:Design Patterns by Rary · · Score: 1

      Holy crap, you guys have Amazon up there in Canada?

      Yeah, but unfortunately it's pretty unreliable. The servers respond really slowly in the winter, which runs from July 20th to July 10th.

      On the plus side, both of our cities (Toronto and Vancouver) now have phone lines in every home, so Internet access is pretty common there.

      Living in the village of Edmonton, though, I still have to ride my dogsled eighty kilometres from my igloo to the Internet Cafe just to browse Slashdot.

      --

      "You cannot simultaneously prevent and prepare for war." -- Albert Einstein

    21. Re:Design Patterns by Anonymous Coward · · Score: 0

      Agreed. And I would add: Refactoring by Fowler and friends.

      I would agree. "Refactoring" is one of the best programming books out there and I use the information in it nearly every day at work. Probably the single best technical read of my career.

  27. Introduction to Computing Systems (Patt/Patel) by characterZer0 · · Score: 2, Interesting

    "Introduction to Computing Systems: From Bits and Gates to C and Beyond"

    http://highered.mcgraw-hill.com/sites/0072467509/

    This is where every programmer should start.

    --
    Go green: turn off your refrigerator.
    1. Re:Introduction to Computing Systems (Patt/Patel) by David+Greene · · Score: 2, Interesting

      Simply awful. The book was written with the hairbrained notion that students should learn about transistors and CMOS first and only at the end of the semester should they actually program in a reasonable language.

      I had the misfortune of working with students as a teaching assistant in that course and, predictably, students struggled. There's a reason it's a good idea to learn concepts first and then approach the implementation details later. The concepts are much more important.

      The theory was that students should learn what's going on under the hood when they program. A better approach would be to require all CSE students to take computer architecture, compilers and operating systems courses.

      --

    2. Re:Introduction to Computing Systems (Patt/Patel) by mkaushik · · Score: 1

      I agree. I took Prof. Yale Patt's architecture courses in the University, and there are few people who teach better. I just hope he finally takes time out to finish that senior-level computer architecture book.

    3. Re:Introduction to Computing Systems (Patt/Patel) by treblecaster · · Score: 1

      This is a great intro book. Coming out of high school and having only programmed in C++, it was really useful as an overview of what is really going on inside a computer. It's a concepts-only book though; the assembly language and architecture are not used in the real world. I took Patt's classes as well. They made all my other classes seem boring and terse in comparison - he really makes you think. His teaching style was very polarizing though. Other useful books: Hennessey and Patterson's Computer Architecture, Raymond's Art of Unix Programming, Rochkind's Advanced Unix Programming

    4. Re:Introduction to Computing Systems (Patt/Patel) by characterZer0 · · Score: 1

      You go through the transistors, logic gates, CMOS stuff quickly. Where it starts to get hard, where I assume students struggle (I did not take a class using the book.), is where you get into the fundamental design of computer and start programming for a simple computer in binary. What is wrong with struggling? If you cannot get through it, you should not be in CS/SE.

      --
      Go green: turn off your refrigerator.
    5. Re:Introduction to Computing Systems (Patt/Patel) by Eli+Gottlieb · · Score: 1

      I don't know. In my experience, how students do with that book seems to depend far more heavily on their professor than anything else. Though it does leave them relatively unable to program.

    6. Re:Introduction to Computing Systems (Patt/Patel) by David+Greene · · Score: 1

      No. That is the kind of elitist BS you hear from people who like to make themselves feel better. Struggling is fine. Unnecessary struggling is wasteful. The book just doesn't fit well with the way most people learn. Most people tend to learn high-level concepts first and only later dive into the nitty gritty details.

      One of the biggest beefs I have with EE programs is that they get intoi all the heavy math first without actually explaining the concepts behind it. Why we care about linear systems and all that. Who the hell wants to know about CMOS before understanding how to actually make a computer do something useful?

      --

    7. Re:Introduction to Computing Systems (Patt/Patel) by characterZer0 · · Score: 1

      "Most people tend to learn high-level concepts first and only later dive into the nitty gritty details."

      That is because the nitty gritty is the hard part. If you can write simple applications without understanding the nitty gritty, fine. That is not what Computer Science is for.

      --
      Go green: turn off your refrigerator.
  28. No contest. by Jack9 · · Score: 1, Funny

    Playboy, Penthouse, Hustler

    --

    Often wrong but never in doubt.
    I am Jack9.
    Everyone knows me.
  29. Who is fourier by mehtars · · Score: 1

    http://www.amazon.com/Who-Fourier-Mathematical-Transnational-College/dp/0964350408/ref=sr_1_1?ie=UTF8&qid=1230058191&sr=8-1 This is an amazing intro to calculus and fourier transforms. All with nice comic strip goodness

  30. Jeffrey Friedl's regular expression book... by tcopeland · · Score: 1

    ...Mastering Regular Expressions. Now in it's third edition and a great read for really understanding how regexes work. What I liked about it was the explanation of how various regex engines optimize the expressions... who knew that Tcl has a super-advanced regex processor?

    1. Re:Jeffrey Friedl's regular expression book... by Anonymous Coward · · Score: 0

      Anybody that's used TCL.

    2. Re:Jeffrey Friedl's regular expression book... by Anonymous Coward · · Score: 0

      I second this!

  31. Machinery's Handbook #24 by phrostie · · Score: 1

    Machinery's Handbook #24

  32. Leithold's TCWAG, 6th ed. and Felder/Rousseau by Anonymous Coward · · Score: 0

    The Calculus with Analytical Geometry by Leithold is by far the best calc text ever. Detailed derivations, but very easy to understand.

    Felder & Rousseau's Elementary Principles of Chemical Processes is a great intro ChemE text. Worth keeping because it's the only text I've gotten that includes a psychrometric chart.

  33. Excellent real analysis book by Anonymous Coward · · Score: 0

    Never have I read a more well-balanced book than the third book of Stein and Shakarchi's series "Princeton Lectures in Analysis", Real Analysis: Measure Theory, Integration, and Hilbert Spaces. The book is thorough in its style, yet not too long and boring, and it gets to the point without leaving too much to the reader.

  34. Design Patterns by brandorf · · Score: 1

    Design patterns, by the "Big Four" has pretty much been the bible of software design thus far for me. It pretty much covers the methodology of all the popular patterns with examples. It has been the book I reference most, after language and API specific books. http://www.amazon.com/Design-Patterns-Object-Oriented-Addison-Wesley-Professional/dp/0201633612/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1230057965&sr=8-1

    --


    Bork Bork Bork!!
  35. Speaking of C by markov_chain · · Score: 1

    Awesome C book: "Expert C Programming - Deep C Secrets" by Peter van der Linden.

    Great general programming book: "The Practice of Programming" by Kernighan and Pike.

    --
    Tsunami -- You can't bring a good wave down!
    1. Re:Speaking of C by nick_urbanik · · Score: 1

      Great general programming book: "The Practice of Programming" by Kernighan and Pike.

      Kernel hacker Val Henson wrote an excellent review of The Practice of Programming . I bought the book on the strength of that recommendation and find it is the most useful book I have read on programming in the last ten years.

    2. Re:Speaking of C by Trutane · · Score: 1

      Awesome C book: "Expert C Programming - Deep C Secrets" by Peter van der Linden.

      I heartily second (or third) this. I don't even program in C anymore and yet I still keep it on my shelf and peruse it from time to time, just to enjoy the wit and humor of van der Linden's writing. His instructive yet amusing approach brings a sense of joy to the art of programming.

      A great example is his analysis in chapter 3 of Lewis Carroll's Knight's paradigm in terms of the C type model. A true classic.

      --
      No sig here. Move along now...

      --
      Even those who arrange and design shrubberies are under considerable economic stress in this period in history.
    3. Re:Speaking of C by spacey · · Score: 1

      I've never found van der Lindens book of any use. I think that his focus on puns and asides detracts a lot from the content. I recall that topics that were about 80% explained, but needed an extra 15% to be clear, would instead receive a closing anecdote that had nothing to do with the topic.

      I found that "Pointers on C" by Kenneth Reek was a far better book. More thorough and careful in explaining details, and with fewer distractions.

      -Peter

      --
      == Just my opinion(s)
  36. Programming Pearls by haemish · · Score: 1

    by Jon Bentley. It's easy to be fast.

    1. Re:Programming Pearls by bunratty · · Score: 1

      His Writing Efficient Programs is out of print, but in my opinion it's at least as good as Programming Pearls. Here's an edited version of Bentley's rules from the appendix of the book.

      --
      What a fool believes, he sees, no wise man has the power to reason away.
    2. Re:Programming Pearls by Anonymous Coward · · Score: 0

      I agree, this and its sequel (More Programming Perls) are collectively an underrated classic. Much more substantial than many other "general programming tips" books out there, including some that have been mentioned multiple times on this board.

      I'm not a big fan of books that lecture you about using descriptive variable names, avoiding magic numbers, restricting use of global variables, etc. In my opinion, if you haven't figured out a lot of that yourself after six months in a team programming environment, you probably should go back to doing math or physics or whatever else you find more interesting than programming.

  37. Mechanical Engineering by Thelasko · · Score: 1

    For general information the Fundamentals of Engineering Supplied-Reference Handbook is a nice cheap reference.

    For information regarding engines, Internal Combustion Engine Fundamentals lives up to it's reputation, but is very dense reading.

    For Mechanical Design (real hardware, nuts, bolts, gears, bearings, etc.) Shigley & Mischke are the gold standard.

    Unfortunately, I haven't read many other books on these topics, so it's difficult to compare. Overall, these books stand out as being good.

    --
    One of our competitors trademarked the term "hypothesis". From now on, we will call them "boneheaded ideas".
  38. Code by Charles Petzold by CorporateSuit · · Score: 3, Interesting

    The first few chapters of Code will turn you from a know-nothing cubscout into a 2nd-year electrical engineering major within an afternoon. The book scales from understanding morse code to binary to logic gates to flipflops to RAM to assembler to constructing your own bios and operating systems with nothing but a hearty supply of semiconductors, batteries, plywood, wire, and solder, if you wanted to. The jumps between one level and another are made so they appear completely contiguous. It helps a CS student understand how software can truly run on hardware (instead of just looking at the magic boxes and saying "DO AS I SAY, PATHETIC PROCESSOR!")

    I've never read a book that taught me so much in so few words so fluidly. I picked it up in a Barnes and Noble for like $20 (Skeptical from the logo on the back) and have never been so pleasantly surprised with a dead tree.

    --
    I am the richest astronaut ever to win the superbowl.
    1. Re:Code by Charles Petzold by CircusTent · · Score: 1

      Great book for anyone given how he breaks down everything.

      --
      Pew Pew
    2. Re:Code by Charles Petzold by Vertana · · Score: 1

      I second this motion! I also bought the book Code (I won't lie, the fancy cover made me look), and it ended up being one of the best books I've read on the subject. It covers many topics, but for those who may need a little help being introduced to the subject, this book will definitely help to peak their interest. Although, it covers many aspects, it will help to introduce someone who may be interested in programming, but maybe has trouble grasping the idea of binary or trouble thinking like a programmer when debugging a program.

      --
      "The best way to accelerate a Macintosh is at 9.8m/sec^2" -Marcus Dolengo
    3. Re:Code by Charles Petzold by ojustgiveitup · · Score: 1

      Just saw and flipped all the way through this book for the first time today. Looked *fantastic* - written from the view point that anybody with interest can learn how a computer works, rather than the high-horse view that those few and proud chosen ones hold the keys of knowledge. Only $12.99, I bought one for every non technical person in my family (not my girlfriend though, she'd just roll her eyes)

    4. Re:Code by Charles Petzold by Anonymous Coward · · Score: 0

      I need to fully agree with this one. A very good CS intro.

    5. Re:Code by Charles Petzold by gr8dude · · Score: 1

      Indeed, this is a great book, it has filled the blanks left after graduating the university.

      I wish I read it during that time [or earlier], so that I knew then which questions to ask, where to dig, etc.

      I think it is a good idea to read it prior to learning assembly programming - if you do that, you won't be intimidated by the apparent complexity of such code.

      (Note: in case you're already afraid of it, the book is not about assembly programming)

  39. (-1 Overrated) by Anonymous Coward · · Score: 0

    Structure and Interpretation of Computer Programs (-1 Overrated)

  40. The C programming lang, Kernighan & Ritchie, 2 by cartman · · Score: 1

    This book is one of the most concise and descriptive computer books I've read. The book gets right to the point and explains things in an understandable yet compact way. Every paragraph of this book contains real content, which is unusual; and which spares the reader the necessity of skipping over, filtering through, and disregarding superfluous material as is necessary with so many other books.

    Despite being concise, the book is remarkably thorough. It explains things about the C language (like parsing complex type declarations) which most books on the C language do not explain.

    In addition to being concise, it was written with an admirable prose style which is rare among computer books. Apparently, its author (Kernighan) could write in the English language.

  41. Speech and Language Processing by eddy · · Score: 1

    I like Speech and Language Processing (2nd Edition), which is kind of the Russell/Norvig for NLP.

    Oh, look at the price of that thing. I think I got it for $60 on pre-order back when the dollar was weak. Should have bought two! I guess if you look around a bit I'm sure you can find the pre-release/beta PDFs for the second edition which were made available on the book homepage prior to release.

    There's pretty much everything in the C++ In Depth-series which is an absolute must for C++ practicioners. (and don't forget Lakos).

    I'm sure Gamma et.al was mentioned ten times while I put this post together...

    If I may veer out of CS, I must mention Kahn's Code Breakers, an absolute joy to read.

    --
    Belief is the currency of delusion.
  42. Re:TCP/IP Illustrated, Vol 1 by W. Richard Stevens by fm6 · · Score: 2, Insightful

    Everything by Stevens rates the word "classic". Pity the dude didn't live long enough to write more.

  43. How to Build a Microcomputer and... by camperdave · · Score: 1

    I used to have a book called How to Build a Microcomputer and Really Understand It (or something along those lines). It taught you to build a 6502 based microcomputer. It had circuit diagrams, PCB layout masks, etc. You would make up a bunch of small circuit boards with diodes or pull-up resistors on them. Each of these small boards would make a nybble. These nybble boards fit into some sort of card edge socket. It taught you what all the control lines were used for, etc.

    The book was an 8.5x11 paperback, and I don't recall it being all that thick. I think it may have been from TAB press, but I don't know for sure. I loaned it out years ago, and never got it back. I've never been able to find another copy.

    --
    When our name is on the back of your car, we're behind you all the way!
    1. Re:How to Build a Microcomputer and... by berend+botje · · Score: 1

      If you ever find out the correct title (or ISBN) I would be very interested to hear it!

  44. PL/SQL users guide by bubbha · · Score: 1

    Transactions & triggers & a whole lot more....

    --
    I want to be alone with the sandwich
  45. A short list by stonecypher · · Score: 3, Informative

    The Art of Computer Programming, Design Patterns, Domain Driven Design, Refactoring, Modern C++ Design, C++ Gotchas, The Mythical Man Month, Applied Cryptography, Introduction to Algorithms, Intro to Personal Software Process.

    --
    StoneCypher is Full of BS
    1. Re:A short list by timewasting · · Score: 1

      this is a really good list. I'd mod you up if I could for quality and conciseness.

  46. Thinking Forth by fwarren · · Score: 2, Informative

    Personally, for me is Thinking Forth by Leo Brodie. I re-read it at least once a year.

    A very lucid discussion of writing software and the philosophy that was often employed by very successful Forth Programmers. The hallmark of which was "elegance".

    In a nutshell, you can remember 7 items plus or minus 2. So any programming construct that had less than 10 commands (as opposed to syntax "noise") could be read and comprehended. When it comes to hiding data, what needs to be hid, is what can change. Build a program from small modules. Some are private, which are designed to deal with stuff that changes. Then there are more public modules that are the interface to those private modules that can change. A good program is built from lexicons of these private/public modules.

    The reason it is important to design lexicons of code around modules of "stuff that can change" is for correctness, elegantness and code-reuse. Control structures are superficial. Elegant designs can withstand change because they are not built around control structures, they are built around data and event transformations.

    There was plenty of stuff in the specific to how Forth really made this method of rapid prototyping software development work. Such as the implicit method of passing data and calling functions.

    If I had my way. No matter what language you end up working with. You should program in Forth for a few months first. Having to deal with a 64x16 character, 1024 byte blocks and a block file editor. The discipline in learning to factor code to fit in a standard screen is a good thing. Once you can start writing code that is small and elegant like that, you will be a better programmer in whatever language you eventually use. In addition you learn to use a simple IDE, program in both low level and high level functions. You get to work with a virtual machine that is simple enough to learn in an afternoon. You also get to learn such advanced techniques as building compilers, interpreters, and text parsers. Working with data structures such as threads, hashes, dictionaries, and vectored execution.

    --
    vi + /etc over regedit any day of the week.
    1. Re:Thinking Forth by dargaud · · Score: 1

      I used forth for a while back in the early 80s, as an intermediate between basic and assembly, and I hated it. I don't see why reverse polish anything should be still used, much less taught, nowadays.

      --
      Non-Linux Penguins ?
    2. Re:Thinking Forth by fwarren · · Score: 1

      Well, it is much closer to how computers think than infix notation is. Your compiler will take you infixed ()^*/+- stuff and rearrange it to pretty much what Forth Does.

      On the plus side. You can do a better job, knowing how it is goiing to be used, data structures, range of possible values, etc. On the down side, you are required to do this and there is no way to avoid the manual optimization process.

      In some cases like an embedded environment, there may not even be an optimizing compiler available. There is value in knowing how to do things like memory allocation and management. Even if you program in a language where you don't have to do it. You appreciate both having a garbage collector, and understanding it's limits when you have worked in a language without it.

      The implicit data passing can be cool. You don't have a bunch of temp variables to deal with. The scope is "automatic" and everything is about data transformation. The key is sticking with it long enough to go from hating it to at least getting "Forth Think".

      Forth is NOT the right tool for every job. I am however glad that I did learn it. I know not to design around control structures. I know how to factor code. I also now have a little voice telling me when my code is getting to complex that I am moving away from "elegance". When that happens I am also moving away from simplicity, correctness, ease of debugging, ease of adapting to change and ease of code-reuse.

      --
      vi + /etc over regedit any day of the week.
    3. Re:Thinking Forth by $RANDOMLUSER · · Score: 1

      This is a great call. A very very good programming book about how to solve problems with computers. And Forth is a damn fine portable assembly language, with an interesting design philosophy.

      --
      No folly is more costly than the folly of intolerant idealism. - Winston Churchill
    4. Re:Thinking Forth by jbolden · · Score: 1

      It is much easier to write an interpreter which is all infex notation.

      a * b + c | !d is complex but
      (| (+ (* a b) c) (! d)) is essentially prepared.
      Because the parsers become so easy it becomes easier to write mini DSL's (domain specific languages) for yourself. That is your code at one level becomes the data at the next level and you start to get the advantages of an object hierarchy without all the BS.

    5. Re:Thinking Forth by Anonymous Coward · · Score: 0

      I also now have a little voice telling me when my code is getting to complex that I am moving away from "elegance".

      The problem is, does anyone else? Forth is as close to a write-only language as I ever care to experience. In my class there was effectively a different language created by every student.

    6. Re:Thinking Forth by fwarren · · Score: 1

      Forth is as close to a write-only language as I ever care to experience. In my class there was effectively a different language created by every student.

      It is write-only for newbie code. It takes effort to learn to do it properly. You have to read code by others that has been written well. You have to learn good technique and style.

      The old school tools are really good for this. Like the version of Forth called F83 for the IBM PC. You could create a "block file" that was 300k in size. That would be 150 screens of Forth and 150 shadow screens for commentary. You work with triads. You Write a Load screen on blocks 0, 1,2. load your favorite utility words from lexicons on blocks 4 to 29. Then start major Blocks of code on 30, 60, 90, 120.

      If you observe working code in blocks of 3. Every screen using line 0 for comments. Every time a triad starts something new, UPPERCASE, and the following screens Lowercase and indented. 3 pages of Forth print to one sheet of paper.

      When done like that Forth can be very readable. Moreso than most other languages. Where else do you have anything like a load screen breaking down what a program does? Well factored, properly organized and written Forth is a joy to maintain.

      --
      vi + /etc over regedit any day of the week.
  47. Too late, already have 'em all, but... by Anonymous Coward · · Score: 0

    You're too late, I already have all the books I want, but you can still send me a Christmas donation. I prefer Western Union.

    BTW, does Amazon offer a "slip a $100 bill inside book" gift option? If it does, you can also buy me a book of your choice. Something on Ruby or something, I'll act surprised when I get it, I promise.

  48. Death March by Yourdon by micromuncher · · Score: 1

    The best damn book anyone in IT/CS can read...

    --
    /\/\icro/\/\uncher
  49. Old New Thing by Anonymous Coward · · Score: 0

    My all time favourite It related book is "Old New Thing" by Raymond Chen, author of the blog that goes by the same name.

  50. MIT Scheme book. by fumanchu182 · · Score: 1

    Going through all my CS courses back at the university this was my favorite book: http://mitpress.mit.edu/sicp/ I had the original text but since this book was so awesome it is now available on the website.

    --
    http://www.anthonyw.net
  51. Books I highly recommend by elnyka · · Score: 2, Interesting
    1. Pitfalls of Object Oriented Development by Bruce F. Webster. Too bad it's no longer being printed, BUT you can buy it used in Amazon for pennies. If you are serious at becoming not just a coder, but a good engineer, you must buy this book.
    2. Software Project Survival Guide by Steve McConnell.
    3. Affinity: Managing Java Application Servers by John M Hawkins - a must if you are a J2EE container admin.
    4. Unix for the Impatient by Paul W. Abrahams, Bruce R. Larson - nuff said.
    5. AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis by William J. Brown
    6. Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley Professional Computing Series) by the GoF.
    1. Re:Books I highly recommend by Eli+Gottlieb · · Score: 1

      There's more to the world than object-oriented *, you know.

  52. Listreadygo. by Rinisari · · Score: 1
  53. For Real World(TM) programmers: by rkroetch · · Score: 1

    Probabilistic Robotics: A great book published by MIT Press. A must read for anyone who ever deals with sensors or real-world data.

    --
    Potty Humor!
  54. My Personal Favorites by egyptiankarim · · Score: 1

    "Programming Pearls" by Jon Bentley has long been one of my favorites. The first two chapters or so are especially interesting because every other page hits you with an "AHA!" solution to some seemingly complex problem.

    "Computer Ethics: A Cautionary Tale" by Forester and Morrison is pretty interesting, also; though, it's not really technical at all, just thoughtful.

    --
    Eek!
  55. Cryptonomicon and Best Software Writing by ThousandStars · · Score: 1
    On the fiction side of things, Neal Stephenson's Cryptonomicon depicts nerd/geek culture and minds better than anything else I've read. And it's hilarious.

    On the non-fiction side, Joel Spolsky's Best Software Writing Volume 1 is a winner, and not just for programmers, either; in that respect, it's similar to Frederick Brooks' The Mythical Man Month.

  56. Re:Switching Power Supply Design, Abraham I. Press by Austerity+Empowers · · Score: 1, Interesting

    I wouldn't call that computer science per se, but then I don't know anyone who designs computers who doesn't also have Howard Johnson:

    http://www.amazon.com/High-Speed-Digital-Design-Semiconductor/dp/0133957241/ref=sr_1_1?ie=UTF8&s=books&qid=1230059485&sr=1-1

  57. Oh no! Someone said Tanenbaum! by Anonymous Coward · · Score: 0

    Cue the Linus fan backlash.

    Anyway: Jon Bentley's "Programming Pearls" pair of books. Yum.

  58. My favorites by ThePhilips · · Score: 1

    - Object Oriented Design and Analysis by Booch/etc.

    One of the best books on object oriented programming. Very hard to read and grok all the concepts. Covers many aspects on all phases of software development.

    - Programming Perl by Larry Wall, Tom Christiansen & Randal L. Schwartz.

    For a *nix guy, Perl is irreplaceable tool for solving randomly popping up problems. Easy read, but need to read Learning Perl first.

    - UNIX Power Tools by Jerry Peek, Tim O'Reilly & Mike Loukides.

    Great book on learning stupid tricks one can do in *nix. Most tips are outdated, yet many ideas are quite relevant even in Linux today. Took some time to read it, but was very rewarding.

    - Art of Unix Programming by ESR.

    Delves into many things. Great help to get an overview on how people do things and most importantly why. Read in one gulp in less than two days.

    --
    All hope abandon ye who enter here.
  59. Introduction to Algorithms by ganhawk · · Score: 1

    I am surprised no one has mentioned yet, Book by Cormen Rivest and Leiserson.
    This is one of the best algorithms book I ever used.

    --
    Python script to convert photos into "artsy" portraits: http://p2pbridge.sf.net/pyPortrait/
    1. Re:Introduction to Algorithms by Anonymous Coward · · Score: 0

      I am surprised no one has mentioned yet, Book [amazon.com] by Cormen Rivest and Leiserson.

      I'm surprised you didn't notice that it was listed in the summary and mentioned several times in the thread so far...

    2. Re:Introduction to Algorithms by ganhawk · · Score: 1

      Fair enough! I did not read the summary since there was no article to "not read".

      --
      Python script to convert photos into "artsy" portraits: http://p2pbridge.sf.net/pyPortrait/
    3. Re:Introduction to Algorithms by JoelisHere · · Score: 1

      I found Algorithm Design, by Kleinburg and Tardos to be more accessible than Introduction to Algorithms. It's not as comprehensive as CLRS, but it's an easier read.

    4. Re:Introduction to Algorithms by bytethese · · Score: 1

      We just used this book in my Theoretical Foundations of Secure Computing (ie Masters level Algorithms) class and that book confused the crap out of the whole class. :)

  60. Old skool by El+Cabri · · Score: 1

    A Discipline of Programming by E.W. Dijkstra (1975)

  61. Mastering Regular Expressions - O'Reilly by suggsjc · · Score: 1

    ISBN: 1-56592-257-3

    Obligatory xkcd post

    --
    When I have a kid, I want to put him in one of those strollers for twins and then run around the mall looking frantic.
  62. Computer Architecture by bunratty · · Score: 1

    For computer architecture, can anyone beat Hennessy and Patterson? I mean other than Patterson and Hennessy?

    --
    What a fool believes, he sees, no wise man has the power to reason away.
    1. Re:Computer Architecture by musicalwoods · · Score: 1

      I second Computer Organization and Design (the second link) It was a wonderful resource and really helped me understand computer architecture better. My only complaint was that Appendix B was on the disc instead of printed, and that section could have been more in-depth. I had to do a lot of critical thinking to connect some of the dots there.

    2. Re:Computer Architecture by geminidomino · · Score: 1

      I have to say, I wasn't thrilled with Computer Organization and Design" when I used it. It was good enough to be worth keeping, of course, and in hindsight I think it might have been more the prof and course than the book.

      Although I did have a lot of trouble understanding the diagrams since I'm not exactly gifted on the vision front, and there's not a lot of difference between "bluish-grey" and "greyish-blue" they use a lot...

  63. The Pragmatic Programmer by Lserevi · · Score: 1

    I'm currently working my way through "The Pragmatic Programmer" by Andrew Hunt and David Thomas. It contains much generic wisdom and considerable scope.

    1. Re:The Pragmatic Programmer by spirality · · Score: 1

      I would second this. There's no specific technological content, but in terms of best practices it kills.

      I would add:
      Design Patterns by Gamma et. al
      Effective C++
      Modern C++ Design
      Large Scale C++ Software Design

      I guess you can tell what world I live in...

      I found Dive Into Python an excellent book too, but with the release of Python 3000 it is probably less relevant.

  64. Mathematics classic by ProteusQ · · Score: 1

    And it really deserves the title: General Topology, by John L. Kelley.

    Its notation is out of date in certain respects, but other than that, it's aged well.

    1. Re:Mathematics classic by Anonymous Coward · · Score: 0

      That book brings back fond memories for me. It was used by Prof. Kelley in the last class he taught at Berkeley before retiring, in 1985. I was in that class, and we all knew what an honor it was to be there. Good times.

  65. Prices! by fm6 · · Score: 2, Insightful

    I followed some of the links, and was appalled at the prices. $100 for a simple summary of OS technology? That's a blatant, immoral cashing-in on the fact that students are are a captive audience.

    (What's really sad is that $100 for textbook is actually relatively cheap.)

    Even $70 for SICP is ridiculous. Fortunately, the authors are kind enough to provide a free online copy.

    1. Re:Prices! by Anonymous Coward · · Score: 0

      Don't worry. Wait a semester and you'll be able to get a copy for 1/2 the price... I had textbooks that lost 95% of their value within three years.

    2. Re:Prices! by Tragek · · Score: 1

      I feel bad. I've been so conditioned by university text book prices that I no longer blink at books that cost that much. Of course, it means I don't buy books anymore.... but I don't blink.

      I'm really waiting for the textbook publishers to get on the Ebook train so I can justify a 600$ ebook reader. Would make my life much easier.

  66. Debugging by Polo · · Score: 1
  67. Writing Solid Code by Rick+Genter · · Score: 2, Informative

    Following any of the advice in Writing Solid Code will guarantee that your code will become higher quality.

    --
    Don't underestimate the power of The Source
    1. Re:Writing Solid Code by Anonymous Coward · · Score: 0

      Following any of the advice in Writing Solid Code will guarantee that your code will become higher quality.

      Yes! I try and get all my coworkers to read it. It's a real eye-opener.

    2. Re:Writing Solid Code by Anonymous Coward · · Score: 0

      Same goes for Growing Better Software, which focuses on more than just code- it also gives handy tips about user interfaces and design.

  68. Internetworking with TCP/IP by crunchly · · Score: 1

    by Douglas Comer. Got me started in networking and I learned as much from this series of books as any other.

    1. Re:Internetworking with TCP/IP by walshy007 · · Score: 1

      seconded

    2. Re:Internetworking with TCP/IP by spacey · · Score: 1

      Oh, agreed! I got this used and it was such a good reference!

      -Peter

      --
      == Just my opinion(s)
  69. AIMA by penguinbroker · · Score: 1

    Artificial Intelligence - A Modern Approach by Russell and Norvig

    The best book for catching up with the trends in AI systems over the past couple of decades.

    1. Re:AIMA by xIcemanx · · Score: 1

      Seconded. It has like 90%+ market share in AI classes for a reason.

  70. An Introduction to Database Systems by plopez · · Score: 1

    by C. J. Date. The rest of list is good, but this omission is glaring.

    --
    putting the 'B' in LGBTQ+
  71. Why is this even a question? K&R2, hands down. by sirwired · · Score: 1

    K&R2 is simply the finest book on programming, ever. I like Code Complete, the Camel, etc. just as much as any other Geek, but K&R2 is still the best.

    SirWired

    P.S. Why is a book that has been in print for a couple of decades, is only a quarter-inch thick, and badly typeset, STILL sold for $40+?

  72. Here are two suggestions by Psionicist · · Score: 1

    Introduction to the Theory of Computation by Sipser. This is my favorite computer science textbook together with SICP. It deals with theoretical computer science, mainly automata, computability and complexity theory. It's just 400 pages or so, but covers lots of ground.

    Types and Programming Languages by Pierce. This is a very accessible introduction to the theory of programming languages and types.

  73. C/C++ Programmer's Reference by 10e6Steve · · Score: 1

    C/C++ Programmer's Reference is a handy little book.

  74. bertrand mayer - object oriented software con by Anonymous Coward · · Score: 0

    struction.

    Best book I've read on the topic, and I've read quite a few.

  75. How's about for Economics / Business / Marketing? by definate · · Score: 1

    Hey,

    I like the above suggestions. However how about some economics / business / marketing books also? Perhaps there are specific Journal's or Magazines?

    Don't just list what you read at Uni, but what books did you find stimulating to read, and really made you think?

    What books "basically" covered everything? Or helped you make connections between different ideas?

    I'd love to find some of these books, I've found Amazon reviews and similar, aren't that reliable.

    Which is another question, how did you find out about these books? How would you find out about more?

    --
    This is my footer. There are many like it, but this one is mine.
  76. "Structured Programming" by Dykstra by i-am-alex · · Score: 1

    In the end, it's your code that does the job, not "methodology" or "framebraries" or whatever. And this book is bible on the subject of writing working code.

  77. THE Book by Hal_Porter · · Score: 1

    Undocumented DOS by Andrew Schulman and Ralph Brown

    --
    echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    1. Re:THE Book by multipartmixed · · Score: 1

      Is that an updated version Ralf's interrupt list?

      I had a soft cover version about 3.5" thick in the early 90s.

      --

      Do daemons dream of electric sleep()?
    2. Re:THE Book by Hal_Porter · · Score: 1

      No, it's much more than that. It's really a book about reverse engineering a closed source OS and working out the data structures it uses. It's also a very good example of explaining cryptic technical details in a readable way, a sort of computer detective story. It's really remarkable.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
  78. CTMCP by Bobtree · · Score: 1

    Concepts, Techniques, and Models of Computer Programming by Peter Van Roy and Seif Haridi. This is especially recommended if you love SICP. http://www.info.ucl.ac.be/~pvr/book.html

  79. More Good books for any Programming/Comp Sci by CircusTent · · Score: 2, Informative

    The 19 Deadly Sins of Software Security is a book that I would say is almost a necessity for any collection. It helps to show some of the issues that the different programming languages have and how to fix the problem.
    Hacking : The Art of Exploitation is another great book that I would say you should have to bring more knowledge about how to prevent and write better code.
    Outside of that I own a ton of Programming/Application design methodology books.

    --
    Pew Pew
  80. the little schemer by empirionx3 · · Score: 1

    the little schemer, simply teriffic.

    1. Re:the little schemer by JoelisHere · · Score: 1

      Agreed. This book was a bit annoying at first, but after a bit the unique approach helped immensely and was kind of fun too.

  81. Pascal : Programming with Style by reynost · · Score: 1

    ISBN: 9780805358353 Pascal : Programming with Style, A Brief Introduction Lamb, Richard Although written with Pascal it's good info for any programming language.

  82. The Cuckoo's Egg by Zoxed · · Score: 3, Interesting

    Without doubt Clifford Stoll's The Cuckoo's Egg It had me gripped in a way that no programming book could have :-)

    1. Re:The Cuckoo's Egg by merobinson · · Score: 1

      Very good read, unless you only like reading textbooks that is.

    2. Re:The Cuckoo's Egg by Anonymous Coward · · Score: 0

      I agree, it's one of very few books I read on a single day. Other equally fascinating books for me:

      Masters of Doom (about id software's rise)

      The Soul of a New Machine (about the development of Data General's VAX competitor)

      The Unix Haters Handbook (available online at http://www.icce.rug.nl/edu/ugh.pdf, this has class, unlike the stupid Linux blog)

      Showstopper! The Breakneck Race to Create Windows NT and the Next Generation at Microsoft (about the development of Windows NT)

    3. Re:The Cuckoo's Egg by DSmith1974 · · Score: 1

      I remember borrowing the Cuckoo's Egg back in '95 on my sandwich year - whilst more of a thriller (all be it true one) than a programming book, it is a fascinating and well written account of a true story and a niece piece of 70s history with plenty of refs to important non-work aspects of the time, such as the Grateful Dead, etc.

      Kind of reminded me of another great computing story (totally fictional this time) which was Bugs by Theodore Rozak - imagines a near-distinct future where minuscule bugs breed and thrive within IBM System/360s and other hardware of the time, eventually leading to disastrous results for society. Apparently the book was inspired by a true case of un-explained bugs found within the servers and terminals at AT&T that caused irritation to VDU users - though I sometimes wonder whether this wasn't just thunder-flies and a few sickies..

      --
      It is not immoral to create the human species - with or without ceremony, Samuel Clemens.
    4. Re:The Cuckoo's Egg by Anonymous Coward · · Score: 0

      Seconded. A very entertaining book.

  83. Re:TCP/IP Illustrated, Vol 1 by W. Richard Stevens by geminidomino · · Score: 4, Informative

    Agreed.

    "Unix Network Programming" was a godsend.

  84. For UI Design by Wiseazz · · Score: 1

    I have a couple I'm working through to help with the other side of my brain (the stupid side).

    Designing Interfaces, Jenifer Tidwell
    Information Dashboard Design, Stephen Few

    Both have been very helpful... mostly, I'm able to much better explain several design principles that I've known somewhat intuitively for a long time - I just couldn't talk the talk. Comes in handy when I'm justifying a UI design to the business folks, or trying to communicate what I need to an actual designer.

    --
    My sig sucks.
    1. Re:For UI Design by Wiseazz · · Score: 1

      I should clarify - I meant that *MY* artsy side of the brain is stupid. Not that it's stupid in general. Sorry.

      --
      My sig sucks.
    2. Re:For UI Design by CircusTent · · Score: 1

      User Interface Design for Programmers by Joel Spolsky is a really good book for Interface design when you are not use to thinking about how the users are going to use your program.

      --
      Pew Pew
  85. My Own list of Favorite Books by Anonymous Coward · · Score: 1, Informative

    Practical Books:
    Modern Compiler Implementation in C (I prefer this to the Dragon book, I own both)
    The Data Compression Book
    Operating Systems: Design and Implementation (Minix Book, read all editions)
    Computer Oriented Numerical Methods
    Computer Science: A Programmer's Persective
    Advanced Programming in the Unix Environment
    Unix Network Programming
    Action Arcade Adventure Set

    Books that pay off if you have the patience:
    Elements of the Theory of Computation
    TAOCP (Vol 1, 2, 3)
    Programming Challenges (By Skiena)

  86. well... by Anonymous Coward · · Score: 0

    It depends what I need specifically. If I had to pick a general cover all I'd say O'Reilly books. Especially for programming. There are other individual books I use but more O'Reilly books than any other type.

    1. Re:well... by JoelisHere · · Score: 1

      O'Reilly puts out some very good reference books. Their DHTML book was a huge help when I got started in web development.

    2. Re:well... by Anonymous Coward · · Score: 0

      It depends what I need specifically.

      You don't say...no shit, sherlock.

  87. Elements of Networking Style by Anonymous Coward · · Score: 0

    by M.A. Padlipsky. Even though the IP vs. OSI war is over, it's very instructive when observing other protocol wars.

    Bob

  88. Zen and the Art of Motorcycle Maintenance by Anonymous Coward · · Score: 0

    The fundamental book of the relationship between people and technology.

    1. Re:Zen and the Art of Motorcycle Maintenance by Frans+Faase · · Score: 1

      Indeed, very interesting. Makes you understand how the average end-user thinks compared to the average software-engineer. I also has some interesting things to say about 'stuckness', something you often experience during programming and/or debugging.

  89. Blondie24: Playing at the Edge of AI by Anonymous Coward · · Score: 0


    Blondie24: Playing at the Edge of AI

    The first few chapters are very basic and introductory. It gets quite interesting after that though.

  90. Life Changing Books by MrLogic17 · · Score: 1

    If you want the book that most influenced my IT career (and life in general), you've got to go way back to the 80's.

    Mapping the Commodore 64
    http://www.scribd.com/doc/40444/MAPPING-THE-Commodore-64

    It blew my mind, revealing every little inner part of the machine. Ah, the glory days of writing machine code with a software monitor. None of this assember luxury - we figured jump offsets by counting the bytes as we wrote the code!

  91. A Discipline of Programming by MarkusQ · · Score: 1

    Dijkstra's "A Discipline of Programming" is high on my list, as well as "Programing Pearls" and "Perceptions".

    Oh, and "Smalltalk-80: The Language and It's Implementation"

    --MarkusQ

  92. My book shelf: by Anonymous Coward · · Score: 0

    Martin Fowler "Refactoring", Bob Martin "Agile Software Development", Larman "Applying UML and Patterns", Evans "Domain Driven Design", Beck "Test Driven Development", Gamma et al "Design Patterns", Seibel "Practical Common Lisp"

  93. CS by Anonymous Coward · · Score: 0

    C++ FOR YOU++ ?!?!?!
    Big Java

  94. Re:TCP/IP Illustrated, Vol 1 by W. Richard Stevens by fermion · · Score: 1
    I will second this. Several years ago I had to debug a tcp/ip issues and used this book as a reference. The writing was clear and accurate. The book allowed me to fix the code in a matter of days.

    I would recommend the other 'practice' and management book. The mythical man month, Composite/Structured programing.

    And, of course, for cryptography, Applied Cryptography. Like TCP/IP illustrated, I have never read the entire book but chapters of it have proved invaluable.

    --
    "She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
  95. GÃdel, Escher, Bach: An Eternal Golden Braid by Anonymous Coward · · Score: 0

    A metaphorical fugue on minds and machines ...

    Some may not consider this in the realm of a Tech/Eng./CS Book but no other book has affected my understanding and appreciation of computer hardware and software systems design as greatly as this masterpiece.

  96. Pocket Ref by Anonymous Coward · · Score: 0
  97. Chronicles of Narnia by gameboyhippo · · Score: 0, Offtopic

    My favorite CS books are the Chronicles of Narnia followed by Mere Christianity.

    1. Re:Chronicles of Narnia by JoelisHere · · Score: 1

      For C.S. books I would have to go with the Abolition of Man.

  98. Any title containing "Cookbook" by dwhite21787 · · Score: 1

    I learn best by adapting example code.

    --
    "Even if you're on the right track, you'll get run over if you just sit there" - Will Rogers
  99. Computer Graphics: Principles and Practice in C by Anonymous Coward · · Score: 0

    Computer Graphics: Principles and Practice in C, 2nd Edition. Foley, James; A. van Dam, S. Feiner, J. Hughes. OISBN 0-201-12110-7

    If you really want to know how computer graphics works, this is THE BOOK. All the fundamentals and how they are used, which is why it is 1200 pages.

  100. The Code Book by Anonymous Coward · · Score: 0

    This was the first book on cryptography I read and it is very good for someone interested in the field. Very enjoyable read, not a text book.

    The Code Book: The Evolution of Secrecy from Mary, Queen of Scots to Quantum Cryptography

    http://en.wikipedia.org/wiki/The_Code_Book

  101. Book List by frost_knight · · Score: 1

    "Lions' Commentary on Unix" by John Lions and Peter H. Salus

    "Godel, Escher, Bach: An Eternal Golden Braid" by Douglas R. Hofstadter

    "Linux Administration Handbook" by Evi Nemeth, Garth Snyder, and Trent R. Hein

    Any of the Feynman physics lecture series ... or "Surely You're Joking, Mr. Feynman" and other such titles

    Any of Raymond Smullyan's puzzle books

    --
    It always takes longer than you expect, even when you take into account Hofstadter's Law. --Hofstadter's Law
  102. Advanced Programming in the UNIX Environment by jtshaw · · Score: 1

    by W. Richard Stevens (1st) edition and added to by Stephen Rago (2nd edition).

    If you need to program in *nix this is a must have reference.

  103. Juniper by Munpe+Q · · Score: 1

    To follow along with the "Any title containing..." I often find it frustrating that there are very rarely Juniper books on the shelf. My two well used books are the "ScreenOS Cookbook" and the "JUNOS Cookbook".

  104. My Favorites by peterofoz · · Score: 2, Interesting

    How to Break Web Software
    Functional and Security Testing of Web Applications and Web Services

    Programming Pearls

    The Art of Computer Programming (3 vols)
    Donald E. Knuth

  105. My list by Anonymous Coward · · Score: 0

    Efficient data structures and algorithms (K. Mehlhorn, 1984) (out of print unfortunately)

    Thinking in C++ (B. Eckel)

    Modern C++ design (A. Alexandrescu)

    1. Re:My list by whipping_post · · Score: 1

      Thinking in Java also by Eckel is an EXCELLENT OO book. I have my C# developers read parts of it!

  106. Essential Everyday References by retzkek · · Score: 1

    "Pocket Ref", by Glover
    "Engineering Formulas", by Gieck & Gieck

  107. In IT security field by hugetoon · · Score: 2, Informative

    "Security Engineering" by Ross Anderson http://www.cl.cam.ac.uk/~rja14/book.html/.
    The best book ever, truly enlightening.
    If you're young enough it will change your life.

  108. Sedgewick Algorithms (in C) by Ken_g6 · · Score: 1

    Introduction to Algorithms was a textbook in one of my college classes. I never use it.

    The book I always use instead is one I got before college, Algorithms by Robert Sedgewick. Sedgewick presents algorithms with straightforward English, diagrams, and code examples. It also manages to pack many more algorithms, including more advanced topics, into fewer, smaller pages than Intro to Algorithms. My edition has examples in Pascal, a language I never use; but it's still clearer than Intro to Algorithms. There are newer editions for C, C++, and Java.

    I don't believe there is a single proof in Algorithms, which I think is good. When looking up an algorithm, I don't want to prove why it works; I just want to know how it works, and how to implement it.

    By the way, do not confuse Algorithms with An Introduction to the Analysis of Algorithms by Sedgewick and Flajolet. Another of my college textbooks, this one has more proofs, not less!

    --
    (T>t && O(n)--) == sqrt(666)
  109. Your list seems to cover the popular books by Sits · · Score: 1

    But programming book lists crop up all over the place. In this Stifflog interview with Yegge, Torvalds, Hansson, Norvig, Thomas, Van Rossum, Gosling, Stroustrup and Bray the interviewees mention their favourite books (of the most popular I think only K&R and Programming Pearls weren't on your list).

    Many people have Knuth's Art of Programming on their shelves (but it's harder to find people who have read all of it).

    One of the Kernel Hacker Bookshelf series on LWN recommends Unix Internals.

    One of the consultants who taught at my University said that the Mythical Man Month and Peopleware were good. I've read these too and can also recommended them (although they are more about managing programmers rather than programming per se). The consultant also recommended Design Patterns (although he said not to read the book cover to cover but rather to just be aware of them so you could refer to them later).

    Reddit has a Must Read Programming books thread.

    I've heard the "Dragon Book" (Compilers: Principles, Techniques, and Tools I think is the 2nd edition) being talked of favourably.

    What is the single most influential book every programmer should read? thread on Stackoverflow.

    Many people seem to recommend reading Godel, Escher, Bach...

    Joel Spoolsky's list of books every programmer should read.

    Maybe someone will collect the 20 most popular books into one easy to read post rather than the scattershot of links I've given you here...

  110. Really cool stuff for everyone by karlandtanya · · Score: 1

    The flying circus of physics with answers

    The elegant universe

    Also, the 1936 Chemical Dictionary had some neat syntheses.

    --
    "Reality is that which, when you stop believing in it, it doesn't go away." - Philip K. Dick
  111. K&R - The C Programming Language by buddyglass · · Score: 1

    Best quality: concise.

  112. Peopleware by ebh · · Score: 1

    "Peopleware: Productive projects and teams", by DeMarco and Lister. Required reading for you and your boss. A nice quick read that starts out, "Somewhere today, a project is failing."

    It's all about project management from that qualitative side, not the Gantt-chart quantitative side. What makes a team jell and work well together? How does the environment kill a team (hint: cubicles). How do the PHBs do it?

    Honorable mention: "Quality is Free" by Crosby.

  113. For classics, I prefer by davebarnes · · Score: 1

    Elements of Programming Style by Brian W. Kernighan and P. J. Plauger

    Structured Design: Fundamentals of a Discipline of Computer Program and System Design by Edward Yourdon and Larry L. Constantine.

    Guide to FORTRAN IV Programming by Daniel D. McCracken

    --
    Dave Barnes 9 breweries within walking distance of my house
  114. Norvig's Paradigms of AI Programming by slasho81 · · Score: 2, Informative

    Peter Norvig's Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp

    1. Re:Norvig's Paradigms of AI Programming by cpghost · · Score: 1

      That was one of my all-times favorites!

      --
      cpghost at Cordula's Web.
  115. My list by Anonymous Coward · · Score: 0

    "Efficient data structures and algorithms" (K. Mehlhorn) out of print unfortunately

    "Thinking in C++" (B. Eckel)

    "Modern C++ design" (A. Alexandrescu)

    "Lisp in small pieces" (C. Queinnec)

    "UNIX network programming" (R. Stevens)

    "UNIX internals: the new frontiers" (U. Vahalia)

  116. Object-Oriented Software Construction, by Meyer by Westmalle · · Score: 1

    Personally, "Object-Oriented Software Construction, Second Edition" opened my eyes. It is not a computer language, even if it is basically also presents a strong rationale for Eiffel, but it presents the concepts of OO in a clear and understandable way.

  117. The Art of Unix Programming by tokiko · · Score: 1

    The Art of Unix Programming by ESR
    http://catb.org/esr/writings/taoup/
    ISBN: 978-0131429017

  118. I'm a big fan of Portable Shell Scripting by seebs · · Score: 1

    I like this one a lot:

    Beginning Portable Shell Scripting: From Novice to Professional

    My favorite feature is the way that, if enough people buy it, I get about a buck per copy!

    Seriously, though, it's a book that exists in no small part to be the book I wished someone had written about shell programming. While I'm the only listed author, the tech reviewer (Gary V. Vaughan) made a HUGE difference, and caught a ton of stuff. What interests me is that we both ended up learning a huge amount about shell programming that we didn't previously know -- even though he was certainly an expert in the field before we started, and I had done enough shell programming to at least think myself competent.

    --
    My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
  119. Where is your library and what type is it? by Sits · · Score: 1

    Is it a University library or a public library? What your public will want will vary dramatically depending on who your primary audience is.

    Back (not so long ago) when I was a kid I spent ages reading reading a book about programming in BASIC on the BBC and it was packed full illustrations (I can't remember much more about it other than it hard a part talking about how you needed to type """ if you wanted to get a quote).

    When I look at the stuff being returned to the library at the University I am at it seems to mostly be course texts and fellow students are always complaining about how they can't get hold of XYZ course texts because there aren't enough copies of it in the library.

    When I look at local book stores the stuff that always seems to have taken are the "Learn XYZ in 24 hours" or the Dummies series books.

    I know what I like to read (books that have a good reputation and are under 300 pages long) but goodness knows whether this is anything like your borrowers...

    1. Re:Where is your library and what type is it? by librarybob · · Score: 1

      It is a mid-sized public library northwest of Chicago (www.lvdl.org). We serve about 35,000 people ... and circulated over 1,000,000 items last year. But we can do better. :-)

  120. Internetworking with TCP/IP by BernardKing · · Score: 1

    I'm a huge fan of Douglas Comer's classic, "Internetworking with TCP/IP." I have the second edition from 1991. I remember that when this book came out, everyone was talking about at Reiter's Scientific Bookstore here in DC, a place where lots of geeks hung out. It really changed my outlook on networks -- no longer did I see them as a proprietary means of connecting one vendor's stuff. Comer showed how TCP/IP could seamlessly bring it all together.

  121. So many choices.... by Anonymous Coward · · Score: 0

    This could end up being a long list. There really are a lot of good books out there, but 3 off the top of my head:

    1) Applied Numerical Methods by Chapra
    2) Signals and Systems or Discrete Time Signal Processing by Oppenheim
    3) Digital Design by Wakerly

    The above have proven to be great references time and again.

    Oh, and Nonlinear Dynamics and Chaos is an absolutely must have for those interested in such things.

    1. Re:So many choices.... by Anonymous Coward · · Score: 0

      For numerical analysis, I prefer "Numerical Methods" by Dahlquist and Bjorck.

  122. In statistics... by proc_tarry · · Score: 1

    Probably the best statistics book is "Applied Linear Statistical Models" by Neter, Kutner, Nachtshiem, Wasserman.

    It covers just about everything you need to know about typical "regression" models and it's basic theory, estimation, and many applications.

    Nearly every graduate applied regression class uses this book. But it could also be used to teach Design of Experiments and serves as a starting point for non-linear models.

  123. Kim King's C Programming: A Modern Approach by seebs · · Score: 1

    C Programming: A Modern Approach

    This is a seriously excellent book on C. How excellent? Excellent enough that I actually recommend it before I recommend K&R. Seriously, it's that good.

    --
    My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
  124. For network and system admins by agristin · · Score: 1

    As with all recommended books- make sure you read critically:

    System and Practice of Network Administration by Limoncelli and Hogan. Not a how to book a why to book. It should be required reading for everyone in IT.
    How to Win Friends and Influence People by Dale Carnegie. Also should be required reading for everyone in IT.

    If you are a router jockey:
    Routing TCP/IP vol 1, by Doyle, covers the IGPs.
    Internet Routing Architectures by Sam Halabi

    And the new world:
    MPLS and VPN Architectures (probably vol. 1 and 2 if you have to do Service Provider or VRF) by Pepelnjak

    If you are a sysadmin- you should read every shred of manufacturer's documentation on their website especially the login required. But if you can't always read the installation and configuration guides.

    If you are a software dev guy:
    Mythical Man Month- Fred Brooks
    Peopleware- DeMarco and Lister

    It will teach you about the why and how of managing the development cycle. Of course the algorithms and tools, and languages books are important, but so is understanding the development cycle and how the rest of the business sees it.

    I wish I had a good intro to business text for the slot to recommend to all the types.

    There is Out of Crisis by Deming for managers. I could probably come up with more...

  125. Re:Mathematics classic -- Statistics by duh+P3rf3ss3r · · Score: 1

    In my estimation, the most useful statistics text ever written is Draper and Smith's "Applied Regression Analysis" (ISBN 0-471-17082-8). I know that that book caused me to write more computer algorithms than any other book I've ever read.

    --
    Give a man a match: warm him for an instant. Douse him in petrol and set him aflame: warm him for the rest of his life.
  126. K & R by UNXgod · · Score: 1

    OMG~ WHERE's K & R!!!! Should have been in the first OP!

    1. Re:K & R by LandruBek · · Score: 1

      well it was fourth, that's not so bad eh?

      --
      $META_SIG_JOKE
  127. My choice by Anonymous Coward · · Score: 0

    The Art of Electronics, Paul Horowitz.
    Ultimate source of practical electronics information. A lot of humor in it.

  128. Computer Lib / Dream Machines by Geirzinho · · Score: 1

    Computer Lib / Dream Machines by Ted Nelson is a classic by a computer visionary. Well worth it, if you can get it.

  129. The only book you really need by Penguin+Programmer · · Score: 1

    Introduction to Algorithms by Cormen, Leiserson, Rivest and Stein. Anyone who wishes to call him or herself a computer scientist must have a copy of this.

  130. SQL for Smarties by Joe Celko by SamuraiMike · · Score: 1

    This was a pretty awesome book showing some of the cool things that you can do with set-based programming and SQL databases: medians, efficient tree-storage, and even string parsing!

    The edition I read had a lot of typos, but they are generally pretty obvious. The author is also rather active in newsgroups, so there is a lot of supplemental information and the ability to ask questions.

  131. Cradle to Cradle by Anonymous Coward · · Score: 0

    It's not computer science but it is engineering/design related. Cradle to Cradle by William McConough & Michael Braungart because besides writing a good book about sustainable design, they also put their publishing where their mouth is by printing the book on a recyclable plastic composite material instead of paper.

  132. PeopleWare by rockmuelle · · Score: 1

    Next to the Mythical Man Month, this is a must read for anyone working on software with more than one person. It covers all aspects the human side of software development and includes a wealth of information not only how how to manage software projects but also what environments work best for software development.

    It's based mostly on research from the 1970s, but is still surprisingly relevant. The latest edition updates some of the core lessons for the internet age (e.g., substitute phone calls for email messages, and you get a similar break in 'flow').

    -Chris

  133. Yes, K&R2 is still the best. by L'homme+de+Fromage · · Score: 4, Informative

    Other CS books I like:

    • The Design and Analysis of Computer Algorithms, by Aho, Hopcroft & Ullman
    • Elements of the Theory of Computation, by Lewis & Papadimitriou
    • Computability, Complexity, and Languages, by Davis & Weyuker
    • Introduction to Automata Theory, Languages, and Computation, by Hopcroft & Ullman
    • The UNIX Programming Environment, by Kernighan & Pike
    • The AWK Programming Language, by Aho, Kernighan & Weinberger
    • Combinatorics for Computer Science, by Williamson

    For math, my favorites are:

    • Introduction to Geometry (2nd ed.), by Coxeter
    • Div, Grad, Curl, and All That, by Schey
    • A Course of Pure Mathematics, by Hardy
    • Introduction to Probability Theory, by Hoel, Port & Stone
    • Differential and Integral Calculus, Vols. 1&2, by Courant
    • A First Course in Numerical Analysis, by Ralston & Rabinowitz

    For physics, my favorites are:

    • Mechanics (3rd ed.), by Landau & Lifshitz
    • Mathematical Methods of Classical Mechanics, by Arnold
    • Spacetime Physics, by Taylor & Wheeler
    • Gravitation, by Misner, Thorne & Wheeler
    • Classical Electrodynamics (2nd ed.), by Jackson
    • Lectures on Quantum Mechanics, by Baym
    1. Re:Yes, K&R2 is still the best. by drinkypoo · · Score: 1

      "The UNIX Programming Environment" was going to be my vote. Single best primer on Unix and C ever. One tidy little text will have the technical-minded individual up to speed to the point where they can figure out the rest of what they need to know from the manpages and the sources. It's not exactly going to teach you advanced programming techniques but it's just really excellent. And while Microsoft may have the backwards compatibility crown, the stuff in the older editions of this book is just as applicable today on Linux. Sure, all the commands do more now, and you will (hopefully) never actually have to use ed, but you certainly should know how to use the same commands since they apply to vi and sed (among many other applications, including the ksh command line) and the C programming examples will compile just fine as well.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    2. Re:Yes, K&R2 is still the best. by asciiduck · · Score: 2, Interesting

      I'm going to have to disagree with your choice in E&M book, I'm personally a fan of David Griffiths for E&M. I'm also a pretty big fan of his Quantum Mechanics book and I've heard good things about his Particle Physics book. Also, "Surely You're Joking, Mr. Feynman!" is an amusing book (pretty much anything by him will be good, but the book I just mentioned has no scientific value to speak of but is a good read).

    3. Re:Yes, K&R2 is still the best. by L'homme+de+Fromage · · Score: 2, Interesting

      I have to admit I've never cared for the Griffiths E&M book. His writing style put me off, plus there's a bit too much hand-waving. At that level of E&M (beginning/intermediate) I prefer Purcell's "Electricity & Magnetism" or "Foundations of Electromagnetic Theory" by Reitz, Milford & Christy. The math and the explanations are better in those books than in Griffiths', in my opinion, and both are better preparation for Jackson's more comprehensive book.

    4. Re:Yes, K&R2 is still the best. by Anonymous Coward · · Score: 0

      Mechanics (3rd ed.), by Landau & Lifshitz

      The Strunk & White of physics. Pound for pound, it's my favorite physics book.

      Gravitation, by Misner, Thorne & Wheeler

      The heaviest physics book. It's a little too much of an acid trip for me. I prefer Wald.

  134. My two cents - and my two books by taiji23 · · Score: 1

    Here are my two personal favorites: 1) Programming Python, and 2) Advanced Windows Debugging. The Programming Python is a classic in my opinion - now on 3rd Ed. Adv Windows Debugging is a newcomer, but I have learned more from this book than any single book I can remember in quite some time. Enjoy!

  135. Computer Networks by karthik82 · · Score: 1

    It may not rank among some of the heavyweights mentioned here, but I liked "Computer Networks" by Andrew Tanenbaum.

  136. Microwave Engineering, 3rd Edition, David M. Pozar by HungSoLow · · Score: 1

    I realize the majority of readers are SW or Comp Sci, but for anyone wondering about the basics of microwave engineering, I highly recommend this text. IMHO, it's the best textbook I've ever read. Terrific diagrams, tons of practical examples and he doesn't shy away from the mathematics but introduces it intelligently.

    The requirements for reading the text is the standard Science/Engineering Calculus background.

  137. Two of my favorites by MeDroogie · · Score: 1

    There's no doubt about it... the most influential book in my career was "Software Tools" by Kernighan and Plauger. With examples in Ratfor (which I actually used in the golden days!), it taught good, reusable design practices by two big names in the Bell Labs/Unix arena. Especially in this day when many programmers can barely cut and paste toolkit code together, this book can still teach a thing or two about software.

    My other favorite was more a lesson in good teaching practices which I continually use years afterward: A Fortran Coloring Book by Richard Kaufman is a great example of teaching to the masses.

  138. Mythical Man Month, TAOCP, Tanenbaum by JoeF · · Score: 1

    The Mythical Man Month is probably the most important SW Engineering book ever.
    Second on my list is The Art of Computer Programming. Very dense, nothing to read on a leisurely Sunday afternoon. But very important to get the background on CS. Without having read that, you are not a software developer, you are a coder.
    Third, Tanenbaum's Operating Systems book. It is impossible to understand a program's interaction with the OS without it.

  139. Why's (Poignant) Guide to Ruby by genner · · Score: 1

    The author even made the online version free. http://poignantguide.net/

  140. GÃdel, Escher, Bach by proidiot · · Score: 1

    This book seems so obvious to so many of us that it would seem that it's not worth mentioning, yet there are still so many math/engineering/tech/CS types who haven't read it (perhaps for that very reason). So for those of you who haven't read it, it is a must-read for math- and tech-oriented people. http://www.amazon.com/Godel-Escher-Bach-Eternal-Golden/dp/0465026567

    --
    -proidiot
  141. Re:Clean Code by Luke+has+no+name · · Score: 1

    Why is this guy modded down?

  142. "How to Think Like a Computer Scientist" by sgtrock · · Score: 2

    Dead tree version available soon. GPL licensed, electronic versions available here and here.

    I read an older edition of the latter a couple of years ago and found it to be an excellent introductory text. I have no doubt that the new paper version will be well worth adding to your collection. :)

  143. Obvious choice by Brett+Buck · · Score: 1

    VAX FORTRAN Language Reference Manual.

            Brett

  144. Without me you're nothing by aitikin · · Score: 1

    I have been meaning to read it, but I can't find it. Without Me You're Nothing by Frank Herbert

    --
    "Don't meddle in the affairs of a patent dragon, for thou art tasty and good with ketchup." ~ohcrapitssteve
  145. Re:TCP/IP Illustrated, Vol 1 by W. Richard Stevens by bigbird · · Score: 1

    Yup. *UNIX Network Programming* and *Advanced Programming in the UNIX environment* (and everything else by Stevens) is absolutely brilliant.

    So many books ... not enough time.

    *Design Patterns* is a classic.

    *Unix Power Tools* is extremely useful.

    Tanenbaum's *Computer Networks* should be read by all programmers.

    Bach's *The Design of the UNIX operating system*.

  146. Internetworking with TCP/IP By Douglas Comer by dave562 · · Score: 1

    The title says it all.

  147. Re:How's about for Economics / Business / Marketin by geminidomino · · Score: 2, Funny

    Hey,

    I like the above suggestions. However how about some economics / business / marketing books also?

    Yes, because nothing appeals to CS/Eng geeks like reading books written for marketroids...

  148. 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.

    1. Re:favorite books by theredshoes · · Score: 1
      I've read a few web programming books. Some of my favorites:
      • The Art and Science of Web Design- Jeffrey Veen
      • The Web Designer's Idea Book- Patrick McNeil, I highly recommend this books for layout ideas, it really gives you a great approach to figuring out what style will work best for who you are designing for, depending on their business.
      • JavaScript and DHTML Cookbook, I am not sure who wrote this but it helped me alot.

      I actually have been pretty cheap lately, so I have been reading W3C for tutorials on XML and CSS, because I haven't gotten into it much, I just learned how to use Dream weaver instead, so I took the lazy way out.

      O'Reilly and Sam's have helped me with my basic skills with UNIX, Perl, PHP and MySQL. I have picked up the books, but I haven't sat down and actually delved into them. I just finished my degree, so I am going to actually get to read something practical for a change now and I might even be able to get a decent IT job besides the low to mid level jobs I have had in IT.

      My light reading, there are too many to mention, I have read Just For Fun, it was good. I liked Linus Torvalds outlook and it was interesting how he wrote about his life and how he stayed in locked away in his room working on Linux. I remember it striking me as funny at the time. That Linux was born out of someone not really wanting to join the world and the rest of the human race and party like a normal 20 year old would. It seems his adolescent and college years were painful but it all worked out for him in the end, which I thought was nice. I have never read anything about Richard Stallman, so I am guessing he is some Linux guru guy. I don't know much about Linux really. One day I will probably pick up a book and learn how to use it and it will become my primary OS one day, but for now OSX and Vista are fine. I liked The World is Flat, I had to read that for a class and The Google Story. I think they should make The Google Story into a movie someday.

    2. Re:favorite books by Viv · · Score: 1

      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.

      You're not kidding. I've read Vol I and about half of Vol II. It hurt. A lot.

      But it made me smarter.

  149. Effective C++ by betterunixthanunix · · Score: 1

    Let's not forget the cousins, Effective C++, More Effective C++, and Effective STL. Some of the design patterns and techniques covered in those books apply to other programming languages as well. Also, it is old, but C++ Unleashed, which covers projects that deal with both C++ and Java, CORBA (like I said, a bit old), and other topics of interest for large project developers; and to be fair, Java Unleashed.

    --
    Palm trees and 8
  150. Numerical Recipies by Anonymous Coward · · Score: 0

    In whichever language you choose (the C version is good).

    This book is so well written that its fun to read even if you don't have an computational mathematics to perform. Seriously. A fun book on mathematical programming.

    1. Re:Numerical Recipies by Anonymous Coward · · Score: 0

      Agreed. I have the Fortran version (2nd ed.), and it is excellent. The thing I like most about it is the wide range of topics, including some that are hard to find in printed form. It's nice to have all that information from so many sources in one place. It's a must have.

    2. Re:Numerical Recipies by the_brobdingnagian · · Score: 1

      The text in the book is indeed a good read. I'm not that positive about the example code in the C version. For example: they start all their arrays with 1 instead of 0 and use some kind of "array()" function instead of "malloc()". Somehow the code looked like it was C by FORTRAN programmers, the style seemed a bit off. That said: you shouldn't copy and paste the code from the book. Instead try to understand the algorithm and re-implement it yourself.

  151. Re:How's about for Economics / Business / Marketin by definate · · Score: 1

    Yes, because the only people who read Slashdot are CS/Eng geeks, and I wasn't trying to get some information about other popular areas of study.

    Oh also, your use of the word "marketdroids" shows me that you could really benefit from reading some of these sorts of books.

    But hey, thanks for playing.

    --
    This is my footer. There are many like it, but this one is mine.
  152. From UML and Use Cases to Design to Code by Anonymous Coward · · Score: 0

    Use Case Driven Object Modeling with UMLTheory and Practice:
    http://www.amazon.com/Driven-Object-Modeling-UMLTheory-Practice/dp/1590597745/ref=sr_1_3?ie=UTF8&s=books&qid=1230065870&sr=1-3

  153. Re:How's about for Economics / Business / Marketin by geminidomino · · Score: 4, Funny

    Yes, because the only people who read Slashdot are CS/Eng geeks, and I wasn't trying to get some information about other popular areas of study.

    Geez. There's not even an FA to Read, but you skipped not only the summary but the HEADLINE?!

    Where in "Tech / Eng. / CS" would you put "advertising wankery and asskissing?"

    Oh also, your use of the word "marketdroids" shows me that you could really benefit from reading some of these sorts of books.

    Fortunately, I don't have to. I actually possess a skill.

  154. Re:Switching Power Supply Design, Abraham I. Press by martin_henry · · Score: 2, Insightful

    I wouldn't call that computer science

    It's electrical engineering. The title of the article asked for Tech/engineering/CS books.

    --
    www.purevolume.com/martyd
  155. Favorite books by garyj4 · · Score: 1

    A couple of books go without mentioning for Unix Admins: sed & awk, O'Riley, Solaris Internals, Unix Internals, sendmail, Perl Core Language and Java. Also enjoy PANIC!, Sun Performance and Tuning, Blueprints for High Availability - These are outdated but still come in handy.

  156. Practical Common LISP by DannyO152 · · Score: 2, Informative

    I would flag this as among the second-tier. Paul Graham's books, especially "On Lisp" are better.

    1. Re: Practical Common LISP by Anonymous Coward · · Score: 0

      Wow, not at all. It's true that Graham's writing is very compelling and all that, but Seibel's book is a way, way better Common Lisp book. It covers plenty of crucial features that PG doesn't (like CLOS, conditions/restarts, LOOP, using macros for DSL-ish stuff, pathnames, packages...) and reflects modern CL programming style much better than PG's books.

      Definitely read both, but if you have to pick just one, pick Practical Common Lisp.

  157. Internet Routing Architectures - Cisco Press by POTSandPANS · · Score: 1

    "Internet Routing Architectures" from Cisco Press. It's an older book, but I have yet to find a better book on the BGP routing protocol.

    1. Re:Internet Routing Architectures - Cisco Press by pyite · · Score: 1

      Routing TCP/IP Volume I (ISBN-13: 978-1587052026) also falls into the "classics" category of Cisco Press.

      --

      "Nature doesn't care how smart you are. You can still be wrong." - Richard Feynman

  158. The Design and Implementation... by Anonymous Coward · · Score: 0

    of the FreeBSD Operating System. The current edition was published in 2004, so it's getting a bit dated, but I still think it's one of the best books about operating systems that I've read.

  159. Tracy Kidder's book by willoughby · · Score: 1

    The Soul of a New Machine. I'm not the only one who liked it - he won a Pulitzer prize for it.

  160. Computability, Complexity, and Languages by Davis by Prof.Phreak · · Score: 1

    Computability, Complexity, and Languages, Second Edition: Fundamentals of Theoretical Computer Science by Martin Davis, Ron Sigal, Elaine J. Weyuker

    The densest and yet clearest CS book I've ever seen.

    --

    "If anything can go wrong, it will." - Murphy

  161. Re:The C programming lang, Kernighan & Ritchie by Sir_Lewk · · Score: 1

    Agreed. That is the book that tought me C. I tried for weeks to get my head around C, reading through numerous books, articles, etc. Nothing made any sense until I bought my copy of K&R v2. That book blasted through the clutter and confusion in my mind so fast I was practically left stunned. I really can't emphasize enough how excellent this book it.

    --
    "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
  162. For Probability and Online Algorithms by B1ackDragon · · Score: 1

    I run into very few textbooks that I actually like, so hopefully the fact that I like these two actually means something.

    First, "Probability and Computing" by Mitzenmacher/Upfal is an excellent and very readable intro to probability theory and randomized algorithms.

    Second, "Online Computation and Competitive Analysis" by Borodin/El-Yaniv is pretty much the de-facto standard for online algorithms. Decently readable.

    --
    The snow doesn't give a soft white damn whom it touches. -- ee cummings
  163. Re:How's about for Economics / Business / Marketin by definate · · Score: 1

    Wow, I expanded the topic to include other areas of study. Heavens forbid that a topic goes beyond the strict limitations imposed by the headline/topic.

    Interesting, how valuable is your skill without the other disciplines creating a need for it? How valuable are you if you can't allow your skills to help the most amount of people possible? How valuable are your skills if it requires only you and not a team/business?

    I'd suggest, not very.

    But hey, maybe you're the 1 man who could produce Linux by himself? Or perhaps the 1 man who could invent a product which fixes our global warming problems, without ever needing to bring it to market?

    You'd be the first.

    (There's a good chance you don't understand what I've just said, however you would if you had studied these topics.)

    --
    This is my footer. There are many like it, but this one is mine.
  164. Growing Better Software by mrjb · · Score: 1

    Only released recently, it addresses many common problems in everyday software development.

    --
    Visit http://ringbreak.dnd.utwente.nl/~mrjb/growingbettersoftware to download your free copy of the book
  165. Dianetics by east+coast · · Score: 2, Funny

    Dianetics is one hell of a programming book.

    Oh, you meant computers... Sorry.

    --
    Dedicated Cthulhu Cultist since 4523 BC.
  166. programming on purpose, pj pauger by bugi · · Score: 1

    The collections of essays called Programming On Purpose, by PJ Plauger is well worth overlooking the poor choice of typeface on the covers.

    There are three volumes, all well worth internalizing.

    Sorry, I don't loan mine.

  167. History of Computing suggestions by Anonymous Coward · · Score: 0

    if it interests you:

    The Soul of a New Machine, Tracy Kidder

    The Dream Machine: J.C.R. Licklider and the Revolution That Made Computing Personal, M. Mitchell Waldrop

  168. The Tao of Programming by Katatsumuri · · Score: 1

    by Geoffrey James: http://www.canonical.org/~kragen/tao-of-programming.html

    I wish more programming books were as beautiful, entertaining, insightful and concise as this one.

  169. Some tech books I enjoyed a lot by stsp · · Score: 3, Informative
    1. Re:Some tech books I enjoyed a lot by NilObject · · Score: 1

      I read that last URL as: "Cod Equality"

  170. A Million Random Digits ... by Anonymous Coward · · Score: 0

    ... with 100,000 Normal Deviates

    http://www.amazon.com/Million-Random-Digits-Normal-Deviates/dp/0833030477/ref=pd_bbs_sr_2?ie=UTF8&s=books&qid=1230067178&sr=8-2

    Kept me excited 'till the very last page.

    Toast to John Von Neumann!

  171. Hardware by Anonymous Coward · · Score: 0

    "Horrowitz & Hill: The Art of Electronics" is a classic. It should be on every geek's desk. It covers many basic concepts without overbearing math.

  172. My favorites list by jlarocco · · Score: 2, Informative

    These are the books I most often find myself using as references:

    • Advanced Programming in the UNIX Environment
    • Advanced UNIX Programming
    • The C++ Standard Library, A Tutorial and Reference
    • Programming Perl
    • OpenGL Programming Guide
    • Numerical Recipes
    • Introduction To Algorithms
    • The Art of Computer Programming

    These ones are also good, but not as references:

    • The Pragmatic Programmer
    • How To Solve It
    • The Mythical Man Month
    • Code Complete
    • Design Patterns
    • Rapid Development

    I think other people have listed most of those already, but oh well.

    1. Re:My favorites list by Anonymous Coward · · Score: 1, Interesting

      Numerical Recipes is impressive, but the problem is that the code is legally encumbered. You have to cut a deal with the author in order to use the code outside of an academic setting. I've decided against even owning a copy to avoid getting myself and my employer entangled into a lawyers' nest.

    2. Re:My favorites list by randomsearch · · Score: 1

      Not sure if you meant How to Solve it: Modern Heuristics but I would thoroughly recommend this book - for me it's up with SICP in changing the way you think. For anyone who's not familiar with heuristic search, this book will give you a great introduction to an alternative method of problem-solving.

    3. Re:My favorites list by Anonymous Coward · · Score: 0

      Try giving explanations as to why we would want any of these books rather than rapping off a list, idiot.

    4. Re:My favorites list by brausch · · Score: 1

      Absolutely these two:

      # Advanced Programming in the UNIX Environment
      # Advanced UNIX Programming

      --
      "Almost every wise saying has an opposite one, no less wise, to balance it." - George Santayana
  173. The Corman et al Algorithms Text by Anonymous Coward · · Score: 0

    The Corman et al Algorithms Text is *very* overrated as a primary algorithms text. A superior approach would be to use Skiena's Algorithms Handbook and have Corman used as a reference.
    Any clue as to why the Corman doorstop is so widely used? I figure it is little more than name recognition. The authors are quite well known and justifiably so. Too bad they can't find graduate students to write them a decent textbook.

  174. Re:How's about for Economics / Business / Marketin by geminidomino · · Score: 1

    Interesting, how valuable is your skill without the other disciplines creating a need for it?

    "The" other disciplines? As in, some finite subset? If you mean just "other disciplines", there are plenty. Medical, Law, education (I've worked on apps for all three).

    If by "the other disciplines" you mean just the faux-talent of professional bullshitting, then the answer is just "plenty"

    How valuable are you if you can't allow your skills to help the most amount of people possible?

    Quite valuable because, contrary to what your marketing books may impress upon you, it's not all about the BIGNUMS. My interest is in helping a specific subset of people (i.e. those who pay me for professional work, or those who might get some help from my free-time stuff).

    How valuable are your skills if it requires only you and not a team/business?

    That's an inane non-sequitur. Not everything worthwhile requires a business or team, and it certainly doesn't require everything to be quantified, monetized, and rubberstamped with managerial marketing approval.

    That's the problem with marketing. A mass of soulless ghouls chasing little bits of paper and completely incapable of imagining a universe where every tangible object and intangible concept isn't stamped with a little yellow price tag.

    I'd suggest, not very.

    Thanks for pointing that out, mate. Could never have guessed that from the context.

  175. Here's a few standards by brianc · · Score: 1

    Gödel, Escher, Bach: An Eternal Golden Braid
    By Douglas R. Hofstadter
    Pulitzer winner

    The Art of Electronics
    By Paul Horowitz & Winfield Hill

    The Soul of a New Machine
    By Tracy Kidder
    another Pulitzer winner

    --


    SIGLOST && SIGUNUSED && SIGQUIT
  176. Programming Perl by truckaxle · · Score: 1

    Programming Perl
    By Larry Wall, Tom Christiansen, Jon Orwant

    On line I remember went something like this:

    "I works exactly the way you think it should work, we just have a hard time writing the way you think"

  177. OOA&D Classic by SKJDot · · Score: 1

    Grady Booch's excellent text on OOA&D is certainly a classic: Object-Oriented Analysis and Design with Applications (3rd Edition) http://www.amazon.com/Object-Oriented-Analysis-Applications-Addison-Wesley-Technology/dp/020189551X/ref=sr_1_2/189-9216128-5749116?ie=UTF8&s=books&qid=1230068582&sr=1-2

  178. Design of an Optimizing Compiler, Wulf, et al by apl73 · · Score: 1

    This little (and long-out-of-print) book is an amazing description of the actual engineering associated with building an optimizing compiler for the Bliss-11 language. It's also interesting in that many of the co-authors (Wulf's PhD students) have gone on to develop significant software products.

    It got me started in compilers over 30 years ago, and I've been doing language design and code generation for most of the time since.

    Another suggestion is to check the ACM website. A couple of years ago they ran a contest to find out-of-print classics and arrange to get the top N of them reprinted.

  179. March of Unreason & Visual Display of Quant. I by dwarf75 · · Score: 1

    The two best books I have bought in the last few years and which I recommend my undergrad students in engineering on a regular basis are:

    - The March of Unreason (ISBN 0199205620) by Dick Traverne:
                    A discussion on new fundamentalism in science, politics and other areas. It advocates objective analysis of topics, rather than a fundamental view.

    - The Visual Display of Quantitative Information (ISBN 0961392142) by Edward R. Tufte:
            An introduction on displaying data in an undistorted and objective manner.

    In my opinion 2 books every engineer and scientist should at least have skimmed through once in their life.

  180. One to take with yoy to the future ... by Anonymous Coward · · Score: 0

    last printed about 30 years ago and tends to scare many that don't understand its true value - Henley's Twentieth Century Book of Ten Thousand Formulas, Processes & Trade Secrets. Aside from electronics, this one willget one started back on the path of rebuilding the evil civilization after the Apocalypse.

  181. Security Engineering by Ross Anderson by plcurechax · · Score: 3, Informative

    Security Engineering: A Guide to Building Dependable Distributed Systems by Ross Anderson, professor at Cambridge University.

    It replaces and expands upon Applied Cryptography by Bruce Schneier, and Practical Cryptography by Ferguson & Schneier to make a more holistic approach to security encompassing the entire system, not just using the latest (coolest) encryption techniques. Most real-life systems are broken by going around or ignoring the encrpytion.

    Another classic is

    TCP/IP Illustrated by the late Richard Stevens
    Most people need/read only Volume I: The Protocols, but there is also Volume II: The Implementation which is wonderful albeit with a smaller following, though Volume III which is considered a big disappointment to many (I've never read the vol 3) isn't worry buying unless you're specifically interested in its contents.

    The only serious alternative to TCP/IP Illustrated is Douglas Comer's series Internetworking with TCP/IP which is the series I learnt about TCP/IP programming with. Still highly recommended.

    For Software development, The Mythical Man-Month by computing pioneer Frederick Brooks should be required reading, and Peopleware: Productive Projects and Teams by Tom DeMarco and Timothy Lister should be handed to every new IT/IM or software manager with their promotion or hiring (if they haven't read it already). Computing would suck so much less if we all held ourselves accounting to the basic ideas in these two books.

    For historic, 3 books + bonus item that would have to be included are:

    Algorithms + Data Structures = Programs by Niklaus Wirth

    Cybernetics: Or the Control and Communication in the Animal and the Machine in 1948 by Norbert Wiener

    Computing Machinery and Intelligence, by Alan Turing and published in 1950 in Mind

    Computer Lib/Dream Machines by Ted Nelson in 1974, is most often pointed to as the "birth" of hypermedia.

    The January 1975 issue of Popular Electronics, which featured the Altair 8800 on its cover.

  182. Mod parent funny like a Tolkein-ring network by FooAtWFU · · Score: 1
    Cute. :)

    As far as Clive Staples is concerned, though, most people are not aware that he wrote a sci-fi series ("space trilogy"). They have the usual Christian bent, of course. Another poster mentioned The Abolition of Man; this series ultimately presents similar issues in the form of fiction. The middle book (Perelandra) isn't all that great, but That Hideous Strength is rather interesting (though ultimately less action-packed than one might expect.

    --
    The World Wide Web is dying. Soon, we shall have only the Internet.
  183. Dreaming In Code by Anonymous Coward · · Score: 0

    I've read this book cover-to-cover several times, and recommend it to everybody.

    http://www.dreamingincode.com/

  184. Re:Switching Power Supply Design, Abraham I. Press by Anonymous Coward · · Score: 0

    Computer Networks by Andrew S. Tanenbaum (Author)
    http://www.amazon.com/Computer-Networks-Andrew-S-Tanenbaum/dp/0133499456

    Numerical Recipes 3rd Edition: The Art of Scientific Computing (Hardcover)
    http://www.amazon.com/Numerical-Recipes-3rd-Scientific-Computing/dp/0521880688/ref=sr_1_1?ie=UTF8&s=books&qid=1230069172&sr=1-1

    Others that have been mentioned: Mythical Man Month, Art of Computer Programming, Code Complete, Design Patterns, etc...

  185. Budd's Introduction to Object-Oriented Programming by half_cocked_jack · · Score: 1

    AKA the Platypus book. Still the best introduction to OOP in my opinion. I reference it regularly.

  186. One "definitive" answer to the best books by Sits · · Score: 1

    Take a look at ProgrammingBooks.org. It even has a handy Books Every Programmer Should Read section.

    Alternative best book lists are linked to in one of my other posts in this question.

  187. ARRL handbook by vulgrin · · Score: 1

    I love going through the latest annual ARRL handbook. (ham radio)

    --
    I sig, therefore I am.
  188. Other (non-algorithmic and programming) stuff by rite_m · · Score: 1

    Computer Science is not just algorithms and programming :). So a list of other important books:

    * Introduction to Graph Theory - Douglas B West

    * Computer Architecture - John L. Hennessy and David A. Patterson

    * Switching and Finite Automata Theory - Zvi Kohavi

    * Compilers - Aho Ullman and Sethi (the dragon book)

    * An Engineering Approach to Computer Networking - Keshav

    And if you are going to be writing papers, don't forget to read "The Elements of Style" by William Strunk.

  189. Design Basics Index by Jim Krause by himizu · · Score: 1

    While not strictly CS, I use Jim Krause's Design Basics Index all the time when I'm creating UIs for my apps. Gives lots of pragmatic info about color theory and layout do's and don'ts with great examples. My old boss (definitely a Renaissance man - as comfortable going through a stack dump as he is in the art world) insisted we all use it before coding anything to do with UI. It's definitely helped make my apps more usable and not as offensive to the eyes, especially when we're doing a small gig where they can't afford both a programming team and a graphics team.

  190. Joel on Software by vindimy · · Score: 1

    The Joel on Software series is my favorite read. First book and second book.

  191. Peopleware is better. by SuurMyy · · Score: 1

    See prev. post.

    --
    The lyf so short, the craft so long to lerne
  192. "Algorithms in %s" % lang by dmayle · · Score: 1

    I'm surprised that no has yet mentioned Robert Sedgewick's "Algorithms in %s" % lang series (where lang in ['c', 'c++', 'java']). It's truly the best algorithms/data structures book I've come across. (Though personally, I wish he had a Python version)

  193. Re:TCP/IP Illustrated, Vol 1 by W. Richard Stevens by Fulcrum+of+Evil · · Score: 2, Insightful

    Tack on 'The mythical Man Month' - it should be required reading for anyone planning to make software for money.

    --
    "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
  194. Books++ by Anonymous Coward · · Score: 0

    Pragmatic Thinking and Learning: Refactor your Wetware is another excellent book from Andy Hunt (co-author of Pragmatic Programmers). It is a good book for anyone seeking to learn how to learn, but is especially geared towards programmers.

    Practices of an Agile Developer (another co-authorship of Andy Hunt, I like his writing, and no, I am not him). If you liked Pragmatic Programmer, you'll like this one too. It provides practical advice for development, coding, learning and working in teams.

    Extreme Programming Pocket Guide is short, concise, and stuffed full of the extreme programming methodology. Easily the best gram for gram book I ever bought.

    I'm surprised no one has yet mentioned
    Refactoring: Improving the Design of Existing Code, the seminal work on making code smell better. Provides patterns for making your code easier to maintain and modify without changing it's behavior.

  195. C++ Books by Scott Meyers, and others... by SuurMyy · · Score: 1

    Effective C++ and More Effective C++. I haven't read Effective STL, but I'm guessing it's good as well.

    Also remember: The Art of Unix Programming and of course Joel Spolsky is a favorite, too.

    I guess everyone should read The Fifth Disciple, as well.

    And then there's of course Crucial conversations

    --
    The lyf so short, the craft so long to lerne
  196. They are..... by Allnighterking · · Score: 1

    1. Using Unix (Special Edition 1999) By Steve Moritsugu, Julia Kelly, Steve Moritsugu, without this book I never would have gotten out of the quagmire I first immersed myself in.

    2. Linux Shells by Example By Ellie Quigley. Not much missing in this tome. Sed Grep Awk(gawk) bash csh and more.

    3. nearly any pocket book by O'Reilly. This is AFAIK all I'll need to keep me going. All the rest are for fun.

    --

    I'm sorry, I'm to tired to be witty at the moment so this message will have to do.

  197. Digital Signal Processing: A Practical Guide ... by Anonymous Coward · · Score: 0

    Digital Signal Processing: A Practical Guide for Engineers and Scientists
    by Steven Smith

    Best technical book I have ever read. I rate this book up there with Tannenbaum's stuff.

    http://www.amazon.com/Digital-Signal-Processing-Practical-Scientists/dp/075067444X/ref=sr_1_1?ie=UTF8&s=books&qid=1230071040&sr=8-1

    Older (mostly identical) edition available online at dspguide.com.

  198. Civils... by fatboyslack · · Score: 1

    For Civil Engineers it has to be Timoshenko's Strength of Materials...
    I've got a copy of one of the first English versions at home. :D

    --
    Everyone thinks of changing the world, but no one thinks of changing himself. -- Leo Tolstoy
  199. Another better Gift by DiegoBravo · · Score: 1

    Instead of yet another great book, this Christmas I asked to Santa to bless me with an external hard disk with all those poor trees I already own, but in digital format. Yes, it is a lot of fun to read the hardcopy, but I actually can't cope with the allocated space nor the cloth moths.

  200. Re:TCP/IP Illustrated, Vol 1 by W. Richard Stevens by AndreR · · Score: 1

    I have it right here in my desk as I am implementing a TCP Reno simulator in MATLAB (for learning purposes). I agree, it reads like a classic: concise and thorough.

    With this one in the shelf I can even pretend to be a true network researcher :)

  201. Best Tech Reading by b4upoo · · Score: 1

    First avoid the stuff found on magazine racks. It is designed to sell products advertised by the magazine. Publishing empires have been based on the nonsense in magazines and most of the supposed tech work is junk.

            College texts or textbook like books are another kettle of fish. Although some textbooks are written with some fools hope of earning big bucks there are other authors who are almost priest like in their dedication both to a technology and getting it into the hands of the public. Simply research the author and see if the work is peer reviewed. You will find great information that way.
              I distinctly recall a book titled "VooDoo Dos" that was hands down better than a thousand other DOS manuals including all the tips stuffed in the magazines. One fellow, in slight rebellion, who actually knew DOS took the time to really write one heck of a DOS manual. That's the kind of information we all need and should expect when we buy a book.

  202. Software Engineering: A Practictioner's Approach by Amigan · · Score: 2, Interesting

    Written by Roger Pressman and has gone through 6 editions (that I'm aware of). It was first introduced in 1982, and I used it as a Senior during my undergrad - I have since used it repeatedly over the years as I've taught software engineering classes. 25yrs after graduating it is one of the books that I keep in my office.

    --
    "Software is the difference between hardware and reality"
  203. Good Stuff by JumperCables233 · · Score: 0

    For my money, I'd recommend (as many others have) Design Patterns by the Gang of Four. The Mythical Man-Month is also good reading. However, for a general essay on User Interfaces, I recommend The Inmates are Running the Asylum by Alan Cooper. Just for a kick-ass read (required reading in my university's Ethics and Computing course) check out The Cuckoo's Egg by Cliff Stoll.

  204. Stevens Rules by animusCollards · · Score: 1

    Stevens' Advanced Programming in the UNIX(R) Environment is gospel. Horstmans's Mastering Object-Oriented Design in C++ is an excellent study of OO concepts. The fact that it illustrates its concepts in C++ is irrelevant, although it does make me wonder if it's been updated to Java or something else in wider use these days.

  205. Electrical engineering? by GuruBuckaroo · · Score: 1
    --
    Poor means hoping the toothache goes away.
  206. There Are No Electrons: Electronics for Earthlings by walterbyrd · · Score: 1

    By Kenn Amdahl

    Good introduction to electronics.

  207. If you want to go by the list by Sits · · Score: 2, Informative

    You might want to take a look at Top 100 Best Software Engineering Books, Ever (if you want to go by what is popular) or The Best Programming Books (which seems to be more diverse).

    Personally I really liked the Mythical Man Month (one of the few library books I borrowed as an undergraduate and I've recently reread it and still like it) and Peopleware (very funny) but both of these are more about software engineering (and how it goes wrong) rather than practical hands on programming. However they are both short and entertaining. Code Complete is very authoritative (but big). These aren't books you are going to gravitate towards if you are just starting to program for the first time though so I'll just mention I found Java in Nutshell useful (but others are not so keen on it).

    Your borrowers are probably going to want those "Learn in 24 hours..." or "...for Dummies" though. It would be nice to know what the most loaned books turned out to be in year's time (might make a good Slashdot article : )

    1. Re:If you want to go by the list by librarybob · · Score: 1

      Heh. That's why I'm interested in what the experts (you all) have to say. It's trivial to find a list of best computer books, hard to find the ones people believe in.

    2. Re:If you want to go by the list by shanen · · Score: 1

      I have a copy of C++ For Dummies on one of my shelves at work, but mostly because the author is a really nice guy and lived in the same suite in my freshman year... Most of my actual programming work was in higher level database languages.

      Even though I don't do any serious programming these days, I still dabble a bit, and the other programming language books on hand include Programming perl (the camel book), Using JavaScript , and IBM WebSphere Starter Kit .

      --
      Freedom = (Meaningful - Coerced) Choice != (Speech | Beer^2), and sad sock puppets' bad mods avail them naught.
  208. The Art of Electronics - Horowitz and Hill by fizzup · · Score: 1

    The Art of Electronics by Paul Horowitz and Winfield Hill will give you a tremendous insight into how the underlying silicon in your computer (and radio) function. Every time I read a snippet, I want to build something electronic. Link to Amazon.

    1. Re:The Art of Electronics - Horowitz and Hill by tuxicle · · Score: 1

      I would buy this, then keep clicking "refresh" on Amazon to check if the third edition is released yet. This is a superb book, if a little dated.

  209. Mechanizing Proof by Anonymous Coward · · Score: 0

    I'd endorse almost all of the books people have suggested so far, of course.

    Less well known, but it really should be:

    Mechanizing Proof, by Donald MacKenzie

    (maybe the best single book written about the history and culture of proving programs correct - all the more remarkable as it's written by a sociologist, not a computer scientist)

    TeX: The Program, by Donald Knuth

    The actual program, in literate programming form

  210. PC Magazine's DOS Power Tools by Fast+Thick+Pants · · Score: 1

    DOS Power Tools by Paul Somerson. This beautifully written book was full of history and practical tips, encouraged tinkering, taught simple assembly language, was generally a delight to read and use. After reading it, I felt like I actually understood the operating system top to bottom, and I was its master. I've never found its equivalent for any other OS.

  211. How about some Graphics? by flabbergast · · Score: 1

    Here are some graphics books on my shelf:

    General Graphics:
    Real-time Rendering: Tomas Akenine-Moller
    Any OpenGL Red Book
    Physically Based Rendering: Humphreys and Pharr
    GPU Gems: Published by nVidia
    Intro to Graphics: Shirley

    Visualization
    Real-time Volume Graphics: Engel et al.

    Computational Geometry
    Computational Geometry: de Berg et al.
    Introduction to Algorithms: CLRS

    Physical Animation
    Fluid Simulation for Computer Graphics: Bridson (I haven't read it but I have read his '06 and '07 SIGGRAPH course notes)
    Numerical Recipes: Press et al. (In general, a must have book for Computer Science)

    Image Processing/Vision
    Digital Image Processing: Gonzalez et al.
    Computer Vision: Forsynth and Ponce (not a huge fan, but apparently lots of people use it)
    Shape from Shading: Horn and Brooks (kind of old)

    I'm sure there are plenty others as well that are still packed away in boxes. These are the ones on my shelf atm.

  212. Eclipse RCP by voxner · · Score: 1

    If you are into eclipse RCP I would recommend Eclipse: Building Commercial-Quality Plug-Ins
    And then there is this superb newsgroup.
    For algorithms I found "Algorithms in C" by Robert Sedgewick very useful.

  213. VMS Internals and Data Structures by Nefarious+Wheel · · Score: 1

    I hope I'm not being to obscure with this one.

    If you ever wanted to figure out just how a virtual memory manager can work (or how you can do more with data structures and interrupts than you can with algorithms) the ancient and technically out of date "VMS Internals and Data Structures" has a lot of operating system explanation that is largely still relevant today. You may not need to ever tune a Vax/VMS system again in your entire life, but knowing the sorts of hoops OS' need to go through -- even in one example -- gives you a better appreciation of what's computable and what ain't.

    It's deep background. Remember this is the book about the operating system designed by the guy who later went on to develop Windows NT. Among other things, it shows you just how omitting one of the KESU rings in a hardware architecture can give you bonus security problems for years. The deep understanding of how you orchestrate multiple process threads asynchronously with IO devices you can get from this study gives you man-behind-the-curtain cred when you're trying to dissect a truly thorny problem, or understand just why your system may have hung at that point.

    And I love the little chapter heading quotes.

    --
    Do not mock my vision of impractical footwear
  214. THE book for Design of Experiments is by davebarnes · · Score: 1

    Statistics for Experimenters: An Introduction to Design, Data Analysis, and Model Building

    by George E. P. Box, J. Stuart Hunter, William G. Hunter

    --
    Dave Barnes 9 breweries within walking distance of my house
  215. This one's easy by raddan · · Score: 1

    Discrete Mathematics with Applications by Suzanna Epp. This book was a godsend in my discrete math class, which was taught by a Chinese prof who had recently acquired English, and who chose what must be the most god-awful textbook I've ever read. It's a favorite casual-reading book of mine.

    And in the "useful" category, Friedl's Mastering Regular Expressions is my #1 most referred-to book. Totally dog-eared. And I think I've only mastered about a 1/3 of the book.

  216. Most of these books are about programming not CS by Doug+Jensen · · Score: 1

    As I would expect on /.

    --
    Doug Jensen
  217. The Best Book. Ever. by Akir · · Score: 1

    Problem Solving in C++ Including Breadth and Laboratories is, without a doubt, the world's best book on C++. Over the years I have spent hundreds of dollars trying to teach myself C++. It was maddening! I was considering for the longest time taking out a loan and paying for classes. Then I discovered this book (ironically given to me for free by a community college during a technology expo they were hosting), and I could finally understand the concepts. Where these books which came so highly recommended to me failed, this simple somewhat obscure book succeeded with ease. It's a great book because it's extremely well organized (one of the first books with an index which didn't require 70 different look ups to find out what you need to know), written in plain language, defines everything (EVERYTHING!), gives you simple exercises to implement what you've learned, and even teaches you some interesting trivia about computing. These resources make it the best source for anyone who is not familiar with C-like languages, or maybe even people who are not familiar with computers at all.

  218. z/Architecture Principles of Operation by jacobsm · · Score: 1

    Without a doubt the best book to learn how real computers work. http://publibz.boulder.ibm.com/epubs/pdf/dz9zr006.pdf Putting on asbestos under ware now.

    1. Re:z/Architecture Principles of Operation by Anonymous Coward · · Score: 0

      The POOP!!!

      This was one of my first computer books too - but it was the IBM 370 series. Wow, I haven't thought about this for at least 25 years. It was instrumental in learning my first two languages - S/370 machine code and then Basic Assembler Language.

    2. Re:z/Architecture Principles of Operation by jacobsm · · Score: 1

      Yep, and its free also.

  219. The author mentioned programming books too by Anonymous Coward · · Score: 0

    If I'm not mistaken a book like Code Complete is mostly about programming... Besides there are still some CS degrees that have a programming component so the suggestions aren't actually offtopic :)

    (In reality I'd say each side helps to inform the other - there are some abstract data types in the Practice of Programming for example and pseudo code in Introduction to Algorithms)

  220. Re:How's about for Economics / Business / Marketin by tehBoris · · Score: 1

    That's the problem with marketing. A mass of soulless ghouls chasing little bits of paper and completely incapable of imagining a universe where every tangible object and intangible concept isn't stamped with a little yellow price tag.

    Hold on right there mister!

    We are not just talking about bean-counting here, we are talking about the workings of society. The fact that you mistake the study of enterprise and economy for advertising and accounting only speaks of you.

    The very fact that you produce stuff independently that serves other people's needs makes you an entrepreneur by definition, even if you don't seek to maximize profits, or profits at all.

    Perhaps you should look a bit more into it before flamin' away in teh intertubes, for right now you are in the unenviable position of being corrected by a lame CS undergrad.

  221. E. Dijkstra by Anonymous Coward · · Score: 0

    A Discipline of Programming , E. Dijkstra

  222. Algorithms by Sedgewick by gidds · · Score: 1

    It's not very sexy, but it's fascinating and readable. I remember coming across it in Dillons bookshop, not knowing the name, and flicking through. Half an hour later, when I realised the time, I knew I had to buy it! Other books go into more exhausting detail (Knuth in particular), or cover a wider range (Knuth again!), or more modern ideas or languages. But Sedgewick is a great read, and I've been through it several times.

    It covers all the basics (maths, searching, sorting, strings, graphs, and touches on FFTs and hardware and optimisation), and gives enough detail that you could go off and write some programs yourself. But more importantly, it explains them: how each algorithm works, what it's trying to achieve, how it behaves, and why. And it's because it explains the ideas so well that I'd recommend it. After every section I felt I'd learned something -- not because I had to, but for the sheer pleasure of understanding something new and interesting.

    Other recommendations: Effective Java (a staggering amount of insight into the language), Thinking in Java (by someone who understands that language is more than just syntax), Deep C Secrets (again a pile of insight, interspersed with anecdotes and some rather off-the-wall diversions), Programming Pearls and More Programming Pearls (problem-solving in bite-sized chunks -- a little dated but still interesting). Plus I've already mentioned Knuth. K&R is well done, though narrow in scope. I find Design Patterns useful, but more for clarifying things I've already seen than for learning new things. I've never actually read The Mythical Man-Month, but people I respect mention it, so I'm sure it's well worth reading too!

    Of course, times being what they are, especially in this field, a lot of interesting stuff is on-line. Some hat should go without saying hereabouts include the latest Jargon File, some of Eric Raymond's books, and more online documentation and archives than anyone but Google can cope with.

    Other interesting articles include The Programmer's Stone, a guide to writing Unmaintainable Code, The Ten Commandments for C Programmers (annotated edition), Ken Thompson's Reflections on Trusting Trust, What Colour are your Bits?, and Guy Steele's Growing a Language.

    --

    Ceterum censeo subscriptionem esse delendam.

  223. Essential Actionscript 3.0 by Colin Moock by Anonymous Coward · · Score: 0

    One of the best (if not the best) Actionscript books out there...

    http://www.moock.org/eas3/

  224. Programming from the ground up by walshy007 · · Score: 1

    excellent book about programming, starts off with lower level asm programming first and later on explains what the higher level stuff like c does in assembly.

    here is where you can download it.

  225. Some simple explanations on complex topics by c64cryptoboy · · Score: 1

    -----

    Understanding the FFT, Second Edition
    http://www.amazon.com/Understanding-Second-Revised-Anders-Zonst/dp/0964568152/
    Examples are in BASIC (with line numbers even), but very simple explaination of the fast Fourier transform.

    -----

    Adventures in Group Theory: Rubik's Cube, Merlin's Machine, and Other Mathematical Toys (2nd edition)
    http://www.amazon.com/Adventures-Group-Theory-Merlins-Mathematical/dp/0801890136/
    Introduction to group theory using Rubik's cubes. Lots of typos, but they won't slow you down much.

    -----

    Cryptography Decrypted
    http://www.amazon.com/Cryptography-Decrypted-H-X-Mel/dp/0201616475/
    Cryptography explained in pictures.

    -----

    --
    I put the 'fun' in fundamentalism
  226. Nor does it... by LandruBek · · Score: 1

    Nor does it mention breakfast, or shoes, as a concept. And I'm starving! And my feet hurt!

    Yeesh. They've got to assume you know something before you get to page 1.

    --
    $META_SIG_JOKE
    1. Re:Nor does it... by berend+botje · · Score: 1

      Do you have any clue?

      Compilers don't stop after parsing. And parsing is the only subject of the Dragon Book. Which wouldn't matter if it was marketed as a parser book.

      But a compiler book it isn't. It's outdated, it's obsolete and it's incomplete.

      The book fails. Hard.

  227. Algorithm Design Manual by Ecuador · · Score: 1

    While Intro to Algorithms is considered the bible of algorithms, the Algorithm Design Manual might please some even more. Half the people I know love it for the extensive and very useful "Catalog of Algorithmic Problems". The other half like it for the entertaining yet educational "war stories".

    --
    Violence is the last refuge of the incompetent. Polar Scope Align for iOS
  228. old man Unix and C++ books by Anonymous Coward · · Score: 0

    The Elements of Style, Strunk and White.

    Anything by W Richard Stevens, esp. TCP/IP Illustrated and APUE.

    The Practice of Programming, and most by Kernighan and anyone.

    Stroustrup C++ Programming Language.

    Wall et. al Programming Perl. I've moved on from the language, but that was a book and a half.

    Mythical Man-Month, Brooks

    Lakos Large-Scale C++ Programming.

    Not GoF Design Patterns. Great idea, mediocre book.

    Not one Java book, though that's the language I've paid my bills with for seven years.

  229. EE and CE recommendations by the_ed_dawg · · Score: 1

    Although I confess that I may have spent too much time in school, I can say that I had an opportunity to read and study a lot of books in both electrical engineering and computer engineering. My personal favorites are:

    • Microelectronic Circuits by Sedra and Smith: There are lots of books about analog amplifier design. However, I have found this one to provide a comprehensive survey of component level analog design with op-amps, BJTs, and FETs. It provides lots of examples and doesn't usually "leave the exercise to the reader."
    • Computer Architecture: A Quantitative Approach by Hennessy and Patterson: The bible of computer architecture, written by two of the biggest names in the field. I'm not familiar with the latest version, but the previous edition took the most interesting and useful concepts from over 3000 papers and narrowed it down to a reasonable text. Contains everything you ever wanted to know about performance analysis, pipelines, out-of-order issue, and caches, backed by benchmarking from real machines and theoretical maximums from simulated machines.
    • Introduction to Algorithms by Cormen, Leiserson, Rivest, and Stein: Hardly an introductory book, this book contains 99.9% of the algorithms or data structures you are going to need. Personally, I don't like the exercises, but the sheer reference value makes this text necessary.
    --
    There are two types of people: those prepared for the zombie apocalypse and those who will be eaten.
  230. Dijkstra by LandruBek · · Score: 1

    Doubtless Dijkstra is one of the titans of the field. Interesting fact: the first syllable of his name sounds like "day," not "dye." Not many Americans seem to know this (not that I am assuming you are American).

    --
    $META_SIG_JOKE
  231. Re:Microwave Engineering, 3rd Edition, David M. Po by LandruBek · · Score: 1

    I raise my glass to you, RF dude. It's been years since I worried about cleaning my connectors with q-tips or thinking about KTB, but the mention of Pozar takes me back.

    May your power supplies always stay well decoupled from the rest of your circuit.

    --
    $META_SIG_JOKE
  232. Re:Microwave Engineering, 3rd Edition, David M. Po by tuxicle · · Score: 1

    Agreed. The chapter on noise finally got me to understand what three crappy textbooks and an undergrad microwave course did not teach me.

  233. Some of my favorites by garphik · · Score: 1

    Computer Networks (by Andrew S. Tanenbaum)

    Fundamentals of Algorithmics (by Gilles Brassard and Paul Bratley)

    Applied Operating System Concepts (by Abraham Silberschatz, Peter Baer Galvin, Peter Galvin, Avi Silberschatz)

    Compilers: Principles, Techniques, and Tools (2nd Edition) (by Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman)

    Software Engineering: A Practitioner's Approach 6th edition (by Roger S. Pressman)

    Programming Languages: Design and Implementation (4th Edition) (by Terrence W. Pratt, Marvin V. Zelkowitz)

    UML User Guide (Booch, Rumbaugh, Jacobson)

    Unix (by Bach)

    and more ... :)

  234. Re:Numerical Recipes by toby · · Score: 1
    --
    you had me at #!
  235. Mac OS X Internals, by Amit Singh by paranoidd · · Score: 1

    I was quite amazed by the quality of this book, especially regarding how deep and pleasant all the CS foundations are presented to the reader. One of the best CS books I have here, definitely.

  236. systemantics by Anonymous Coward · · Score: 0

    Out of print I think... big collector value

  237. also honorable mention by toby · · Score: 1

    To Kernighan & Plauger's The Elements of Programming Style.

    --
    you had me at #!
  238. RTL Hardware Design Using VHDL by Anonymous Coward · · Score: 0

    Written by Pong P. Chu. This book focuses on the RTL synthesis standard (IEEE 1076.6) and has in depth coverage of how the language constructs translate into hardware. Also gets into design aspects like resource sharing and crossing clock domains.

  239. Okasaki and Brooks by ralphbecket · · Score: 1

    Fundamentals: "Purely Functional Data Structures" by Chris Okasaki. A short, extremely clear book which will explain why key data structures work.

    Engineering: "The Mythical Man Month" by Fred Brooks (it won't be obvious how good this book is until you graduate and get your first job).

  240. related perlmonks thread by thehossman · · Score: 1

    once upon a time there was a vigorous discussion on perlmonks about non-perl books that have made people better programmers...

    http://perlmonks.org/?node_id=508862

    my reply...

    http://perlmonks.org/?node_id=509146

            * CLR
            * The Dragon Book
            * The Visual Display of Quantitative Information
            * AI: A Modern Approach
            * Catcher in the Rye
                -- I've been asked about this one. This book is all about perceptions: our perceptions of others, and our concerns about the perception other people have of ourself. Realizing your own hangups, and when you/others are being "phoney" can vastly reduce the amount of bullshit you waste time on in your life/work.

    --
    -- The Hoss Man
  241. Programming Pearls 2nd Edition by Jon Bentley by asupynuk · · Score: 1

    My favorite tech writer of all time. Each 10 page chapter, written in short words on small pieces of paper will give you a deeper insight into each topic than any 100 pages by other authors. Truly a gem.

  242. Interworking With Tcp/Ip: Principles, Protocols, by jawahar · · Score: 1
  243. Norman by Jupiter+Jones · · Score: 1

    The Design of Everyday Things

    And yes, it is a tech/eng/cs book as far as I'm concerned.

    JJ

  244. Fyodor's Official "Nmap Network Scanning" by mnemotronic · · Score: 1
    --
    The Russians have won. They have made the world a cesspool of distrust, greed, fear and hate.
  245. The Pragmatic Programmer by Anonymous Coward · · Score: 0

    The Pragmatic Programmer.. This book is filled with wonderful metaphors about boiling frogs and fixing broken windows. It has pullout tip sheet filled with practical reminders.

  246. Pocket Ref by KrackerJax · · Score: 1

    http://www.amazon.com/Pocket-Ref-Thomas-J-Glover/dp/1885071000

    'Pocket Ref' is a conveniently sized book containing an absolutely outrageous amount of data. In 3-3/4" x 5-1/2" x 3/4" dimensions and around 500 pages, Thomas Glover covers topics from ASCII tables, to load bearing capacities of 2'x4's, to a comprehensive math and physics formula 'cheat sheet'.

    I don't know if it is possible to exaggerate how useful this book is. Along with a decent calculator and a knack for solving practical problems, you will be unstoppable with the Pocket Ref at your side. McGyver certainly had a copy hidden in his shirt pocket.

    --
    Sauer
  247. No one mentioned "Computer Graphics" by Milo77 · · Score: 1

    by Foley, van Dam, et. al.

    1. Re:No one mentioned "Computer Graphics" by convolvatron · · Score: 1

      its really not a very well written book, being largely useless filler.

  248. should be programming books by mestar · · Score: 1

    donald norman, all his books
    -never blame users for your mistakes in design

    edward tufte, all his books
    -when to keep the information, when to remove visual noise
    -good data presentation saves lifes

    fooled by randomness
    -why some things succeed and others fail

  249. Favourite tech/eng / CS books. by Anonymous Coward · · Score: 0

    C - K&R ,
                                  Deep C Secrets - Peter Van Der Linden.
    C++ - Stroustroup ( C++ classic ),
                                  Bruce Eckel ( Thinking in C++ )
    Algorithms - Tanenbaum, How to solve it by computers - Droomey
    O.S - Tanenbaum
    Unix Internals - Maurice Bach,
                                      Magic garden explained - Berny Goodheart ,
                                      New frontiers in Unix - Uresh Wahalya

  250. Books missing by pabras · · Score: 1
    In the old days, there where five books you needed to get into computer science:

    1 GED (Godel, Esher, Bach), Douglas Hofstadter
    2 THHGTTG (Those who know, know)
    3) The series of Knuth

    (a lot has changed ........)

  251. The Story about Ping by pyrrhonist · · Score: 1

    This book about the notorious ICMP Echo Request/Response utility is a must-have for any person in IT.

    This highly-rated review describes the book more informatively than I can.

    --
    Show me on the doll where his noodly appendage touched you.
  252. The Pragmatic Programmer by dutchd00d · · Score: 1

    I am shocked, shocked I tell you, that "The Pragmatic Programmer" by Andrew Hunt and David Thomas isn't mentioned more. Awesome book.

  253. MOD PARENT UP by Anonymous Coward · · Score: 0

    "Types and Programming Languages" is far and away the best, most mind-changing computer science book I have ever read. Though, it is probably too theoretical for the tastes of most ./ers

  254. Mathematics book by Starker_Kull · · Score: 1

    I'll recommend a book that's really not CS, but is the most elegant, crystal-clear exposition of developing ideas from axioms I have ever read:

    Calculus by Spivak

    It's ostensibly about calculus - but it's really about how to think with crystal clarity and minimal assumptions and develop a vast field (in-joke) of conclusions from this. It was the first truly deep mathematics book I read, and I think it's a worthwhile step for anyone who thinks for a living.

    There is a concept that is mentioned from time to time in mathematics education, called 'mathematical maturity'. It's a hard concept to define, and hard to measure with a test. My own, personal, idea about it is the level when you have to learn mathematics that extends beyond what your intuition has reached.

    It is a difficult bridge to cross, and most people (in my experience) stop learning mathematics when their intuition about it ceases to carry them further. But it is an amazing bridge to cross, and once you do, you start to see how axioms can start to shape your intuition - it's a breathtaking experience (at least it was for me).

    I crossed that bridge, a long time ago, thanks to a great mathematics professor, Dr. Swiatek, and that book. Like many of the greatest books, it takes you on a journey - it tells you a story. It brings you along on a voyage through the landscape of what a number really is, and what comes as a result. I can't recommend it enough if you are determined to learn what mathematics is really about.

    1. Re:Mathematics book by Anonymous Coward · · Score: 0

      "it takes you on a journey"?
      "It brings you along on a voyage through the landscape of what a number really is"?
      Oh, please.

      Spivak's book is vastly overrated. Actually, I think most people (including mathematicians) who aren't dilletants came to that conclusion long ago. So maybe it's appropriately rated now. Namely, not that high.

      Spivak's book is an example of what went wrong with mathematics education in the 2nd half of the 20th century. Namely, connections with reality (i.e. physics) were severed, and in its place a dry, "scholastic" math (as Russian mathematician V.I. Arnold put it) was substituted. This type of math was "pure" and "rigorous", which rendered it dull and lifeless (since it's the connections to the physical world that make math interesting).

      There are some extremely silly problems in Spivak's Calculus, the kind that have no relation to anything and appeal only to dilletants and "purists". It's the opposite of what math (and calculus in particular) should be.

  255. Golden rule by giorgist · · Score: 1

    I have a rule that I apply and it seems to work very well.

    A good technical book is thin, often expensive with a fat index section.

    Does not apply to reference books as they are an index of them selves

  256. Do web sites count? by BagMan2 · · Score: 1

    Not really a book, but I like the 'technical' writings at eternallyconfuzzled.com.

  257. lisp in small peices by convolvatron · · Score: 1

    by christian queinnec is an absolutely great* discourse in the construction of linguistic towers.

  258. Re:How's about for Economics / Business / Marketin by mixuone · · Score: 1

    Where in "Tech / Eng. / CS" would you put "advertising wankery and asskissing?"

    [Y]ou could really benefit from reading some of these sorts of books.

    Fortunately, I don't have to. I actually possess a skill.

    Feel free to start a company and do without "marketdroids" and their "advertising wankery and asskissing" - and see how far you get. The truth is that if these non-technical people did not help companies succeed, then you could do without them and save X amount of money (a significant amount) and would be able to win in the marketplace. However, it would seem that all real companies have to have both technical and non-technical people - both have skills which do contribute to the company's ability to make money.

    It's fine to love "Tech / Eng. / CS" and want to kick ass in technical skills, but it is very narrow minded to think that those are the only skills that matter and that contribute anything. You have to be able to sell your product, comply with a bunch of laws, finance product development and make smart moves against competing companies to succeed. I wish it was just about having a better mousetrap, but it aint. (Mod me down if you feel like it, that doesn't change anything.)

    Some suggestions on good business books: The Business of Software by Cusumano (general overview of software business), On Competition by Porter (for software product companies), Managing the Professional Services Firm by Maister (for software services companies), Behind Closed Doors (general management) and the Art of Agile Development (for agile organizing).

  259. Wirth's by peetm · · Score: 1

    The Pascal User Manual and Report. For some reason, I've got three of these [so I must REALLY like it] and now that I've seen the price on Amazon, I'm keeping them!

    --
    @peetm
  260. Some others by peetm · · Score: 1
    --
    @peetm
  261. More by Kernighan and other Bell Labs authors. by ralph.corderoy · · Score: 1

    Others by Brian Kernighan if you like _The Practice of Programming_. _The Unix Programming Environment_, also with Rob Pike, gets across the philosophy of how Unix is meant to be used, covering a bit of shell, awk, C, yacc, etc. _Software Tools_, with Plauger, writes many of the well-known Unix programs in Ratfor (a better Fortran), including the ratfor preprocessor that turns ratfor source into Fortran. Make sure you get the Fortran version and not the Pascal one; that caused bwk to write his infamous _Why Pascal is not my Favourite Programming Language_. Also with Plauger, _The Elements of Programming Style_. This, modelled on Strunk and White, takes real-life poor examples of code and critiques them. _The Awk Programming Language_ is a nice slim tome that uses awk to do lots of interesting things.

    Other Bell Labs authors are also excellent. You must surely have _Programming Pearls_ and _More Programming Pearls_ by Jon Bentley. (Nothing to do with perl(1).) And he's got _Writing Efficient Programs_ out now too.

  262. MOD PARENT UP! by AIM_is_t3h_sux · · Score: 0

    i second the notion that sicp is a technically superior book to k&r. i own one of the first 100 copies of k&r and worked through sicp in the 1980s and then again quite recently to brush up. k&r makes your brain think about the code whereas sicp makes your brain think about the logic behind the code.

  263. The Art of Software Testing / Glenford Myers by opentunings · · Score: 1

    This was one of the first technical books I purchased when I started in this crazy business. It's one of the best books I've ever read on how to think like a tester. Following Myers' principles will make any developer's or tester's life better.

  264. Re: Favorite Tech Books by dbirnbau · · Score: 1

    For the non-CS folks among us: The Art of Electronics - Horowitz and Hill Numerical Recipes - Press et al (I know it's got flaws, but this is an interesting and readable book on math!) Classical Mechanics - Goldstein Radio Amateurs Handbook - ARRL eds. The entire MIT Intro Physics texts by A.P. French Halliday and Resnick.

  265. Interface Design by da.phreak · · Score: 1

    Although it's not about programming, I'd recommend "The design of everyday things" by Donald A. Norman. It gives a good idea on how to design user interfaces (including, but not limited to software). It's really well-written and nice to read, wether or not you know something about user interface design.

  266. UNIX in a Nutshell by Strider59 · · Score: 1

    5th edition copyright 1992

  267. Gödel, Escher, Bach by drozofil · · Score: 1
    I will quote Steve Yegge's words to describe one of my favorite books. He made me read it. So here they are :

    Douglas Hofstadter has spent a lifetime thinking about the way we think. He's written about it perhaps more than anyone else in the past century. Even if someone out there has beaten him in sheer quantity of words on the subject, nobody has come close to rivaling his style or his impact on programmers everywhere.

    All of his books are wonderfully imaginative and are loads of fun to read, but if you're a programmer and you haven't yet read Gödel, Escher, Bach: An Eternal Golden Braid (usually known as "GEB"), then I envy you: you're in for a real treat. Get yourself a copy and settle in for one of the most interesting, maddening, awe-inspiring and just plain fun books ever written. The Pulitzer Prize it won doesn't nearly do it justice. It's one of the greatest and most unique works of imagination of all time.

    You can find his original post, and you can obviously find the book on amazon.

  268. Stealing the Network : How to own a continent by zartacla · · Score: 1

    http://www.amazon.com/Stealing-Network-How-Own-Continent/dp/1931836051 Well, this got me into Linux and Network Security the way no other source could have. Oh, also came to know about Slashdot.org through this book only. The whole culture, basically. ;)

  269. The best book you couldn't buy! by MasterOfMagic · · Score: 1

    Lion's Commentary on UNIX has a very special place in my heart. First, it's a great commentary that allows the student to teach themselves, dropping just enough information to help them when they get stuck. Second, for the longest time, the only way to get a copy was by sneaking down to the photocopier while everyone was asleep and making a copy that a friend had gotten by sneaking down to the photocopier while everyone was asleep. Third, it's been reissued, so people can truly appreciate it.

    1. Re:The best book you couldn't buy! by A12m0v · · Score: 1

      Just bought the book, one of the best books I've ever read!

      --
      GENERATION 25: The first time you see this, copy it into your sig on any forum and add 1 to the generation.
  270. Philip and Alex's Guide to Web Publishing by ostrich2 · · Score: 1

    It's old now, and I found the author to be a bit of a know-it-all, but the book itself was great. No code, no requirements, just ideas on making a website useful.

    http://philip.greenspun.com/panda/

  271. Re:TCP/IP Illustrated, Vol 1 by W. Richard Stevens by Blairius · · Score: 1

    And from the "mother of the internet": Perlman, Radia (1999). Interconnections: Bridges, Routers, Switches, and Internetworking Protocols (2e ed.). Addison-Wesley Professional Computing Series.

  272. Deep Sea Secrets by Anonymous Coward · · Score: 0

    Steven's Unix Network Programming has to be one of the best practical books. One of the funnest reads I've had that was also very enlightening was Expert C Programming: Deep Sea Secrets by Van der Linden:
    http://faculty.upj.pitt.edu/gmDick/courses/sea/vanDerLinden/expert.c.programming.html

  273. Re:Switching Power Supply Design, Abraham I. Press by eneville · · Score: 1

    Those are all classics. My favs are here (with ISBN numbers) http://www.s5h.net/books.html

  274. A Fortran Coloring Book by Roger E. Kaufman by bozo+systems · · Score: 1

    This was my first computer book and still the best on my shelf. A classic and great introduction to computer programming. In a sea of dry reading material, it stands out from the rest. It's one of the few computer books that's any fun.

  275. Re:How's about for Economics / Business / Marketin by geminidomino · · Score: 1

    Hold it yourself. Never said anything about accounting. Actually, I consider the study of business to be the study of advertising and middle management.

    I've got no beef with accountants. Especially anyone who understands the Lovecraftian clusterfuck that is "Medical Billing"

  276. Neural Network Design... by braindrainbahrain · · Score: 1

    ... by Hagan, Demuth, Beale.

    Amazon link

    Most of my other favorite books have been posted here already, but no books on this topic have appeared yet.

    I will be taking this course next term so I already got this MATLAB based book. I've already been reading it and it definitely deserves all the 5 star ratings it is getting on Amazon.

    - as

  277. Discrete-time signal processing. by Anonymous Coward · · Score: 0

    http://www.amazon.com/Discrete-Time-Signal-Processing-2nd-Prentice-Hall/dp/0137549202/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1230144276&sr=8-1

    That's the book that made me understand a lot of the maths I had (supposedly) learned before.

  278. Re:How's about for Economics / Business / Marketin by Anonymous Coward · · Score: 0

    Security Analysis by Benjamin Graham

  279. Computer Science and the Limits of Knowledge by Anonymous Coward · · Score: 0

    http://www.amazon.com/Recursive-Universe-Complexity-Scientific-Knowledge/dp/0809252023/ref=sr_1_1?ie=UTF8&s=books&qid=1230146873&sr=8-1

    William Poundstone's "Recursive Universe" starts with Conway's mathematical simulation "life" and works his way to a startlingly coherent theory of the limits of knowledge.

  280. Re:TCP/IP Illustrated, Vol 1 by W. Richard Stevens by Anonymous Coward · · Score: 0

    It was the classic but now is so out of date it is not valuable. To be a classic it's content has to transcend time. I like all of Stevens stuff but to be blunt Charles Kozierok's TCP/IP guide is the new hotness and destine to be a classic, plus it is up to date.

  281. Re:How's about for Economics / Business / Marketin by Anonymous Coward · · Score: 0

    Oh, for the techie out there there are some great books

    Geekonomics: The Real Cost of Insecure Software by David Rice
    The New School of Information Security by Adam Shostack and Andrew Stewart
    Eric Sink on the Business of Software

    and the true classics every geek should read

    The Undercover Economist by Tim Harford
    Freakonomics [Revised and Expanded]: A Rogue Economist Explores the Hidden Side of Everything by Steven D. Levitt and Stephen J. Dubner

    For those of you who think technical skill without understanding how business works will save you you are mistaken. The days where we can bury our heads and pretend that what the marketroids and embezzling accountants are doing are not important to us are gone. In tough economic times the one-trick prima donna goes first. The top question says "Tech / Eng. / CS", sorry fools but you can not succeed in those fields without some knowledge of business and economics. And you'll never be rich and retire without

    Personal Finance For Dummies, 5th edition by Eric Tyson
    The Millionaire Next Door by Thomas J. Stanley and William D. Danko

  282. a decent math textbook by Anonymous Coward · · Score: 0

    I like Calculus from Michael Spivak.

    Difficult for some students though.

  283. Computer Architecture: A Quantitative Approach by Anonymous Coward · · Score: 0

    Hennesy and Pattersons masterpiece.

    http://www.amazon.com/Computer-Architecture-Fourth-Quantitative-Approach/dp/0123704901/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1230177565&sr=8-1

    Also by the same authors - Computer Organization and Design: The Hardware/Software Interface

    http://www.amazon.com/Computer-Organization-Design-Hardware-Interface/dp/0123706068/ref=pd_bxgy_b_img_b

    Best books to learn about processor internals and parallelism...

  284. Another Aho, Hopcroft, Ullman book by Anonymous Coward · · Score: 0

    Knuth's 3 volumes of The Art of Computer Programming (have never seen volume 4 though)

    Another text that I would consider classic is "Data Structures and Algorithms" by Aho, Hopcroft, and Ullman.

    Thru the years I have been truly shocked by how some people have come into computer programming without a CS degree and have little, if any, exposure to algorithms... the programming is just gross. No fundamental designs, no usage of tools that would facilitate the processing... code that processes instruction commands that could have benefited from LEX, just an ungainly monolithic function several thousand lines long.

  285. Bertsekas/Tstitsiklis: Intro to Probability Theory by Anonymous Coward · · Score: 0

    Bertsekas and Tsitsiklis's Introduction to Probability Theory (1st ed) is a fantastic book about probability. It assumes that all you know is calculus, and builds all the fundamentals from there. I *highly* recommend it!

  286. Software requirements, by Karl Wiegers by gr8dude · · Score: 1

    This book will teach you how to get a clear picture of what you want to build before you build it; it will also explain what the price of not doing so is.

    This is a really good guide on how to write software requirements, I must also point out that most of the ideas there can be applied in other cases where planning is needed (ex: going shopping, organizing a party, moving out, etc).

    http://www.amazon.com/Software-Requirements-Second-Pro-Best-Practices/dp/0735618798/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1230202804&sr=8-1

  287. Patrick Winston's LISP by davenismi · · Score: 1

    Maybe not a classic, but I always liked it. Winston's LISP is an easy introductory textbook with lots of examples and solutions. All along the way it seems to say, "See how easy this is".

  288. Debugging Rules, by Dave Agans by noidentity · · Score: 1

    I really enjoyed Dave Agans' Debugging Rules, a book that presents a general, solid debugging process. One of the best points is to first be sure you can reliably trigger the bug, so that once you think you've fixed it, you can then do what triggered it before and verify that it does not still occur.

  289. Concepts in Programming Languages by Spug · · Score: 1
  290. You could do worse than the Jolt Awards book list by Anonymous Coward · · Score: 0

    Every year, the Jolts are awarded to the books considered by the judges (yes, I am one) to be the best in the industry. Granted that tech info does go out of date, still you could do worse than to click the "past winners" link at www.joltawards.com. It's a pretty eclectic bunch, but the winners all share one characteristic: That year, they wowed a majority of judges, who are very experienced in our field.

  291. Excellent book on database systems... by Deven · · Score: 1
    --

    Deven

    "Simple things should be simple, and complex things should be possible." - Alan Kay