Slashdot Mirror


Computer Books For A Library?

Basalisk asks: "I've been asked to come up with a list of suggestions for books covering computer subjects that would be appropriate for a public library. Ideally, the books suggested would have a fairly long shelf life and cater to as many different audiences as possible, from the absolute beginner to an experienced geek. What books dealing with computer subjects should a library have on it's shelves?" Considering that library books need to have lasting and generalized value, not just programming fads of the month, what books would you recommend for a desert-island library collection? What books won't you give up on your tech-library?

509 comments

  1. A pattern practised but not found in the book... by Anonymous Coward · · Score: 1
    The Contractor Pattern.

    Recommend tools for large projects that you have read about but never used. Claim you are an expert in these tools. When challenged say that the other party is not very well versed in modern design philosophy. To prolong the project by several years, simply add CORBA as needed. Collect your fees and leave. With any luck you can come back in two years at double your initial rate.

  2. Knuth's Stanford Graphbase and more by Anonymous Coward · · Score: 1

    I think Knuth's best work is The Stanford Graphbase: A Platform for Combinatorial Computing

    These would also do well in a library:

    I tend to judge which books should be in the library by which have been stolen from me the most. By that criterion, C Programming Language is running neck-and-neck with SQL Instant Reference, but my most coveted at the moment is Statistical Methods for Speech Recognition

    -- James Salsman
    (please mod me to +1 since I'm actually nonanonymous here -- thank you!)

  3. Pragmatic by Anonymous Coward · · Score: 1

    For general cross-language programming i would suggest the "Pragmatic Programmer". Also, you can't live without "The Pragmatic Programmer's Guide to Ruby". The two most interesting books written on programming lately.

  4. Re:Good god, since when does Computers = Systems?? by mosch · · Score: 2
    Most of my career has been spent as the engineering liaison to operations, supporting embedded products, thus the systems category is one which I know well enough to make suggestions. If I made recommendations for books in other fields, I'd be doing a disservice to anybody who read my post, as I wouldn't know the difference, for example, between a good user interface book and a great one.

    Perhaps you are knowledgeable enough in one of the aforementioned fields that you can give knowledgeable recommendations, beyond 'my professor said this one is really good'?

    --

  5. Re:Kernighan and Ritchies's C Programming Language by mosch · · Score: 5
    My short list, in no particular order:
    • The Art of Computer Programming -- Knuth
    • Advanced Programming in the UNIX Environment -- Stevens
    • C/C++/Java How To Program -- Deital & Deital stupid titles, good beginning books
    • The Practical SQL Handbook -- Bowman
    • Joe Celko's SQL for Smarties
    • Essential System Administration -- Frisch
    • TCP/IP Network Administration -- Hunt
    • Modern Operating Systems --- Tanenbaum
    • The Mythical Man Month -- Brooks
    • The C++ Programming Language -- Stroustroup
    • Generic Programming and the STL... -- Austern
    • Computer Networks -- Tanenbaum
    • Upgrading and Repairing PCs -- Mueller
    • Applied Cryptography -- Schneir
    • C Programming Language -- K&R
    • Internetworking with TCP/IP 1, 2 & 3 -- Comer
    • Unix Network Programming 1&2-- Stevens
    Nothing else comes to mind offhand...

    --
  6. Re:Design Patterns by MagPulse · · Score: 1

    And if you want to know how to implement these patterns, you need this book:

    Modern C++ Design by Andrei Alexandrescu

    He does things with templates you wouldn't believe. Some even call patterns a whole new paradigm comparable to object-oriented programming. If you want to see where C++ is going, patterns are the place to be.

  7. Not technical, but still good by SuperQ · · Score: 2
    I'm a fan of computer history and there's nothing wrong with fiction. Here's some other stuff to throw into the mix.

    • Hackers: Heroes of the Computer Revolution
      by Steven Levy
    • Cuckoo's Egg: Tracking a Spy Through the Maze of Computer Espionage
      by Cliff Stoll
    • Microserfs
      by Douglas Coupland
  8. Re:You'll want to buy histories rather than manual by David+Greene · · Score: 1
    While I disagree that "manual" type books like K&R II and Design Patterns are not best suited for a library, you have some very good insight into the importance of computer history.

    One book that is a must read for all in the computer field is Tracy Kidder's The Soul of a New Machine. It's the story of the Data General Eagle project. This was their answer to the VAX. It covers a wide variety of topics: hacker culture, management of engineering teams (the section on interviews was particularly enlightening to me), large-scale design, marketing, aging in the field and much more than I have time to list here. The writing style is excellent. Kidder transforms the process of hardware and software design into a gripping story.

    Others have mentioned Stroustrup's D&E. I'll second that one along with Stan Lippman's Inside the C++ Object Model. Though by its nature C++-centric, it covers a lot of advanced language feature implementations while at the same time dispelling lots of myths about C++ and being honest about its performance costs.

    I'd also go along with others in recommending the "bibles" of each field: Aho, et. al., Tannenbaum, Stevens, Hennessey & Patterson, P & H, etc. I'd also include some "against-the-grain" things like x86 programming manuals, hacking guides for early home systems (Apples, PET, etc.) and anything that gives people a broader perspective on things. This will balance out the "bible" section and give people a sense of how we got here (H & P/P & H for example shout the praises of RISC far too much). It will also help people understand how these things work as those systems were much simpler and easer to "fit in the head."

    --

    --

  9. Re:The C++ Programming Language by David+Greene · · Score: 1
    The ARM is a bit dated now. Better to get the C++PL Special Edition instead.

    D&E is absolutely great. Fascinating stuff and you can still dialogue via USENET with most of the people mentioned!

    --

    --

  10. Re:Based on what my local library has... by David+Greene · · Score: 1
    I absolutely 100% disagree with this comment. I learned most of my computing knowledge in the early years through books like these. These are books that can't be bought anymore because people think they're irrelevant. They are most definitely not. They provide good overviews of complete working systems that are small enough to thoroughly understand with some study.

    Please don't cater to the popular tastes. I don't think that's the mission of a public library.

    --

    --

  11. Re:The C++ Programming Language by David+Greene · · Score: 1
    Pardon? Dialogue is a verb.

    --

    --

  12. Re:Kernighan and Ritchies's C Programming Language by David+Greene · · Score: 2
    Algorithms in C -- Sedgewick

    Please tell me you're joking. This is probably one of the worst books on the subject I have ever read. The algorithm descriptions themselves aren't bad, but the code examples are horrendous. There are countless examples of bad coding style, not the least of which is the use of the letter "ell" as a variable name. Sure, it's compact, but it makes understanding the code very difficult. Often it's tough to tell whether a variable or numeric constant is being used.

    Rivest, et. al. have a much better algorithms book. The writing style is clearer and it covers more material. The section on complexity alone makes the book far superior to Sedgewick.

    --

    --

  13. Python by rafa · · Score: 2
    Learning Python
    programming Python
    , both featuring Mark Lutz, and published by O'Reilly.

    Learning python is a very good book to introduce someone to python programming, and programming in general. Python as a language is easy to get to grips with, and free.

    Programming Python is a good reference work to go along with python's online documentation and is a great book to have. Both are well written and easy to read.

    --
    [Science] is one of the very few things that raises human life a little above farce and gives it the grace of tragedy.
  14. Design Patterns by servo8 · · Score: 5

    Addison-Wesley's "Design Patterns" tends to be language-agnostic and focuses on actual object designs which have survived the test of time. Very useful for anyone involved in OO work.

    1. Re:Design Patterns by Uller-RM · · Score: 2

      If you get Design Patterns, get also "Pattern Hatching" by Vlissides (one of the Gang of Four who wrote the original). It's a much thinner tome, and concerns application of patterns - in the first example, it shows how a number of patterns are found in building a filesystem model with symlinks and other basic info.

      Not absolutely neccessary reading, but very useful.

      (BTW, I concur with whoever posted to get the first edition with examples in Smalltalk alongside C++. Smalltalk owns, one of the coolest languages I ever learned in college.)

    2. Re:Design Patterns by ariux · · Score: 1

      rather than being hailed as a savior.

      ...or more generally, that people who pick up any computer book hoping for The One True Answer, instead of just some useful information, tools, and techniques, are barking up the wrong tree.

    3. Re:Design Patterns by brsett · · Score: 1

      I agree that the unfortunate adoption of patterns has set back many projects, but I don't think that invalidates pattern based design. The concepts are sound, but the misapplication is a real problem. Maybe that book needs some kind of Disclaimer, rather than being hailed as a savior.

    4. Re:Design Patterns by bark76 · · Score: 1

      I'd suggest Fowler's "Analysis Patterns" to complement that book too.

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

      I do not agree that "Design Patterns" will stand the test of time. A C++ programmer needs the book to be able to understand a lot of recent code. But in my opinion, the value of the Patterns movement in typical application development has been greatly overrated. Programmers are using design patterns because they are perceived to be state-of-the art ... but some of them produce obscure, unmaintainable designs. They don't understand that it is 100 times more important to produce a simple, clear design, expressed in simple, clear code, than to use the currently-fashionable ideas.

  15. Fred Brooks by The+Man · · Score: 2

    While not strictly a computer book, The Mythical Man Month is essential reading for anyone interested in software or engineering in general. No library is complete without it.

  16. Re:Kernighan and Ritchies's C Programming Language by Stephan+Schulz · · Score: 1
    Seconded.
    Thirded...this was the first book I thought of when I read the original question. Here is an inclomplete list of books I consider important and somewhat accessible to non-technical readers:
    • Brian W. Kernighan, Dennis M. Ritchie: The C Programming Language
    • Donald Knuth: The Art of Computer Programming (pricey, but well worth it)
    • Alfred V. Aho, Jeffrey D. Ullman: Principles of Compiler Design
    • John Hennessy, David A. Patterson: Computer Architecture : A Quantitative Approach
    • Brian W. Kernighan, Rob Pike: The UNIX Programming Environment
    • Harold Abelson, Gerald Jay Sussman: Structure and Interpretation of Computer Programs
    • Leslie Lamport: LaTeX: A Documentation Preparation System (not the best, but the classic)
    • Eric S. Raymond (ed.): The New Hacker's Dictionary (invaluable, and funny)
    A good library should also have some more current books with less shelf life, i.e. the Camel Book, Programming Python, and probably something like Visual Basic 1.237 (pre-alpha) for absolute Dummies
    --

    Stephan

  17. Re:Knuth by nathanh · · Score: 2
    How very predictable that everyone in here would suggest Knuth. The sad thing about that is that noone has ever read the whole tome. Most of us (no, I haven't either) didn't even make it past the first 100 pages. Partly because it's very dense and difficult, but also partly because it's written in a incredibly dull and uninteresting way.

    I have read the whole tome, 2nd edition. I did make it past the first 100 pages. But I also 100% agree with you that it is hard to read, heavy on the maths, and the style of writing is definitely dull.

    Knuth can write well (TeXBook proves that) but TAOCP isn't an easy read. I certainly wouldn't recommend it for a public library. It is far more appropriate for a specialised library (eg, the university library).

    But it's a great way to show people how smart you are, which, I presume, is all you wanted to do.

    Amen. /. is full of posers. And I'm no role model because I've just been a poser too by admitting to having read all of TAOCP. It's an easy trap to fall into.

  18. Amazon response by Nate+Fox · · Score: 3

    Absolutely Life-Changing..., December 27, 2000
    Reviewer: Paul Sorano (see more about me) from Ft. Lauderdale, FL
    OH MY! I am so glad I purchased this guide. I went from hardly knowing how to turn my computer on to making $1000's of dollars in weeks, just by simply running a website on the internet. Thanks so much for introducing this easy to follow guide. Nothing could have been easier! You have truly outdone yourselves!!


    I'm a bit skeptical: this comment was written during the dot.com boom. ;)

    -----
    If Bill Gates had a nickel for every time Windows crashed...

  19. Re:End User Books by RealUlli · · Score: 1
    The Upgrade book ist the only one you mention that has the required shelf life for a library. Imagine you borrowed an eight year old "Learning Excel" from the library and tried to use it on a current version of Excel. No Way!

    Really, the only books that are good for a library are the ones that are OS and mostly version agnostic. Books in libraries tend to live on the shelves literally decades! Do you think a 20 year old copy of Knuth's TAOCP or a 20 year old copy of "Learning the MS-DOS Operating System" is better?

    Remember, in this subject, we have a timeframe almost TEN TIMES as long as we're used to be dealing with!

    Regards, Ulli

    --
    Simple things should be simple, complex things should be possible.
  20. You may consider Unix a fad, but by embobo · · Score: 1

    Here are some good general Unix books (I may have the titles somewhat off):

    • The Unix Philosophy
    • Unix Hater's Handbook (it's antithesis)
    • The Design and Implementation of 4.4 BSD.
    • Lions' Commentary on Unix

    Here are some more general books:

    • Mythical Man Month
    • The Soul of a New Machine

    I would bet some books on Artifical Intelligence would have wide appeal.

    1. Re:You may consider Unix a fad, but by bpechter · · Score: 1

      It's a fad... but I'm running FreeBSD here... Great selection... loved "Unix Hater's Handbook" as a former DEC VAX/VMS user... but my Vax is old and slow and non-commercial use only and my not-so-slow intel box needed an OS to run. Bill

  21. dr dobbs back catalogue by Foaf · · Score: 3

    How about all the back issues and a subscription to Dr Dobbs? There have been hundreds of articles by notable programmers over the years, not to mention Jon Bentleys columns that eventually became the two editions of Programming Pearls

    1. Re:dr dobbs back catalogue by Hal-9001 · · Score: 1

      Didn't Programming Pearls originate as a column by the same name in Communications of the ACM?

      --
      "It take 9 months to bear a child, no matter how many women you assign to the job."
  22. Refactoring by djKing · · Score: 4

    Refactoring: Improving the Design of Existing Code
    By Martin Fowler.

    What I love about this book, is that it starts with bad code and transforms it into good code. The book defines what is and is not good code, with clear examples. As many new developers start out maintaining bad code, this is a must for new OO developers.

    In the Java course I teach I recomend the Refactoring book followed by the Design Pattern book.

    -Peace
    Dave

    --
    Free as in "the Truth shall set you..."
    1. Re:Refactoring by emanuelb · · Score: 1
      I very much agree. "Design Patterns" and "Refactoring" complement each other very nicely.

      I would add the Extreme Programming books to the list, especially "Extreme Programming Explained" (Kent Beck) and "Extreme Programming Installed" (Ron Jeffries, Ann Anderson, Chet Hendrickson).

      Also by Martin Fowler, "UML Distilled" is very useful.

      These books (as well as "Refactoring") are especially useful for libraries because they're short enough to digest within the typical lending period and will teach you lots without necessarily having to refer back to them all the time. That said, they make great references as well.

    2. Re:Refactoring by Scorchio · · Score: 1
      This book has been reviewed on Slashdot here, and was rated 9/10.

      It sounds exactly like what I need. I've been dropped in at the painful end of a project that's seen a dozen or so programmers hacking away for two years on a project with no code design whatsoever. I guess I must have annoyed someone.

      Time to head over to the bookshop...

  23. knuth by bitstream · · Score: 1

    The Art of Computer Programming Vol I-III

    1. Re:Knuth by dsfox · · Score: 2

      I must admit that Corman/Leisterson/Rivast is a much more useful Algorithms book to me.

    2. Re:Knuth by prizog · · Score: 2

      "30 years ago, linked lists might have been novel, but today, anyone who doesn't understand them and claims to have some programming knowledge is a fool."

      1. There's much more to TAOCP than linked lists, and I doubt you would claim to know every technique presented therein - or even half of them.

      2. The idea is to get books for a library, where people who are learning programming might check them out, and be exposed to the fundamentals of computer science.

      3. What is with your attitude?

    3. Re:Knuth by strix999 · · Score: 1

      "it should be called "'CS 21 for graduate math students'" Hey if you can't stand the math get out of the compiler.(it's a bad pun I know, but it gets the point across) -I can't get enough of that groovey math, upside down A's backward E's, WooHoo baby it's party time.

  24. Stick with books on theory by SomeRandom · · Score: 1

    I'd recommend mostly books on theory with a few books on specific implementations mixed in to show the theory in actual use. Some examples:

    Operating systems

    • Modern Operating Systems by Tanenbaum
    • The Design and Implementation of the 4.4BSD Operating System by McKusick

    Networking

    • TCP/IP Illustrated by Stevens
    • UNIX Network Programming by Stevens

    Hardware

    • Computer Organization and Design by Patterson & Hennessy
    • The Anatomy of a High-Performance Microprocessor: A Systems Perspective by Shriver & Smith

    Algorithms & Data Structures

    • Introduction to Algorithms by Cormen, et al
    • ...
    1. Re:Stick with books on theory by Bullschmidt · · Score: 1

      Gotta love Intro to Algorithms.. Sitting by my desk right now. You really should include the other authors, tho, since Ronald Rivest (the R in RSA) is one of 'em!

      --
      "Of all days, the day on which one has not laughed is the most surely the one wasted." -Sebastian Roch Nicol
  25. Simple... by sheldon · · Score: 2

    Debugging the Development Process, Code Complete, Rapid Development and a variety of other books from Microsoft Press.

    The Mythical Man Month is another good book.

  26. TCP/IP Illustrated Vol. 1 - The protocols. by seppy · · Score: 1
    I've searched every library I've been to, but only
    the St. Paul Public Library carried this one. In my opinion it is a must for any library with technical books. Unfortunately the author is no longer among the living so I doubt it will be updated. I'd love to see IPv6 encompass a new volume

    Brian Seppanen

    Minister of Information and Propaganda

    --

    Brian Seppanen

    Minister of Information and Propaganda
    Area 54 The Secret Government Disco Labs Provo

  27. ephemeral and lasting by danny · · Score: 2
    Of the computing books I've reviewed, some are now totally useless, while others will probably still be valuable in another century.

    Danny.

    --
    I have written over 900 book reviews
  28. Re:Kernighan and Ritchies's C Programming Language by Partisan · · Score: 1

    I picked up a hard bound version of K&R where the cover is upside down!
    That way when others see you reading it you look really stupid.
    Of course us geeks don't care how we look. It's the brains that count! And looking stupid can work to our advantage because it can cause 'them' to underestimate us.
    It's used but in near perfect condition. I paid $5 for it.
    My only regret is not getting the other copy the guy had, it was in a little worse condition but it too had the inverted cover.

  29. In the imaging sector: by MouseR · · Score: 2
    You couldn't be called a library if you didn't have books on PostScript:
    1. PostScript Language Program Design

    2. PostScript Language Reference manual
      PostScript Language Tutorial and Cookbook
    These are the so-called Green, Red and Blue books. In a tutorial fashio, a highly- recommended PostScript book is:
    1. Real World postScript
    All of the abovefrom Addison-Wesley.
    A somewhat antiquated 2/3D graphics programming book is called
    1. Computer Graphics Software Construction
    (ISBN 0-13-162793-7) published by Prentice Hall. it is not very current, but is a respectable work that will get you aquainted with graphics primitives, all the way up to basic 3D surface spline calculations.
    And if you're interested is learning how Holywood does it,
    1. The Renderman Companion

    describes this fantastic retained rendering language. This one, too, published by Addison-Wesley.

    Karma karma karma karma karmeleon: it comes and goes, it comes and goes.
  30. Computing classics by James+Youngman · · Score: 1
    Lots of suggestions for K&R -- but make sure you get the hardback edition!

    Also (no particular order)

    • The C++ Programing Language (Stroustrup, Addison-Wesley)
    • Programming Pearls (Jon Bentley, A-W)
    • More Programming Pearls (Jon Bentley, A-W)
    • The Elements of Programming Style (Kernighan & PLauger)
    • The Practice of Programming (Kernighan & Pike, A-W)
    • TCP/IP Illustrated, Volume 1 (W. Richard Stevens, A-W)
    • Design Patterns (published by A-W)
    • Writing Solid Code (Steve McConnell, Microsoft Press)
    • Practical Unix Security (Garfinkel & Spafford)

    But there are loads more...

  31. Colin Ritchie's 'Relational Database Principles' by Kaneda · · Score: 1

    This is definately one with a decent longevity - deals with the principle, not with specific software

  32. Re:Kernighan and Ritchies's C Programming Language by cpt+kangarooski · · Score: 2

    Nice to see a mention of the "Macintosh Human Interface Guidelines."

    I'd add Tufte's "The Visual Display of Quantitative Information," "Envisioning Information," and "Visual Explanations." Also Laurel's "The Art of Human-Computer Interface Design," Tognazzini's "Tog on Interface" and "Tog on Software Design" and Raskin's "The Humane Interface."

    Programming is great - but these are books you'll want if you want people to want to use your program, and to enjoy doing so. Most of the world's not propeller heads, and even said heads can see their lives improve with good UI. (do you still punch cards and program with switches?)

    I'd also add Flack and Wiese's "The Story About Ping" for a nice high-level explanation of ping(8).

    --
    -- This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
  33. C++ Picks by ChaosDiscord · · Score: 3

    C++ may not be "timeless," but it's here now, and will be here for many years. Besides, improving yourself in one language helps reveal patterns and designs in other languages. C++ will be influencing language design for a long time.

    So, here are a few C++ oriented books that I'm very fond of. All of them helped me improve as a programmer, not just in C++.

    If you're working in C++, you probably want The Design and Evolution of C++ by Bjarne Stroustrup. If you're a C programmer considering C++, you need this book. It really helps get your mind wrapped around the language. C++ may be a mess, but at least you'll understand why it's a mess, and why it really couldn't have succeeded any other way. By understanding why C++ is C++ (and not, say, Java or C#), you'll write faster, cleaner C++. Even if you don't see C++ as the future, armed with the knowledge in this book you can better judge other languages.

    For useful ways to improve your coding right away, I'm fond of Steve Maguire's Writing Solid Code and Scott Meyer's pair Effective C++ and More Effective C++ . Both will give you little improvements that will improve your code tomorrow, next year, and in five years. Parts of all of these books apply to any language. (My copy of Effective C++ is going on 10 years old, and I still find it helpful to reread occasionally.)

  34. It may seem that it doesn't apply... by rho · · Score: 2

    But A Pattern Language is a good book for thinking in terms of "greater than the sum of the parts". It talks in terms of architecture, but it can apply in multiple fields. It's a tough one to slog through, and definitely not the first book for a programmer-in-training, but good to round off the top of that sharp CS peak you might get from a daily dose of Knuth.

    Another, very very important book to add (and all geeks and nerds should buy and read) is Strunk & White's Elements of Style. Imperitive to learning how to write clearly and concisely, which is terribly important when it comes time to document.

    --
    Potato chips are a by-yourself food.
    1. Re:It may seem that it doesn't apply... by n3hat · · Score: 1

      I'm surprised that no one has mentioned "Elements of Programming Style" by Kernighan & Plaugher. Lots of good advice here. And all of their bad examples are taken from other programming texts.

  35. Make sure that... by Dasein · · Score: 1

    You get "Understanding Computers and Cognition" by Winograd and Flores.

    It would save a tremendous amount of misery, frustration, and taxpayer money if this were required reading.

    Small cheap and powerful. Good attributes for books and computers alike.

    --
    You are not a beautiful or unique snowflake -- but you could be if you got off your ass.
  36. Re:Kernighan and Ritchies's C Programming Language by Doctor+Memory · · Score: 1

    They'll love you forever if you leave the parts to assemble a simple mill machine in a back room.

    Bah, just tell 'em how to make their own!

    --
    Just junk food for thought...
  37. Re:Kernighan and Ritchies's C Programming Language by Doctor+Memory · · Score: 1

    I would also include something on OOP/UML

    Yeah, and don't forget something on Structured Design, as long as we're covering development fads.

    --
    Just junk food for thought...
  38. Re:Kernighan and Ritchies's C Programming Language by mandolin · · Score: 2
    It's a slim, expensive tome, but absolutely indispensable

    Seconded. I picked up a copy at my local B&N and had to specifically ask for it. Shocked that a volume as important as this wasn't out on the shelves, it was explained to me that this particular book had a habit of growing legs and running off. I hope the library in question has a good theft-prevention system.

  39. My must-have by jimhill · · Score: 2

    Can't believe I haven't seen this guy's name yet in this thread...

    W. Richard Stevens, "Advanced Programming in the UNIX Environment".

    --
    Learn to spell: nickel, missile, lose, solely, amendment, speech, kernel, probably, ridiculous, deity, hierarchy, versus
  40. Re:Undergrad textbooks: Algorithms, H&P, Dragon, e by JanneM · · Score: 2

    I agree with the above, and would suggest the following to supplement these:

    Tanenbaum, "Structured Computer Organisation" - a very well written, accessible volume explaining how computers are actually organized.

    Rich, Knight, "Artificial Intelligence" - a good introductory text to this field.

    Glassner, et. al., "Graphics Gems" - a series of volumes that (if you can afford them) collects everything you need graphics-wise in an encyclopedic, rather than narrative, format.

    Boolos, Jeffrey, "Computabgility and Logic" - Another introductory text that is great reading for anybody interested in the field of computability (and you even get to prove Gödel's theorem!).

    There are others that are true classics (the Cinderella book comes to mind) but as you are asking for titles for a general-interst library they might be a bit too obscure.

    /Janne

    --
    Trust the Computer. The Computer is your friend.
  41. Here are a few texts that anyone should have by Y2K+is+bogus · · Score: 1

    The first is 'Practical UNIX Programming: A Guide to Concurrency, Communication, and Multithreading' by Kay A. Robbins and Steven Robbins. This book covers a fairly large area of Unix isms. Specifics include MT, signals, shared memory, concurrency, IPC, and other black arts.

    Another book I really like was 'Threads Primer: A Guide to Multithreaded Programming'. This book is Solaris centric, but provides a really good description of MT scheduling and how POSIX threads work with Solaris. It's an awesome book and is easily read.

    Another book which I find invaluable is 'Algorithms in C++' by Robert Sedgewick. This book is the most awesome book I can recommend, it has many real world algorithms and sample code. It requires that you digest in the information about complex algorithms, over time. The Boyer-Moore search algorithm is really cool, but it takes a little time to understand.

    If you are the least bit interested in Compilers, I would highly recommend the O'Reily book 'Lex and Yacc' by John R. Levine, Tony Mason, and Doug Brown. This book is a very practical text on Lex and Yacc, and their application to text parsing and compilers. I wrote a full compiler/interpreter after reading this book.

    The 'Dragon' book is not recommended. I picked it up and it does not have any practical use. It's purely academic and does not relate to real world applications. There is another compiler book that comes highly recommended, but I can't think of it off the top of my head; I think the author has a russian name.

    Other useful books are the TCP/IP series from Douglas Comer, and last but not least, the Internet RFCs. Someone has compiled the RFCs into several volumes that cover similar subjects. I don't know off the top of my head who the group was. Additionally a lot of protocol RFCs use Backer-Naur Form (BNF) to describe the protocol, since it's a really concise and compact form. This form is nearly identical to the syntax that Yacc uses, so the Lex & Yacc book is very useful here.

  42. you kids dont know how good you have it by fishbowl · · Score: 2

    Why, in my day, the public library had three books on computers: A spanish language introduction to programming on System 370 assembly language, a book devoted to prettyprinting PL/I programs, and a Fortran book
    (from which I gained much knowledge.) That was
    1977. A few years later, they had a shelf of similarly obsolete texts, but never anything really enlightening. I'm referring to the central
    library in Dallas, Texas, a library designed by Frank Lloyd Wright that probably housed several million books.

    Today, I would still not expect to find the whole Addison-Wesely catalog or even a single O'Reilly
    book in any library east of California. (IN California, I expect to see these books at the convenience store, or rather, have seen, in Mountain View at least!)

    I wonder how many W. Richard Stevens texts are available at your average public library? How about the Sun Java series, or even the Solaris System Administrators Guides? Knuth? Booch?
    Jacobsen? Rumbaugh?

    Hard computer science books, starting with Cormen Leiserson and Rivest: Introduction to Algorithms,
    and Knuth: The Art of Computer Programming.

    O'Reilly books seem to find themselves neither on library shelves nor as primary texts for university classes. I wonder if it is because of the marketing niche that ORA has carved out as more of an independent publisher. At least, recent years have seen the availability of these types of books at chain bookstores.

    If I could have put my hands on Introduction to Algorithms and on various Automata texts when I was at my peak of mathematical aptitude, I would be much further along academically than I am now.

    --
    -fb Everything not expressly forbidden is now mandatory.
  43. Re:Based on what my local library has... by fishbowl · · Score: 2

    >Want any MS Dos 3.0 programming books?

    Actually... well... no, but I had to
    pause to think about it... I still refer, not infrequently, to the Programmer's Guide to the IBM
    PC, by Peter Norton.
    Every time I'm tempted to move it from my bookshelf to storage, I end up referring to it,
    so it stays.

    I keep an old 2-volume Solaris book around, knowing that Sparc's DON'T COME WITH MANUALS,
    and the manuals you do get aren't particularly useful.

    I'd love to have a copy of David Ahl's 101 Basic Computer Games, but even I tossed things that old.

    Strategy guides to some of the old games? Sure,
    (not to mention the abandonware issue!)

    I suppose the list goes on. Let's see, I can donate my extra copy of Stevens Unix Network Programming I, a whole shelf of Java 1.x books,
    "The Teachings of Buddha" which was in a hotel room instead of Gideon's Bible(!), the novelisation of Girl, Interrupted, an english-spanish dictionary with no cover, and *maybe* my extra Programming Perl-2nd-ed.

    That's about all I can part with, and I just might
    hoof them down to my local library.

    I'm finding that in my community, in these economic good times, the used bookstore has taken the role traditionally filled by the library.
    I realize that doesn't really bring literacy to the poor, but it is a phenomenon that I've observed. Books change hands from peer to peer and through such a vehicle as a used book seller, and these are the very people who would, in other circumstances, be a frequent library patron.

    I don't mean to diminish the other services that are provided by libraries of course. I just tallied up the CS books I still want to buy this year, and I'm over $1000. Not counting what adding a shelf will cost!! A library might let
    me try-before-I-buy or even read-instead-of-buy.
    The costs of these books doesn't bother me at all
    though, and I wish this could somehow be a datapoint in the whole copyright/artist-gets-paid misunderstanding.

    thank you for your pixels

    --
    -fb Everything not expressly forbidden is now mandatory.
  44. Re:Kernighan and Ritchies's C Programming Language by fishbowl · · Score: 2

    >Advanced C: Tips and Techniques

    I had a college class with this as the textbook, and an instructor who was programming industrial robotics (day job) while teaching our class. Outstanding book!
    I still go here first, if presented with questions about operator precedence or multidimensional pointer arithmetic, it's always on the shelf right next to K&R, and makes a good complement to it.

    I also heartily recommend Bruce Eckel's Thinking in C++.

    In the C++ textbook department, a local University teaches an intro programming course with Gary Bronson, _A First Book of C++: From Here to There_ 0-314-04236-9; If I were teaching
    such a class, I'd enjoy using this text, although
    it does speak from a procedural design standpoint in the early chapters.

    --
    -fb Everything not expressly forbidden is now mandatory.
  45. Another 2 cents by hatless · · Score: 2
    For the timeless, good reading shelf:
    • Steve McConnell's Code Complete and Rapid Development
    • Stephen Levy's Hackers
    • Cliff Stoll's Silicon Snake Oil
    • Douglas Coupland's Microserfs
    • The Cathedral and the Bazaar

    For the practical, replace-every-3-years, people-will-find-them-useful shelf:
    • The Dummies books on the most basic stuff everyone uses: MS Word, MS Excel, Excel macros, and the current versions of Windows. The series as a whole is very spotty, but these are solid, helpful guides.
    • Judith Bowman's Practical SQL Handbook. A solid, easy-to-follow tutorial in the basics of SQL that won't go stale. The same can't be said for the bundled CD of an old Sybase personal server.
    • Unix System Administration Handbook, 3rd Edition, by Hein, Nemeth, Seebass et al., a great warhorse that always opens to something useful. Possibly the only pure "Unix" book better than its O'Reilly counterpart. So well done that the last edition, some 10 years old now, is still useful, a real rarity in reference titles. I'd give this one a good 5-7 years of use.
    • O'Reilly's Learning Perl. As an intro tutorial, and a very good one, it should remain useful longer than a reference title.
    • An HTML tutorial and O'Reilly's XHTML and Javascript books. Maybe. They'll be more obsolete than a PDP-8 book in a few years, but they'll get used now.
    • A book on DIY PC repair. In paperback. With lots of pictures and step-by-step instructions. It will be laughable in a decade, but I think library patrons would find it useful.
    • A tutorial on Visual Basic.

    In general, I'd skip all but the most elegant half dozen or so books on programming languages because of the shelf-life issue. Think Kernighan and Ritchie on C and maybe things like Bruce Eckel's Thinking in Java, which is as timelessly abstract a Java book as I've seen. But Java will be unrecognizable in 5 years, so tread lightly here.


    Get nothing on web development other than an HTML book or two. Those are useless after one year, never mind five.

  46. Recommendations too specialised by Goonie · · Score: 2
    The recommendations here, while excellent books in the main, are virtually all books for programmers.

    Some books for system administrators would be a very good idea (I'd imagine there's some O'Reilly guides which would be a good place to start), a user's guide to Linux or two would be appropriate, and a smattering of books on Windows, MacOS, and popular applications for each would be appropriate.

    In addition, some "perspective" books would be appreciated by library users. A couple of suggestions to start with - The New Hacker's Dictionary (the print version of the Jargon File), In The Beginning Was The Command Line by Neal Stephenson, and The Emperor's New Mind by Roger Penrose (not that I agree with a lot of what he says, but it's still a great read). Others?

    Go you big red fire engine!

    --

    Any sufficiently advanced technology is indistinguishable from a rigged demo
    --Andy Finkel (J. Klass?)
    1. Re:Recommendations too specialised by figment · · Score: 2
      Yes. Yes. Yes.

      Why hasn't anybody mentioned any good photoshop books? i sure as hell wish i knew photoshop in highschool, i may not have owned it, but my computer lab had it. In my experience, having photoshop experience is way way way more pratical on a widescale than say, what you learn from the dragon book. Books on popular programs, like Photoshop don't only appeal to the geeks, but also the artsy people, and even just random people who say, have to design a small advertisement at work or something.

      I'm sure every book that every person has suggested is a good book. I own a lot of them as well. I do not think my public library necessarily should though, in the grand scheme of things how many people really care about compiler design?

      It's not like these books are entirely inaccessible, that's what your local state college/university's library is for, because they already have these things. Imho the goal of a public library should be to cater to mass appeal, and not very many of these suggested books do this. Mass appeal is introductory and intermediate books on HTML and javascript, not on compiler design and BGPv4.

  47. Good books from kuroshin and general reading list by dfelznic · · Score: 1
    Well I hate replying to my self but oh well.
    Kuroshin has had some good stories about computer books:


    The Essential Linux Bookshelf, Part I: The Unix Programming Environment



    ...Part II: Linux Installation



    ..Part III Running Linux


    Part IV Unix Power Tools


    TCP/IP Net Administration



    Part VI


    part Vii Unix haters

    Kuroshins book section is quite nice there are even more topics on programming and nice reviews. The kuroshin crowd seems a little more literary.

    Any way to make a long post longer here are my additional includes for all around cool books that I am reading this summer (most are relatively new)

    Body of Secrets : Anatomy of the...


    John Adams


    Flatland : A Romance of Many Dimensions...


    Writings on an Ethical Life


    The Simpsons and Philosophy : The D'Oh!...


    The Hacker Ethic


    Sophie's World : A Novel About the...


    The Moral Obligation to Be Intelligent :...


    Learning Perl (3rd Edition)


    From Dawn to Decadence : 500 Years of...

  48. Learning Perl 3rd edition released by dfelznic · · Score: 1
    On a related note. LWN.net had a post today about the release of the third edition of Learning Perl

    From lwn.net: O'REILLY RELEASES THE THIRD EDITION OF "LEARNING PERL" Sebastopol, CA--When Randal Schwartz wrote the first edition of "Learning Perl" in 1993, the back cover stated--almost prophetically--that the book was written by a "leading Perl trainer." Within a few months of the book's publication, Schwartz's company had in fact become the leading worldwide on-site Perl training company and "Learning Perl" had become a bestseller. Known affectionately as the "Llama" among Perl programmers, "Learning Perl" has guided thousands of aspiring Perl programmers into the Perl community. Now the third edition of "Learning Perl" (O'Reilly, US $34.95), coauthored by Randal Schwartz and Tom Phoenix, two of the most prominent and active members of the Perl community, is sure to take its place beside the earlier editions as the most recommended book for learning the Perl programming language. "This book is totally new, with no cut and paste from any previous edition, reflecting the results of research for our ongoing Stonehenge classroom trainings," says Schwartz. "You get the core of Perl. Everyone should spend the first 30 hours of their Perl experience reading this book." Perl began as a tool for Unix system administrators and has since blossomed into a full-featured programming language found on practically every computing platform, used for web programming, database manipulation, XML processing, system administration and more. According to the authors of "Learning Perl, Third Edition," Perl is easy to use, unlimited in its capabilities, and fast. But the claim made most often by Perl programmers is that Perl is "fun." For whatever reason they have chosen to learn Perl, there are more than one million Perl programmers today and their number continues to grow. "Perl gives you a way to make the common tasks easy, and the uncommon tasks possible," explains Schwartz. "Perl is also a mandatory requirement for many hiring managers these days, so it's good to have on your resume in this age of downsizing and dot-comming. And even if you're in a company that isn't going out of business, people need to do more with less, and Perl is great leverage to do that. With years of success in teaching Perl as consultants, Schwartz and Phoenix derived the new text from their "Learning Perl" courseware and instructor notes, which they refined and road-tested with a view to this latest edition of the "Llama." Even the exercises at the end of each chapter have changed to be "more real world and better paced," as Schwartz says, and include exercises created with both Unix and Windows in mind. Readers will find that the latest edition of the book is addressed less to the Unix system administrator and much more to the general programmer. The authors have reengineered the book especially to match the pace and scope appropriate for readers who are trying to get started with Perl, while retaining the detailed discussion, examples, and the humor for which the book is famous. "We had a lot of fun writing this book, and it shows in the text," says coauthor Phoenix. "When we work at teaching or writing, we're really playing and having a good time. That's one of the reasons Randal and I enjoy working together, since we have a compatible sense of humor. We're always trying to top each other with a joke or a way of presenting the material to our students." "Learning Perl, Third Edition" was written for anyone who would like to learn how to program Perl or learn about the language. As the authors say, "Other books may teach you to program in Perl, but 'Learning Perl' will turn you into a Perl programmer." What readers and critics said about the earlier editions: "It does more than merely introduce the reader to the language; it also does an excellent job of conveying the philosophy of Perl. More than anything else this book has given me a solid enough foundation in Perl for me to experiment on my own by writing programs that are at least personally useful, and be able to easily understand the more complicated subjects discussed in the Perl Cookbook and others." --Josh Borroughs, Alaska Perl Mongers "Thankfully, O'Reilly publishes many de facto programming titles to which Learning Perl can easily be added. Simple but elegant examples throughout detail this rich language. . . . worth every penny!" --Compbookreview.com "Well thought out and well written, with a sense of humor. Learning Perl is also known as 'the llama book' for the animal pictured on its cover. It is deliberately incomplete. The assumption is that after you've gotten your feet wet going through this book, you'll move on to Programming Perl."--Martin Heller, Byte.com

  49. Unixreview.com reviews Incident Response by dfelznic · · Score: 1

    Hello,
    Unixreview.com has a review of Incident Response: Investigating computer Crime. Incidentally chapter 11 is available online

  50. Redo of above list with more on Sys Admin by dfelznic · · Score: 2
    Here is my editing of the above list with a little more focus on sys admin. I like some of the hacking exposed books for computer security(or northrup's intrusion detection). But they seem a little to placed in time. Any ideas on a good timeless security book? UNIX System Administration Handbook

    Essential System Administration

    Computer Networks

    Interconnections, Second Edition

    TCP/IP Illustrated, Volume 1: The Protocols

    Structure and Interpretation of Computer Programs

    The Mythical-Man Month

    Modern Operating Systems

    The Art of Computer Programming, All 3 Volumes

    Programming Perl (3rd Edition)

    Applied Cryptography

    1. Re:Redo of above list with more on Sys Admin by grando · · Score: 1

      What about the old zen books by michael abrash? Zen of Code Optimization, Zen of Assembly Language, and Zen of Graphics Programming. I always thought that he had some great stuff, even though it may be a little dated by now...

  51. A similar discussion on K5 by scratch · · Score: 1

    You might want to check out this link at kuro5shin. Lots of good stuff
    there.

  52. Re:Kernighan and Ritchies's C Programming Language by Lando · · Score: 1

    Nice list, looks like I'll head to the book store soon... Don't have UNIX network Programming in my collection... nor Modern Operating systems

    --
    /* TODO: Spawn child process, interest child in technology, have child write a new sig */
  53. Recommended Books by Lando · · Score: 2

    I have a rather extensive library. Of the books in my library, these are the ones that a) have lasting value as I have been using these books for years and/or b)are excellent learning and training manuals.

    Most of them are practical experience books, ie no "pure" research books.

    Addison-Wesley
    "The Practice of Programming" Kernighan Pike
    "The C programming language" Kernighan Pike
    "Writing MS-DOS Device Drivers" Lai
    "Compilers Principles, Techniques, and Tools" Aho Sethi Ullman
    "Algorithms in C" Sedgewick
    "Multithreading Applications in Win32" Beveridge Wiener

    Coriolis Group Books
    "Graphics Programming Black Book" Abrash

    Morgan Kaufmann Publishers
    "Joe Celko's SQL for Smarties: Advanced SQL Programming" Celko
    SQL Puzzles by Celko as well, can't find my copy

    Prentice Hall
    "Internetworking with TCP/IP Volumes 1-3" Comer Stevens
    "C How to Program" Deitel/Deitel

    Microsoft Press
    "Writing Solid Code" Maguire
    "Code Complete" McConnell

    Wiley
    "Applied Cryptography" Schneier

    O'reilly
    "Encyclopedia of Graphics File Formats" Murray & Vanryper
    "Practical UNIX & Internet Security" Garfinkey & Spafford
    "Essential System Administration" Frisch
    "Programming Perl" Wall Christiansen Schwartz
    "Mastering Algorithms with Perl" Orwant Hietaniemi Macdonald

    QUE
    "Linux Socket Programming by Example" Gay

    Sam's
    "TCP/IP Blueprints" Burk, Blight, Lee, et al

    "The Mythical Man Month" Lent out at the moment

    Out of print books
    "Peter Norton's guide to the PC" Norton

    --
    /* TODO: Spawn child process, interest child in technology, have child write a new sig */
  54. OOSC II by ansible · · Score: 3

    Ack! I can't believe that no one has mentioned Object Oriented Software Construction (2nd Edition) by Bertrand Meyer.

    Though you may not always agree with what he says, he brings a rigor and thoughtfulness to OO design. This book can help you understand how stuff like multiple inheritance should work. He also gives some interesting ideas on things like parallel programming in an OO world... something beyond just threads and semaphores.

    Even if you don't (or can't) program in Eiffel (the language used in the book) I believe this hefty tome (1000+ pages) can improve your design ability.

  55. Smalltalk is an interesting language. by chris_sawtell · · Score: 1
    If you are into Smalltalk - the original, pure OO language - Try this new one and the others on that page.

    The learning curve is a vertical cliff face and the book provides a very good set of crampons. Once you are at the top I'm told the view is totally exhilarating. CD in the back.

  56. Off topic, but... by TaoJones · · Score: 1

    The submission did include the phrase:

    > what books would you recommend for a desert-island library collection?

    Well, based on that, the whole Foxfire series is a must have. How can you re-invent TCP/IP on a desert island if you can't survive? A definite must read, and if nothing else, knowing how to brew your own is about the closest you're going to come to "free beer" ;)

    --
    "Fear is the rootkit of democracy.." Blarkon
  57. poor old pascal by K. · · Score: 2

    Since I haven't seen it anywhere in the top few postings: Algorithms + Data Structures = Programs, by Wirth.

    --
    -- Proud descendant of semi-nomadic cattle-herders.
  58. Theodor Nelson's Computer Lib/Dream Machines by pholbrook · · Score: 1

    Computer Lib/Dream Machines is (are?) two of the most original books out there. One side of the book was titled 'Computer Lib'; you'd flip it over to find 'Dream Machines' printed from the other side. They met in the middle. Computer Lib was an idiosyncratic explanation of computer technology, complete with Nelson's own drawings. Dream Machines dived into Nelson's true love, how the computer screen could transform the way people used computers. (In 1974 the typical computer interface was a 10 characters-per-second teletype or a 30 cps DECwriter.) Nelson's ultimate goal was a hypertext (Nelson coined the word) system he called Xanadu. Nelson regards the web as a pale imitation of his plans for Xanadu. (Xanadu has never been finished, but it still lives: see xanadu.com) Ideally, you'd get a copy of the big, white, 1974 home-published version. Nelson put out a smaller revised version in 1987 from Microsoft Press. Both are of out of print. Computer Lib/Dream Machines remains a visionary book.

  59. Don't forget Hennessy & Patterson by Weasel+Boy · · Score: 1

    A.k.a., "Computer Architecture: A Quantitative Approach"

  60. Adding two that I haven't seen named yet by Zico · · Score: 1

    Mark Minasi's Mastering Windows 2000 Server and ORA's Perl CD Bookshelf.

    Other's I've seen that come to mind, too: the Petzold book, K&R, the Stevens books, McConnell's Code Complete (although I wish these last two would be updated), Learning Python's a great book for newbie programmers, ahh forget it, I could go on forever.


    Cheers,

  61. the Stevens Series by rockville · · Score: 1

    The TCP/IP Illustrated series (by W. Richard Stevens) would be a good addition. Volume 1, especially, is a good general introduction, while the later volumes get more technical

    "Fool me once, shame on you

  62. My "Gotta Haves" by Malic · · Score: 1

    Computer Networks - Andrew S. Tannenbaum
    13 years old but still relavant in its discussions of the nitty-gritty of how networking works.

    Hackers - Steven Levy
    This IS how it all began... Consider it the non-Hollywood version of "Pirates of Silicon Valley"

    Debugging the Development Process - Steve McQuire
    Don't dis' Microsoft Press - there are some gems in their catalog of works. I wish all books were written this way.

    There is VERY little that stands the test of time for more than a year. And precious little yet that lasts for over five. I do have to say that the Knuth texts make the grade but are a little bit inaccessable for even seasoned professionals...
    --

    --
    I swear by MacOS X. Although I use to swear *at* MacOS 9...
  63. Hrm.. by Trelane · · Score: 1
    • Permanent
      • The C Programming Language, Kernighan & Ritchie
      • Advanced Programming in the Unix Environment, Stevens
      • All 3 volumes of TCP/IP Illustrated, Stevens
      • Both volumes of Unix Network Programming by Stevens
      • Stroustrup's C++ book (I forget what its name is exactly)
      • All of the The Art of Programming series by Knuth (from hearsay; I haven't read any of them)
      • Design and Implementation of the 4.4 BSD Operating System by McKusick, Bostic, Karels, and Quarterman
      • Computer Networks by Tannenbaum
      • Unix System Administration Handbook by Nemeth, Snyder, Seebass, and Hein
      • Applied Cryptography, Schneier
    • More Short-Term Lifetime:
      • Programming Perl, Wall, Christiansen, and Schwartz
      • Linux-Kernel Programmierung (is Addison-Wesley)
      • Perl/Tk, Walsh
    Hrm.. I seem to be running out of ideas.
    --
    --

    --
    Given enough personal experience, all stereotypes are shallow.
  64. Re:Numerical Recipes not perfect by wocky · · Score: 1

    I'd second that. Most of the professional numerical analysists that I have known at Bell Labs had a generally low opinion about the actual code in the book. You can get an idea of a lot of the things that can be solved, but when you want to actually do something, you're usually better off getting stuff from netlib or a similar source.

    --
    David
  65. A modern classic by mattbee · · Score: 2

    Obviously people are going for Kernighan, Knuth and various dry tomes on algorithms, but I'd suggest Mr. Bunny's Big Cup O' Java, a snip at $12. It's not instructive in a technical sense, but its purpose is to warn the reader off buzzwords and bullshit computer manuals through satire and nonsense. Tim Lindhom (JVM spec. co-author): Mr. CE III does have a way of capturing the industry patois and spewing it back as absurdity. Well, at least it made me snigger loudly in a crowded bookshop, so make of it what you will.

    --
    Matthew @ Bytemark Hosting
  66. O'Reilly's Sendmail book! by Twilight1 · · Score: 1

    If you were stuck on a desert island, this is the best choice. Not only does it cover Sendmail, but it is large enough to be used as a deadly weapon!

    1. Re:O'Reilly's Sendmail book! by Sir+Spank-o-tron · · Score: 1

      Do people really still use sendmail?

      Why??
      DJB is a dick, but qmail rocks.
      If you don't like qmail, you can use postfix.

      sendmail must die...

      --
      -- Spankmeister General
    2. Re:O'Reilly's Sendmail book! by fwc · · Score: 1
      Not only that, but if you encounter aliens, you will have a leg up on how to use alien technology. After all, that IS the only reasonable explanation for the sendmail config file....

      --

    3. Re:O'Reilly's Sendmail book! by agdv · · Score: 2

      If you were stuck on a desert island, this is the best choice. Not only does it cover Sendmail, but it is large enough to be used as a deadly weapon!

      That's the last thing we need. As soon as some kid in the library uses it to take out a dozen other kids, politicians will start trying to get computer books banned.

  67. Buy my book, please! by Mike+McCune · · Score: 1

    I have a book of nonsensical rambling that shouldn't be read by anyone! ;-)

    http://shop.barnesandnoble.com/booksearch/isbnIn qu iry.asp?isbn=0130306703

    --

    In a world that is Free and Open, who needs Windows and Gates?

  68. Don't forget Dubya!!! by Sir+Spank-o-tron · · Score: 1

    W. Richard Stevens that is.
    Anything by him (god rest his soul):

    TCP/IP Illustrated (vols 1,2,3)
    Advanced Programming in the UNIX Environment
    Unix Network Programming (vol 1,2,3)

    --
    -- Spankmeister General
  69. Re:Jon Bentley's Programming Pearls by Sir+Spank-o-tron · · Score: 1

    Here Here!!

    Programming Pearls is a diamond in the rough.

    *chuckle*

    --
    -- Spankmeister General
  70. Liskov's and Guttag's Design Book by Fly · · Score: 1
    I highly recommend Program Devleopment in Java: Abstraction, Specification, and Object-Oriented Design . It used to be written with examples in a language called "CLU," which was a generic teaching language. All of the time-worn concepts still apply even though it's now written with examples in Java. This book is awesome. I am so glad that a friend recommended it to me!

    It's also the software engineering book used for undergraduate studies at MIT. If you can get your hands on one of the old copies of the CLU-based book, that's even better.

    end of line

    --
    end of line
  71. CJ Date's Database Book by wirefarm · · Score: 3

    CJ Date's "Introduction To Database Systems"
    Great book.
    All of the O'Reilly books.
    Mythical Man Month.
    Surely You're Joking, Mr. Feynman.
    The K & R C book.
    Knuth.

    That would do it for me...

    Cheers,
    Jim in Tokyo

    Have no clue about firewalls?

    --
    -- My Weblog.
    1. Re:CJ Date's Database Book by dunstan · · Score: 1

      It's the second Feynman book, "What do you care what other people think" where Feynman is involved in the Challenger investigation, and gives his views (favourable) on the software development process followed.

      --
      The last scintilla of doubt just rode out of town
  72. Textbooks || Data Mining Helps You! by NitsujTPU · · Score: 2

    It sounds kind of lame, but you should get some topical textbooks, not just ones like Java in a Nutshell (though I would recommend a copy of that), but also some AI, Neural Network, Graphics, and Operating Systems books. These books have a long shelf life and lasting value, so they won't go out of style. Also, perhaps a couple C/C++ programming books. Theory is always a good thing. Then I would get some really beginner sorts of books as well. I think that the best way to start if you're working on a monthly budget sort of deal is to get topical reference books first, and work your way to more fad/language oreinted books that won't have so long a shelf life. Also, try to stick to ANSI standards, as they are the ones that will be the most applicable across platforms. IE, get a book on ANSI C, and maybe hold off on the one on Visual C++. Try to cover a smattering of topics and things that are of general academic interest more in depth rather than getting several books on a single language.

    Perhaps you could generate some usage reports using the online catalog, see what the people are checking out, and buy more in that direction. If you bought a sampling of books from many different subjects, and then looked on the catalog to see which ones are out the most, you could tailor your library to what the local interest seems to be.

  73. From the "Laugh-it's-funny-dept" by Khan · · Score: 2

    "Hot Grits! A Users Guide to Posting on Slashdot" You gotta admit, it does have potential ;)

    --

    "Klaatu, verada, necktie!" -Ash

  74. For beginners and on ... "UNIX for the impatient" by matthiasj · · Score: 1

    "Unix for the impatient" is probably one of the finest books I have. I bought on a friends recommendation when I first touch a UNIX box. An now ... years later as a seasoned Systems Administrator, I still occasionally pull the thumbed through copy of the shelf.

  75. GEB by rueba · · Score: 1
    Godel, Escher, Bach: An Eternal Golden Braid by Douglas Hofstadter.

    I have a copy right in front of me, and I have feeling it will be on my bookshelf 20 years from now.

    --
    The only reason all cover-ups appear to fail is that you never hear about the ones that succeed.
  76. Re:Core Programming Books by WasterDave · · Score: 2

    Brooks, Fred, The Mythical Man-Month -- Because it woke the world up to how to build big systems.

    On a similar note you should have "Rapid Development" by Steve McConnell. This is a great book on how to apply the lessons learned by Fred Brooks in the real world.

    Dave

    --
    I write a blog now, you should be afraid.
  77. those How x Works books by ibodog · · Score: 1

    The over-sized series from Ziff-Davis with the How PC's Work, How Macs Work, etc would be ideal for public libraries. These books can help bridge the gap between a know nothing and a know it all.

  78. My (not too) short list by dutky · · Score: 2
    My list is geared toward providing a good research base for technical people and folks that want to become technical people. Here are the hard-core technical books:
    • The Art of Computer Programming, volumes I-III - Donald Knuth
    • The Mythical Man-Month - Fred Brooks
    • Peopleware - Tom DeMarco & Timothy Lister
    • The Psychology of Computer Programming - Gerald M. Weinberg
    • Compilers: Principles, Techniques and Tools - Aho, Sethi, and Ullman
    • Compiler Design in C or Compiler Design in Java - Allen Hollub
    • C+C++ Programming With Objects in C and C++ - Allen Hollub
    • Object-Oriented Programming: An Evolutionary Approach - Cox & Novobilski
    • Computer Architecture: A Quantitative Approach - Hennesy & Patterson
    • The C Programming Language - Kernighan & Ritchie
    • The UNIX Programming Environment - Kernighan & Pike
    • Information Theory - Claude E. Shannon
    • Claude Elwood Shannon: Collected Papers - Sloane and Wyner
    • Cybernetics - Norbert Wiener
    • Numerical Recipes in C - Press, Vetterling, Teukolsky, & Flannery
    • Operating System Design: The XINU Approach - Douglass Comer
    • Operating System Concepts - Silberschatz & Galvin
    • Mobile Robotics: Inspiration to Implementation - Jones & Flynn
    • Tog on Software Design - Bruce Tognazzini
    And, for the non-technical end of things, more history oriented:
    • The Soul of a New Machine - Tracy Kidder
    • Fire in the Valley: The Making of the Personal Computer - Freiberger & Swaine
    • IBM's Early Computers - Bashe, Johnson, Palmer & Pugh
    • The Cathedral and the Bazaar - Eric S. Raymond (I'm not a karma whore, I'm more of a self-promoter: I'm in the acknowledgements)
    • The Age of Intelligent Machines - Raymond Kurzweil (not to be confused with his more recent book The Age of Spiritual Machines, which is likely a load of tripe, but may be worth including anyhow)
    • Freedom's Edge: The Computer Threat to Society - Milton R. Wessel (a much saner analysis of the effect of computers on our culture than Kurzweil's recent book)
    Otherwise, I'd get some stuff on relational database theory and design (the book by C. J. Date is widely used, though nearly unreadable), a few books about other languages (both common and rare, you should at least have books on Java, Pascal, Lisp, Fortran and BASIC, but it shouldn't be too hard to construct a set covering far more), as well as some books about assorted kinds of hardware (a couple of microprocessor books -- 6502, Z80, 68000, 8086/8088 -- as well as some of the older minis and mainframes -- CDC 6600, PDP-11, DEC VAX, IBM 360 -- along with a few books on specific models of personal computers -- Apple II, Macintosh, IBM-PC -- should satisfy most people's curiosity). You might top it off with some non-computer books about electronics and methematics, but I don't know what to suggest there.

    You should be able to find some very nice deals on a number of these books at used bookstores. Some of the books are out of print, so this may be your only real option. Amazon has links to used bookstores, and many of them have their own websites if you are still mad at Amazon over the one-click patent stuff. I'd suggest Powell's Books in Portland, they've got a better selection than I've seen almost anywhere else, and they deliver.

  79. Re:Not yet mentioned by dutky · · Score: 2
    I'll second this nomination. I discovered this book (Computer Power and Human Reason) in my library while finding books for my own list. I haven't any idea where or when I bought it, but I'm reading it now, and it is really good. I'd put it under the non-technical/historical/philosophical category. A good companion piece to Freedom's Edge and Kurzweils recent load of hooey (The Age of Spiritual Machines not to be confused with his earlier book, The Age of Intelligent Machines which is actually quite good).

    I also thought of a few more books that deserve to be mentioned: A number of books by Edward Yourdon (Structured Analysis and Design The Decline and Fall of the American Programmer and The Rise and Resurection of the American Programmer should pretty well cover Yourdon) are good to have, even if his theses are no longer much in vogue. Similarly, the OO books by Grady and Booch are worth having, along with some UML, Use Cases and Patterns related texts.

    Finally, there was a little hippy-trippy book I ran into back in college in the early nineties, but was never able to find again later. The title was Digital Memory and was some kind of treatise on Peace, Love, and Interactive Computing. It actually had a few interesting things to say, even if the tone was a bit on the too-much-THC-in-my-bloodstream side.

  80. 1 Recommendation: SICP (MIT Press) by occam · · Score: 2

    "Structure and Interpretation of Computer Programs" by Abelson and Sussman (MIT Press).

    One of the most eye-opening and amazing books on CS. It's based on scheme ('the' elegant dialect of Lisp) and takes a no-holds barred approach to introducing oversimplifications (e.g., data + program) and then turning them on their heads for great instruction.

    A (so far) timeless classic.

    = Joe =

  81. Re:for TCP/IP... by Azog · · Score: 2

    Yes! "Advanced Programming in the Unix Environment", which is part of the same series from Richard Stevens, is my trusted companion as a C programmer making the escape from Microsoft to Linux.

    And it's not Linux specific - it's pretty much POSIX, and does talk about some of the differences between implementations where they matter.

    An excellent and comprehensive set of books.

    Torrey Hoffman (Azog)

    --
    Torrey Hoffman (Azog)
    "HTML needs a rant tag" - Alan Cox
  82. The Spice Books by chocolateboy · · Score: 1
    1. Re:The Spice Books by LocalYokel · · Score: 1
      What of Ginger, Scary, and Baby Spice?

      --

      --

      --
      E2 IN2 IE?

  83. Windows Programming Books by Katravax · · Score: 2

    Some of the long shelf-life Windows programming books:

    • Programming Windows -- Charles Petzold
    • Programming Windows with MFC -- Jeff Prosise (though I shudder to think of more MFC programmers)
    • Win32 Multithreaded Programming -- Cohen and Woodring
    • Network Programming for Microsoft Windows -- Jones and Ohlund
    • Professional NT Services -- Kevin Miller

    And a non-Windows goodie I haven't seen mentioned:

    • Assembly Language Step-by-Step -- Jeff Duntemann
  84. Tech vs. general interest by gregbaker · · Score: 1
    The problem with this is that any technical book is pretty much going to be useless in a few years. How many of us have wandered through an aisle with a pile of MS Word 4 books at their local library?

    To have some staying power, you really have to look at more general interest books. Some of my favourites: The Code Book (Singh), Weaving the Web (Berners-Lee), Being Digital (Negroponte).

    The other books on my shelf that I wouldn't be without will need to be replaced eventaully. Possible exceptions: the TeXbook, K&R C, Stroustrop C++.

  85. Re:A good few books... by figment · · Score: 2
    While this book is probably entirely not about computers (ok except for the part about the punchcards going faster), i think you're brings up a really good point.

    I think the goal of libraries should be to drum up interest for the topic in question, not necessarilty provide hardcore reference books. Extrapolating to physics Six Easy Pieces and the two Feynman pseudoautobiographies do a fantastic job at getting people interested in science, while his berkley lectures have a lot less appeal, even though they're probably better for your local physics majors.

    Consider this. Say you're interested in physics. Would you want to read Six not so easy pieces , a relatively easy book that deals with relativity, or the chapter on relativity in Classical dynamics of particles and systems , which i can barely understand, even after using it in class for a year?

    This is exactly what we're doing when we recommend things like Halabi or most random O'Reilly books. Why do we like O'Reilly? because when i need to know the name of the object that controls blabla, then I can look it up. Quickly. Having a book that tells you that ListCellRenderer has 1 method called getListCellRendererComponent really has limited value to most people.

    Learning Perl is great, because it's an introductory book (but even that is a lot easier to read if you already know C). O'Reilly does have a lot of good books that cover introductory topics (incidentally, i own none of them), but just because it's on your bookshelf and probably is the most kickass book on it's topic, that doesn't mean it's entirely suitable for your public library.

  86. Re:books by figment · · Score: 3
    > The only problem with the "For Dummies" books
    > is that they are tailored for one version of
    > any particular subject without really
    > explaining the fundamentals of what's happening

    Yes. But imho, that's exactly what we want for libraries. I think the idea should be to drum up interest for different things, and the "For dummies" books do these things quite well. They are (or at least try to be) mildly entertaining (in contrast you cannot read Java in a Nutshell as evening reading material.

    While we shouldn't just limit ourselves to shallow books, we do not need the most expert books either. Someone earlier suggested Halabi (which i treat as my bible), but it really has limited use in a public library, anyone who needs the book will purchase it because they need it 24/7. A more reasonable book would be TCP/IP Network Adminstration which allows people to learn the basics, and points them in the right direction if they desire to learn more. I even think the Cricket book is inappropriate because although it really explains dns well, it also explains why you cannot point an MX to a CNAME (and if i didn't administer a couple DNS servers, i wouldn't care in the least why this was), when a book on how the general internet works could supply so much more pertinent information for the money.

    > In a couple of years they will be out of date,
    > and you'll have to buy a new set.

    Probably true, but i don't think they go out of date any faster than any other programming book (especially html/javascript variants). Also "For dummies" books are comparitively cheap. Last I checked Dummies books went for $20, now they're going for anywhere from $25~40. With the notable exception of O'rielly, most books now go for ~$50~60, so you are able to get a broader scope of things with the Dummies books.

    My personal library is almost exclusively O'Rielly and Cisco Press, i don't think there is very much of a debate that these are probably the best reference books out there, but imho it's not what my local public library needs.

  87. Core Programming Books by sohp · · Score: 5

    Brooks, Fred, The Mythical Man-Month -- Because it woke the world up to how to build big systems.

    Schneier, Bruce Applied Cryptography -- Because libraries should have the books THEY don't want you to read.

    DeMarco, Tom, and Timothy Lister, Peopleware: Productive Projects and Teams -- How programmers working in teams actually get things done.

    Gamma, Helm, Johnson, & Vlissides, Design Patterns -- Landmark book on developing with objects

    Knuth, Donald, The Art of Computer Programming, Knuth -- Landmark classic

    Alexander, Christopher A Pattern Language, ChristopherAlexander, et. al., and Timeless Way of Building -- Thinking about programs that people can actually use.

    1. Re:Core Programming Books by gbr · · Score: 1

      Also 'Code Complete'. Same author, I think. From Microsoft Press

    2. Re:Core Programming Books by JordanH · · Score: 2
      • Brooks, Fred, The Mythical Man-Month -- Because it woke the world up to how to build big systems.

      Oh? The world is awake when it comes to the issues concerning how to build big systems?

      I hadn't noticed.

      I do agree with the choice, I'm just disparing at how few project managers and executives I've known really understand something as simple as "adding people to a late project makes it later".

    3. Re:Core Programming Books by sv0f · · Score: 2

      Why would you want an architecture book in the computer section?

      A compromise, then. Richard P. Gabriel's "Patterns of Software: Tales from the Software Community" does justice to both patterns in the computer programming sense and to Alexander's work. Readers will be inspired to track down Alexander's "Timeless Way of Building" or Grabow's biography of Alexander, both in the architecture section. They'll also be turned onto the software sense of the term. Finally, they'll get a book that belongs in a public library, not the elite shelves of a University's technical library.

      (The exposure to Lisp is a freebie!)

    4. Re:Core Programming Books by bark76 · · Score: 1
      Alexander, Christopher A Pattern Language, ChristopherAlexander, et. al., and Timeless Way of Building -- Thinking about programs that people can actually use.

      Why would you want an architecture book in the computer section?
      This is the book that inspired the whole field of patterns and pattern languages, but it isn't a computer book.

  88. Online library by tangram · · Score: 1

    Massachusetts libraries have a subscription to netLibrary, which includes a huge number of O'Reilly and Addison Wesley books. Subscribers are able to "check out" a copy or browse it online.

    This eliminates the shelf life problem, and a subscription might allow access to more books for the same cost. It could provide the current manuals for the library, while you provide hard copies of classics and histories.

    It's been an invaluable way to browse through O'Reilly books and determine whether I really need a copy of my own.

    --tangram

  89. Re:Small Minds, Small Worlds by divbyzero · · Score: 1

    It's an interesting viewpoint, but I think you're placing too much emphasis on the physical aspects of a library. A library is just as much any collection of books or documents under communal ownership (your taxes make you a partial owner of your town's collection of books).

    For a second, let's make the arguably unpleasant assumption that an artificial scarcity will be maintained amongst digital documents in the future (as foreshadowed by the current Ebook scandal). In such a situation, it would still be possible for groups of people to get together online and make their own private document sharing collective, in which the right for any one person to read a certain book at a certain time was passed around like a token. This would be functionally the same as a library today, but in the pure digital world.

    This is obviously very different from the utopic vision of unlimited copies of digital documents being freely available to all. I don't mean to pass judgement one way or the other (since my opinion doesn't count for much anyway), but until such time as the world figures out a practical incentive for authors, composers, artists, etc to keep producing, then a library like this would not be such a bad idea.


    But my grandest creation, as history will tell,
    --
    But my grandest creation, as history will tell,
    Was Firefrorefiddle, the Fiend of the Fell.
  90. Re:Writing Solid Code by divbyzero · · Score: 1

    No! Not the hungarian book!

    (For those who are fortunate enough not to have been subjected to it, "hungarian coding" is a convention for naming variables and functions according to their types. The intention is good, but the effect is that it makes code utterly unreadable and harder to maintain. Half of this book is devoted to convincing you to use hungarian; the other half was not at all memorable.)


    But my grandest creation, as history will tell,
    --
    But my grandest creation, as history will tell,
    Was Firefrorefiddle, the Fiend of the Fell.
  91. The Pattern on the Stone by DarkFyre · · Score: 1

    "The Pattern on the Stone : The Simple Ideas That Make Computers Work" by Daniel Hillis

    This book is a great primer on computing for anyone, and an enjoyable read to boot. It covers basic hardware concepts, starting from logic gates, etc, before moving up into high-level concepts such as programming. The last bit of the book contains a look a AI, perceptrons and other "frontiers" of computing.

    This short book is a must-buy for anyone interested in computers, and is the first book I recommend to anyone starting out.

  92. I'm sure I'll get some flaming for this, but... by iapetus · · Score: 2

    ...I'm going to recommend a book from (gasp!) Microsoft Press. If ever they institute some sort of formal test before people are let loose on poor innocent computers, Code Complete should be the programmer's equivalent of the Highway Code.

    It's full of good advice, and there's nothing in there that's particularly language-dependent. My one complaint would be the lack of solid OO coverage - a book that addresses the same sort of issue for OO languages would be great as well.

    Code Complete at Amazon

    For more specific information on MS systems, I think the one text book that covers everything you need to know in sufficient detail is Mr Bunny's Guide to ActiveX - if you haven't read this book and are currently developing for MS platforms, stop now. You can read the book too, but that's entirely optional.

    And before I'm inundated by anti-Microsoft zealots accusing me of only putting forward pro-MS books, might I also recommend the remarkable Mr Bunny's Big Cup o' Java, which will teach you everything, something, or even less about Java, and possibly a little about rabbits.

    --
    ++ Say to Elrond "Hello.".
    Elrond says "No.". Elrond gives you some lunch.
  93. Re:Small Minds, Small Worlds by Webmonger · · Score: 2

    Yes, but all the content CAN'T be had in digital form. There are many forces that would rather not have data available digitally-- at least, not until they can charge you by the minute. Right now, scientists are planning on boycotting scientific journals that won't permit scientific works to be made available online.

    Libraries are also commonly supplied with computers for web surfing, which helps get lower-income people involved in this whole great digital playground.

    And which would you rather read in bed: a book or a laptop?

    Some books IN a library may be obsolete, certainly I never read computer magazines any more, but libraries themselves-- not for a long time yet.

    Nice troll.

  94. Some great Java books... by SuperKendall · · Score: 2

    One book I'd reccomend is "Thinking in Java" by Bruce Eckel. Another very excellent book recently released is "Effective Java" by Josh Bloch, written in the same style as "Effective C++" (which you should proabbly also get!). Yet another great choice is "Concurrent programming in Java" which is a great book about multithreaded programming and seems like it would be good source material for threads in just about any language as it's really more about patterns to use in threaded programming.

    I wish I could think of some better books to learn programming from scratch, as there don't seem to be many suggestion in that area. Perhaps "Scheme and the Art Of Programming"? That coupled with a simple scheme implementation to learn from would be great - I think suggestions of Ruby and Python to learn are also good.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  95. Along those lines - Design and Evolution of C++ by SuperKendall · · Score: 2

    I'd reccomend "The Design and Evolution of C++" by Bjarne Stroustrup, which is specific to C++ but gives you a lot of insight into how a language forms and I think is a great read no matter what language you like to use.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  96. Go ahead, mod me down for non-techie books, but... by gmhowell · · Score: 2

    But these two books are rather important. While not computer how-to books, they should be read by everyone who is thinking of picking up the other books:

    1) High Tech Heretic : Reflections of a Computer Contrarian
    By Clifford Stoll

    Do we need computers everywhere, particularly in schools? Nope. Not necessarily. Although some of us have made them the be all and end all of our lives, it's not normal, and shouldn't be expected.

    Easy to read, easy to understand, tough to refute.

    2) In the Beginning...Was the Command Line

    By Neal Stephenson

    You don't need to program Apple Basic (or mainframe Fortran, or other archaic things) to be able to use computers. But this book is another nice, non-technical addition to a complete computer bookshelf.

    --
    Jesus was all right but his disciples were thick and ordinary. -John Lennon
  97. Re:Kernighan and Ritchies's C Programming Language by 12dec0de · · Score: 1
    I am missing some basics. I know, they are not fun to read, but invaluable when you are preparing for your computer science test, and also valuable when you want to really understand what some programs are doing. Thus I would add
    • The Alice Book: Introduction Automata Theory and Formal Languages
    • The Dragon Book: Compiler Design
    • The Wizard Book: Design and Implementation of Computer Programs (This teaches Scheme as well, but the programming basics are the most important part)
    • Patterns in Programming, (I don't have my copy handy, and I can never remember the real title, I just know that there are four authors: The Gang of four)
    I would also include something on OOP/UML, personally I prefer the book by Jacobsen. But any later book by the three amigos will do
  98. Re:Godel Escher Bach by AABS · · Score: 1

    Godel Escher Bach apart from being written so well that it won a Pulitzer Prize, was THE most inspiring book I read during the whole of my computer science degree (And I read a few) and raised Douglas Hofstadter to god-like status in my pantheon of idea mongers!
    Others that kept me going were:

    John von Neumann - Computers and the brain
    Marvin Minsky - The society of mind
    Aho Sethi and Ulman - The dragon book (cited already)
    Kraig Brockschmidt - OLE2
    Bjarne Stroustrup - The C++ programming Language 3ed+ (Never get an older copy, the indexes were screwed)
    unknown - the simulation of human behaviour
    John Koza - Genetic Programming


    There are Never enough conceptual books, ones that can inspire with Deep ideas, available in Libraries.

  99. Books by LWATCDR · · Score: 1

    Well there are some classics.
    The Knuths the art of computer programing vol 1-3
    I would say that some of Niklaus Wirths books are most haves.
    The C++ white book was already suggested.
    I would include some good programming books on..
    VisualBasic I hate it but many love it.
    Delphi "Never used it"
    MFC and Visual C++...
    Java.
    Perl
    Python
    And several good Linux and BSD books.
    Some SQL books.
    And a collection of Dillbert books.

    --
    See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    1. Re:books by geekoid · · Score: 2

      I think the Dummies books would be a great selection for libraries. They are direct and to the point, great for a newbie reference. Most people who would look for a computer book at the library probably isn't in a tech field at this time and is looking for a place to get started. Of course the K&R would be good. people would feel more comfortable with the dummies book.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    2. Re:books by dgroskind · · Score: 1

      Many "... for dummies" books may be fine but this review of Perl for Dummies made me suspicious of the whole series.

    3. Re:books by Newander · · Score: 1

      The only problem with the "For Dummies" books is that they are tailored for one version of any particular subject without really explaining the fundamentals of what's happening. In a couple of years they will be out of date, and you'll have to buy a new set.

      --

      Jesus saves and takes half damage.

  100. Algorithms + Data Structures = Programs by vanyel · · Score: 1

    The Niklaus Wirth book was the one that really explained things in a way I could understand as an undergrad. Fortunately I found it on my own because the books the classes I took used sucked. While it uses the dead language pascal, it's not so foreign to be unusable...

  101. Must have books by TomDLux · · Score: 1
    Books on how-to-program in a particular language are always obsolete, but exceptional ones teach you how to program, as well as the actual language. That's why I've always been fond of K&R.
    • anything by K&R, especially The C Programming Language
    • anything by Stroustroup
    • Standard texts, eg, dragon book
    • I particularly like Algorithmns, by Sedgewick
    • Quite a few by Nicholas Wirth
    • TAOCP
    • The Mythical Man-Month
  102. My picks for books that will last some time by MarcoAtWork · · Score: 2

    Besides the already mentioned (Kernighan&Ritchie, Stroustrup etc. etc.) I would vote for the following:

    Lamport: Latex, a document preparation system

    Goosens et al: The Latex Compation

    Nemeth et al: Unix system administration

    Gamma et al: Design patterns

    Butenhof: Programming with Posix threads

    Meyers: Effective C++

    A good data structures book in C/C++ (unsure, I haven't yet found one I'm completely comfortable with)

    The X windows series from O'Reilly, since even if GTK and Qt are the flavor of the moment, if one learns how to program in Xlib/Xt/Motif, one can pick up pretty much anything.

    --
    -- the cake is a lie
  103. Intermediate Algorithms text. by StarkII · · Score: 1

    I would recommend Algorithms by Sedgewick. It is effectively a simplified version of some of the mainstream parts of Knuth, but it is more applied and better suited to the beginner and intermediate programmer. Effective C++ and More Effective C++ by Scott Meyers.

    --
    Jens Wessling
  104. TAOCP by Shadowhawk · · Score: 2

    The Art of Computer Programming, of course!

    --
    My mind works like lightning. One brilliant flash and it is gone.
  105. Re:Small Minds, Small Worlds by bcaulf · · Score: 1

    Utopic vision? Check out alt.binaries.e-book and tell me whether it's utopic or already here.

  106. Silly by bcaulf · · Score: 1

    Computers can be cheaper than books, cheaper than teachers, cheaper than a TV and VCR. I fully expect the original poster's prediction to materialize as the price of a networked computer media station continues to drop and reaches the levels that do make ubiquity feasible. New software will be needed, to be sure, but it's terribly shortsighted to think that computers will always be expensive. Digital watches and calculators used to be expensive, too.

  107. A good few books... by Polo · · Score: 2

    Surely You're Joking Mister Feynman by Richard P. Feynman

    This was actually a text for a few Penn State compsci courses (though it was optional).

    I also liked Peopleware by Tom Demarco and Timothy Lister

  108. I can't belive... by LetterRip · · Score: 3

    That no one has suggested

    Code Complete

    and

    Rapid Development

    they are two of the most important computer (programmer) books out there...

    LetterRip

  109. Re:O'Reilly books by spudnic · · Score: 1

    Code Complete is an excellent book. It was given to all the members of our programming team several years ago by our project manager before we started work on a major project.

    I can not emphsize enough how much I have gotten from this book. It will never be outdated because it teaches you how to approach a project and product a good final product.

    --
    load "linux",8,1
  110. for programming i recommend by sampson · · Score: 1

    for java:
    Core Java series (volumes 1 and 2, as well as the JFC book) by Cay S. Horstmann, Gary Cornell; Paperback

    for c++:
    Thinking in C++ by Brucke Eckel

    MFC:
    programming windows with MFC by Jeff Prosise

    Crypto (as stated above):
    Applied Cryptogrophy - by Bruce Schneier

    Other:
    Design Patterns, by Gamma etc
    Godel Escher Bach, by Douglas R. Hofstadter (had to find place for it somewhere)

  111. Dorset House Press by CharlieG · · Score: 2
    Besides the two Microsoft Books that some people have said to stay away from (Writing Solid Code and Rapid Development) I'd have to say just about anything published by Dorset House These Include books that have been recommended here before such as:
    • Peopleware
    But I'll add some more:
    • Are Your Lights On?
    • Becoming a Technical Leader
    • Creating a Software Engineering Culture
    • Designing Quality Databases with IDEF1X Information Models
    • An Introduction to General Systems Thinking: Silver Anniversary Edition
    • Managing Expectations: Working with People Who Want More, Better, Faster, Sooner, NOW!
    You'll notice that a LOT of these books are by Weinberg - You can also add all four volumes of "Quality Software Management" once the developer gets a bit more advanced You'll notice a pattern here - Not ONE of these books is about a particular language. They are about HOW to develop projects. Language books go out of date - FAST. Books on HOW to be a programmer LAST, some of these books have been in publication for more than 25 years and are not out of date.
    --
    -- 73 de KG2V For the Children - RKBA! "You are what you do when it counts" - the Masso
  112. this bear's favourites by Kwantus · · Score: 1
    Of the books on my shelves, the one absolute must-have is Introduction to Computer Theory by Daniel I. A. Cohen. A rigourous but not dry intro to automata, from what REs can't find to the Halting Problem. (WOW I got my hardcover new for CA$58.50; I wish I wanted to sell the thing)

    The rest would be nice to have but aren't as entertaining on a desert isle, 'cept possibly for Knuth:

    For the practical side of automata, the first half of the `dragon book': Compilers: Principles, Techniques, and Tools by Aho, Sethi, and Ullman.

    For a handle on security issues, Practical Unix and Internet Security by Garfinkel and Spafford.

    And The Art of Computer Programming by Donald Ervin Knuth.

    /. won't let me finish!! f*#%!

  113. this bear's favourites, PS: nontech by Kwantus · · Score: 1

    Oops, I have a couple of non-tech ones.
    Of course, Levy's Hackers; possibly Sterling's Hacker Crackdown.
    Software Conflict, Robert Glass.
    Oh, and the Jargon File.

  114. Danny Hillis' The Pattern on the Stone by Grokopen · · Score: 1
    If you want a classic on computer science that

    (a) will stand the test of time,

    (b) will be accessible (from middle school students to senior citizens) without dumbing down too much [I doubt a novice or a kid new to computer science will understand books by Knuth, et al., that have been posted by others],

    (c) is well written,

    (d) is written by one of the greatest hacker/engineer/computer scientist of all time,

    and (e) may give even *experts* some insights,

    then you can't beat Danny Hillis' excellent introduction and overview of computer science: The Pattern on the Stone .

  115. Artificial Intelligence - A Modern Approach by fungus · · Score: 2

    Artificial Intelligence - A Modern Approach by Stuart Russell and Peter Norvig is a great book that explains many concepts in AI. It is the book the most used in Universities around the world to teach this subject. It is not language specific, covers most aspects of AI, is okay for beginners, and goes in the details...

    I really enjoyed this book and think it is a great buy.

  116. Re:Only need one... by sheck · · Score: 1

    The full text of which can be found online, here:

    http://mitpress.mit.edu/sicp/sicp.html

  117. Overlooking a classic by sheck · · Score: 1

    Since nobody else has mentioned it:

    The Psychology of Computer Programming - Weinberg

  118. Security and Certification Books by RaBiDFLY · · Score: 1

    I find Security related books are somewhat hard to come by, at least good ones.

    "Hack Proofing Your Network"
    "Building Internet Firewalls, 2nd Edition"
    "Real World Linux Security"
    "RSA Security's Official Guide to Cryptography"

    Certifcation books are great.

    Publishers: Sybex, Network Press, Microsoft Press, QUE, Mc Graw Hill and Coriolis (there are others I'm sure).

    Not only do you learn something (though rarely enough about a specific subject), when your done reading, you should be ready for an exam or two.

    And, I can't forget about O'Reilly books!

  119. Re:O'Reilly books by mvc · · Score: 1

    The problem here is that, while O'Reilly books are certainly among the very best technical references available, they also tend to be about specific programs and languages, and thus to become outdated every few years. O'Reilly is certainly the place to go for those kinds of books, but a library, which needs books that will continue to be valuable for years in the future, should focus primarily on books about more general principles--Knuth and Design Patterns are two excellent examples that have been recommended elsewhere.

    Of course, there are some O'Reilly books that will continue to be useful, because they cover particularly long-lasting programs, but buying every O'Reilly book would be too much.

    --Moss

    This is a .sig.
    Now there are two of them.

    --

    --Moss

    This is a .sig.
    Now there are two of them.
    There are two _____.
  120. Numerical Recipies by nawkboy · · Score: 1

    For the math nerds you need a copy of Numerical Recipies in C, and Numerical Recipies in Fortran 90.

    Everyone is going to knock FORTRAN here, but for numerical algorithms its great. Just don't try to do anything else with it or you will suffer.

  121. What they need to read first is: by phaktor · · Score: 1

    Hitch Hikers Guide to the Galaxy. (All the books from the Triligy :) ) from the late Dougles Adams

    I don't know about you but if you want to talk to the techs this will come in handy. it probably wouldn't hurt to watch some Monty Python either.

    --
    I don't use eleetism in my Email
  122. Re:Can't go wrong with O'Reilly by phaktor · · Score: 2

    Speaking of O'Reilly:

    here is the website you'll want,

    http://libraries.oreilly.com/

    --
    I don't use eleetism in my Email
  123. Other subjects by Hershmire · · Score: 1

    Don't forget to put books in for the non-computer user, not just for sysadmins and computer science majors. Not everyone is looking for computer programming help. I suggest even putting some "Beginning Windows" books. There will be people looking for this information, too. A public library is a place for information, even unpopular (or "evil") information.

    --
    if(!toilet_paper) roll.replace(new roll); //Stupid roommates.
  124. Re:Kernighan and Ritchies's C Programming Language by Dr.+Smeegee · · Score: 1

    I second that emotion. I have used my copy of Lutz and Ascher's _Learning_Python_ to tatters. I am a bit of an old fart (35) and have just started programming in earnest this year. After going through this very clear book and writing several programs that are now in daily use at my job, C, C++ and perl now make sense. I beat my head against the wall for months with the "usual" languages for months before finding this book. Good stuff.

  125. History... by cr0sh · · Score: 2

    Remember the computer history books - a large collection of these is essential to any library, to see where this all started from, and where it may be heading to.

    There are a few good recently published "History of Computers" books, but honestly, the best way to get a history of computers is to find older computer reference books (ie, books which when sold presented "state-of-the-art" information about computers - I have some real interesting ones from the 40's and 50's).

    Books on Babbage, Pascal, Lord Kelvin, Ada Lovelace, Alan Turing, etc - would also be welcome additions to such a section. Throw in books on Hollerith, as well. Add recent stuff (hacker history - like the Jargon File, etc - and others), as well as more "popular" stuff - like "The Media Lab" and Steven Levy's "Hackers"...

    Gotta know where all this came from, and where are roots are, as well...

    Worldcom - Generation Duh!

    --
    Reason is the Path to God - Anon
    1. Re:History... by Roug · · Score: 1
      Yes, certainly. A good library must have books, that documents the past. Otherwise, how can we get the perspective on phenomens like Open Source?

      I can add
      • Hackers, by Steven Levy. Open Source has always been there, but instead of Internet they had punched paper tape.
      • Fire in the Valley, by Freiberger and Swaine about the Making of the Personal Computer
      • Where Wizards Stay up Late, by Katie Hafner and Matthw Lyon about the origins of the Internet
      • The Cuckoo's Egg by Clifford Stoll. It mentions Echelon in 1988!
      • Start Up, by Jerry Kaplan. A book, which describes the tribulations of getting venture capital and competing against Microsofts FUD
  126. Re:Kernighan and Plaugher by dancomfort · · Score: 1

    This book changed my life. I ended up implementing most of the tools is COBOL on a
    Burroughs mainframe. Learning to think in the Unix mindset, even when working on a mainframe,
    made me much more productive. Whenever I needed to write a little utility, I usually had 90% of the functions I needed available in the software tool set; I only needed to write 10% more (and, of course, I tried to add that 10% to the tool set).

  127. Dijkstra! by dancomfort · · Score: 1

    A discipline of programming is a minimalist classic.

    Selected Writings is a collection of essays, some beautiful proofs, some slagging programming languages like Fortran and Basic. He's worth reading as an irritant.

    (He also started a revolution with a letter "The Goto statement considered harmful".)

  128. Cormen, Leiserson & Rivest by Blue+Neon+Head · · Score: 1

    "Introduction to Algorithms."

    Knuth is great work, but sadly its immediate practical value is minimal - it's more suited for the aspiring guru.

    CLR, however, is both an elegant introduction to the theory of algorithms and a useful reference for those times you suddenly need to review, say, Knuth-Morris-Pratt, or convex hull algorithms. It's happened to me.

    Combine this with K&R and some other good language texts, and you've got a strong intro to programming.

  129. LOGO by holloway · · Score: 1
    Mind Storms - Children, Computers, and Powerful Ideas... all about LOGO - how it was invented and how it works - by Seymour Pappert (ISBN: 0-71080-472-5). Most people will know of Turtle Graphics, which is a part of LOGO.

    Seymour Pappert and his team at MIT made the first programming language for children.

  130. Re:Based on what my local library has... by greenrd · · Score: 1
    Uh, it's his baby, what's the problem? Do you have a problem with the film industry choosing to use cigarettes in scenes less? No? Then shut up.

    By the way, ET is fiction. It's a story. Not a documentary. Calm down, buddy. That bold and those triple question marks don't cast you in a good light.

  131. big problem! by AYEq · · Score: 1

    That anything that could actually stand the test of time really will not appeal to the majority of the people who are looking. I have been really dissapointed at the selection at my local and not-so-local public libraries. It seems like most wast mo0ney on the hot new (at least at the time) trendy books that are REALLY dated and never have the books that are older and well respected. Anyway here is my vote:

    (forgot the author) - SICP (structure and interpretation of computer programs)

    Comer, Douglass - Internetworking with TCP/IP (This one just kept me glued to it for some reason)

    Kernighan and Ritchie - The C programming language (really the most unsexy comp book but it is really good)

    Deitel & Deitel - C++ How to Program (not really the most heady book, but I think that it is the best of the "beginner" books. It even has all of those neat buzzwords like UML and Object-Orientated to pull the readers to it)

    Knuth - Art of Computer Programming vol I-III (just to push the vote over the top, I will be a happy man the day that I can understand the firt chapter but I am getting there)

  132. A few by anticypher · · Score: 2
    Here are some titles I tend to keep on my shelf. Books that have served me well over the years, and maintained relevance to various aspects of my job

    The Dragon Book (Compilers, principles, techniques and tools) by Aho, Sethi and Ullman

    The Cricket Book (DNS and BIND) by Albitz and Liu

    The Bat Book (Sendmail) Allman and co-conspirators

    The BGP Book (Internet Routing Architectures) Sam Halabi

    A whole bunch of William Stallings books (Cryptography and Network Security, High Speed Nets and ATM Design, SNMP)

    The whole series of Roger L. Freeman's Reference Manual for Telecommunications Engineering.

    Telecommunications Engineer's Reference Book, by Mazda

    At home, I have the classics, Knuth's Art of Computer Programming volumes I to III, The Mythical Man Month, Godel Escher Bach, and many others I can't remember in this inebriated state.

    For a lending library, I'd add the whole of the O'Reilly series, a bunch of Cisco Press, Dilbert and of course User Friendly

    the AC

    --
    Hemos is like...sci-fi fans;he thinks technology is cool, but he hasn't bothered to understand the science it's based on
  133. Re:You'll want both by anticypher · · Score: 2

    Imagine checking out the camel book for a week, and getting started on Perl. Then you have to turn it in. Minutes later, you'll need the book again.

    You will probably buy one to keep. You certainly would know the worth of a good reference book, and remember those funny animal sketches.

    the AC

    --
    Hemos is like...sci-fi fans;he thinks technology is cool, but he hasn't bothered to understand the science it's based on
  134. Re:The C++ Programming Language by T3kno · · Score: 1

    The special edition is truly a thing of beauty


    --
    (B) + (D) + (B) + (D) = (K) + (&)
  135. start with Knuth.... by jefu · · Score: 1

    Most computer books - no matter how good - are out of date before too long, so a library would have to be very careful. Here are a few I'd put on the shelves - some obvious, more not so much. Several are out of print. For the most part this list avoids "how to" books on specific languages and systems - any such are probably too ephemeral for a library with a limited budget. Its not likely to be a popular list though.
    <br>
    Knuth - The Art of Computer Programming. This is a MUST - probably over the heads of half the people who will use the library, but not to be missed. (But then, anyone who knows me well, knows that I figure that in this imperfect world, Knuth is close to being God.)
    <br>
    Dijkstra - a Discpline of Programming. You may not always agree with Dijkstra, but you must respect him.
    <br>
    Kernighan and Plauger - Elements of Programming Style. Likely to seem dated to many, but I reread it recently and it has aged far better than other books that gained higher praise when first published.
    <br>
    The anatomy of Lisp (I dont remember the author) - Teaches quite a bit of the innards of a real programming system as well as a lot about recursion, internal representation of data and the like.
    <br> Gamma ... - Design Patterns. When I read this, it was a revelation of sorts - put into words things I'd known for a long time.
    <br> Baase and Van Gelder Computer Algorithms- Currently my preferred algorithms book - one of the sections taught me quite a bit about an algorithm I thought I already knew.
    <br>
    Kernighan and Ritchie - The C Programming Language
    One of the few language specific books I'd recommend.
    <br> Foley, Van Damm... Computer Graphics - There are better texts, there are better books on graphics systems, but this one is the best for showing the breadth of computer graphics and giving the basics of how it all works.
    <br>
    Felleisen, Friedman - the Little MLer - every procedural programmer should look at functional programming - it will improve their procedural code. This is an excellent start. And non programmers will find it a fun way to start learning about ML and programming.
    <br>
    Revised Report on Algol 68 -- not just a language specific book, but one for a language nobody uses. Still, you can learn a lot about language design and programming from this.
    <br>

    Okasaki - Purely Functional Data Structures -- A wonderful short book with a lot of information in it - I'm still digesting some of it, but implementing the algorithms has taught me a shitload.
    <br>
    Eliens -- Principles of Object Oriented Software Development. About the best general all around book on OOP and its process. Not specific to any particular methodology, but lots of good info.
    <br>

  136. Jon Bentley's Programming Pearls by nano-second · · Score: 2

    The original edition, and the sequel More Programming Pearls. Also, Introduction to Algorithms by Cormen, Leiserson and Rivest is a good basic algorithm reference.
    ---

    --
    I hope you're not pretending to be evil while secretly being good. That would be dishonest.
  137. Slightly OT: Free Software in libraries? by invenustus · · Score: 1

    A lot of libraries lend out audio CD's and movies, right? Does anyone know of a public (or college) library that lends out software CD's? Obviously that'd be a licensing nightmare for proprietary stuff, but what about Free software? There are a lot of 386 and 486 computers lying around out there without Internet connections. For nearly no cost you can burn a Mandrake (no flames, any distro is good) ISO and let every young geek in the neighborhood try it out and learn something. Now that I think of it, maybe I'll do that for my local library this summer before I go back to college....
    ----

    --
    grep -ri 'should work' /usr/src/linux | wc -l
  138. Re:Kernighan and Ritchies's C Programming Language by Bilestoad · · Score: 1

    Algorithms in C -- Sedgewick

    TAOCP is sometimes overkill. This one is a lot more portable.
    ("I will call him mini-me!" - Don Knuth)

  139. My bag contains, everywhere I go: by foodini · · Score: 1

    Both of the "Unix Network Programming" books
    by Richard W Stevens. The original is the more
    useful to me, but it is out of print.
    <p>
    "The C Programming Language," Second Edition by
    Brian Kernighan and Dennis Ritchie.
    <p>
    I'm a graphics geek, so I have the "Graphics Gems"
    series, as well as the Foley and Van Dam "Computer Graphics: Principles and Practice," though I condemn them every chance I get for their matrix order.
    <p>
    Second edition or later of Bjarne Stoustrop's C++ book is good to have around, no matter how much you hate it (the language, not the book.)
    <p>
    An absolute MUST: Andrew Tannenbaum's Operating Systems book. Drop the anti-Tannenbaum politics for a moment and read the book. I've had to teach out of it and it beats the living hell out of every other OS book I've dealt with.
    <p>
    The Richard W Stevens TCP/IP Illustrated books are also on my shelf and a must for anyone who wants to really understand the core of the Internet Protocol. Not enough coverage of IP6, in my opinion, but the way things are going I'm not betting on it seeing much use in the next decade.
    <p>
    I'd avoid the whole latest-and-greatest craze as well, simply because as a library, you can't afford to keep up with it. You end up spending $50-$75 on a book that won't be used in a year. The books I've listed above all get used a number of times a month at work and are all well into their first decade of life if not their second.

  140. In the Begining was the Command Line by CaptSwifty · · Score: 1

    In the Begining was the Command Line by Neal Stephenson (ISBN: 0380815931) is a good book about the history and evolution of the user interface, as well as a good read.

  141. Re:MS Press by sparty · · Score: 1

    Actually, I've got a really good Microsoft Press book that I've been working through recently. It's got a copyright notice for 1986 and 1989 (with the 1989 being a reprint with added materail), a title of Programmers At Work, and an ISBN of 1-55615-211-6. It's a series of interviews with "19 Programmers Who Shaped the Computer Industry"; a lot of the interviews talk about approaches to programming for at least a few questions and also tackle the "is computer programming an art or a science" question. Over all, I've been very happy that I grabbed it.

    So I guess there are exceptions to every rule.

  142. I once heard of.... by ffatTony · · Score: 2

    this publisher who puts a different animal on the cover of each book. The name escapes me at the moment, but I'd try there genius.

  143. Re:Based on what my local library has... by DMoylan · · Score: 1

    Are you suggesting that my How to program in BASIC on a Dragon 32 manual is useless??

  144. OS/2, minix, S/390 assembly by camusflage · · Score: 1

    There are so many choices! How can you be asked to choose? Can't forget about networking. My Arcnet for Dummies book has been utterly invaluable to me lately. And databases too.. Alpha Four, Advanced Revelation. Of course, applications as well. Symphony is my favorite spreadsheet, and nothing tops Ami Pro for word processing.

    --
    The truth about Scientology, Xenu, and you: Operation Clambake
  145. C++, Graphics, Game Programming by UnknownSoldier · · Score: 3
    C++
    • Design & Evolution of C++, Bjarne Stroustrup
    • Annotated Reference Manual, Bjarne Stroustrup
    • Effective C++: 50 Specific Ways to Improve Your Programs and Design, Scott Meyers
    • More Effective C++: 35 New Ways to Improve Your Programs and Designs, Scott Meyers
    • Thinking in C++: Introduction to Standard C++ Volume One, Bruce Eckel


    Advanced C++
    • Advanced C++ Programming Paradigms and Idioms, James Coplien
    • Design Patterns, Gamma Helm Johnson Vlissides
    • Stl Tutorial & Reference Guide : C++ Programming With the Standard Template Library, David R. Musser
    • Generic Programming and the STL: Using and Extending the C++ Standard Template Library, Matthew H. Austern
    • Effective STL: 50 Specific Ways to Improve Your Use of the Standard Template Library, Scott Meyers


    Graphics
    • Computer Graphics : Principles and Practice, Second Edition in C, Foley, van Dam, Feiner, F. Hughes
    • Graphic Gems I II III IV V
    • OpenGL Programming Guide
    • 3D Game Engine Design : A Practical Approach to Real-Time Computer Graphics, David H. Eberly
    • Jim Blinn's Corner : A Trip Down the Graphics Pipeline, Jim Blinn
    • Jim Blinn's Corner : Dirty Pixels, Jim Blinn


    Game Programming
    • Game Programming Gems 1 & 2
    • Game Architecture and Design, Andrew Rollings
    • 3D Games, Volume 1 : Real-time Rendering and Software Technology, Alan Watt & Fabio Policarpo
    • Game Developer (monthly)


    Software Engineering: (these are the BEST ones, not the long boring ones that put you to sleep)
    • Writing Solid Code,Steve Maguire
    • Rapid Develepment,Steve McConnell
    • Code Complete,Steve McConnell
    • Mythical Man-Month Anniversary Edition,Fred Brooks


    Math:
    • The CRC Concise Encyclopedia of Mathematics, Eric W. Weisstein
    • Godel, Escher, Bach : An Eternal Golden Braid, Douglas R. Hofstadter
    • The Feynman Lectures on Physics : Commemorative Issue, Richard Phillips Feynman


    Enjoy !

    ~~~~~
    "The issue today is the same as it has been throughout all history, whether man shall be allowed to govern himself or be ruled by a small elite." - Thomas Jefferson
  146. My list by Lew+Pitcher · · Score: 1
    • "The Art of Computer Programming" by Donald Knuth
      • Vol. 1 - Fundemental Algorithms
      • Vol. 2 - Seminumerical Algorithms
      • Vol. 3 - Sorting and Searching

    • "Software Tools" by Kernighan & Plauger
    • "Compilers - Principles, Techniques and Tools" by Aho, Sethi & Ullman
    • "The C Programming Language" by Kernighan & Ritchie
    • "TCP/IP Illustrated" by W Richard Stevens (& Gary Wright)
      • Vol 1. - The Protocols
      • Vol 2. - The Implementation
      • Vol 3. - TCP For Transactions, HTTP, NNTP, and the Unix Domain Protocols

    • "The Unix Programming Environment" by Kernighan & Pike
    • "Advanced Programming in the Unix Environment" by W. Richard Stevens
    • "Unix Network Programming" by W. Richard Stevens
      • Vol 1. - Networking APIs: Sockets and XTI
      • Vol 2. - Interprocess Communications

    • "Operating Systems - Design and Implementation" by Woodhull & Tanenbaum

    --

    "values of beta will give rise to dom!"

  147. The big white book by Bullschmidt · · Score: 1

    Its called "Introduction to Algorithms," by Cormen, Leiserson and Rivest. It is the definitive algorhythms text book. I know a lot of the people I've worked with keep it on their desks. I do the same. Great book.

    --
    "Of all days, the day on which one has not laughed is the most surely the one wasted." -Sebastian Roch Nicol
  148. micheal abrash by ankit · · Score: 1

    i fully agree. you cant do graphics withoout the "black book". it is simply amazing.
    i would also reccomend "opnegl" redbook by, and "Computer Graphics : Principles and Practices by foley, vandam"

    --
    Don't Panic
  149. a bunch of Debian CDs by taniwha · · Score: 1
    "steal this book" (or rather "copy this software - please put it back when you are done")

    OK - I'm joking - but actually it's a great idea - seed your local public library with Linux install kits

    1. Re:a bunch of Debian CDs by the_rev_matt · · Score: 1
      I already do that ;)

      Whenever I order CDs from Cheap Bytes I order extra to give to the lib. And all the Penguin Computing systems we ordered for work came with the Red Hat 6.2 CD set, all of which are now happily living at the local library. I also donate computer books when I get a newer edition (or buy one I already have - don't laugh, I've done it more times than I care to count).

      --
      this is getting old and so are you

      blog

  150. Re:Every bookshelf needs... by jmccay · · Score: 1

    Definately Knuth. He wrote some hardcore books on rogramming that are still sold in stores even though they were written years ago.

    I would also suggest:

    - "An Introduction to Database Systems" by Date, C. J.; Addison Wesley (ISBN: 0-201-38590-2)

    - "C/C++ Programmer's Reference" by Schildt, Herbert; Osborne (ISBN: 0-07-882367-6)

    - "Algorithms in C 3rd Edition" by Sedgewick, Robert (ISBN: 0-201-31452-5)

    What ever books you list, be sure to include the ISBNs. Most good book stores can work with these easily.

    --
    At the next eco-hypocrisy-meeting, count the private jets used to get to the meeting. Should be interesting to see that
  151. for TCP/IP... by lactose99 · · Score: 2

    Get _TCP/IP Illustrated_, volumes I, II, and III, all by W. Richard Stevens. These are, hands down, the most informative books regarding the TCP/IP protocol. I have yet to find any other book that contains even a tenth the information that any one of these have, the closest runner-up being O'Reilly's TCP/IP handbook for UNIX admins. Volume I has become required reading at my job (Network Engineer for a large ISP), and I'm sure anyone who works with TCP/IP networks for a living or hobby would find these books invaluable.

    --
    Fully licensed blockchain psychiatrist
  152. three to think of by /Idiot\ · · Score: 1
    Well, the caveat is that these are not "Applied Crypt..." quality but they have a reasonable shelf life and are of broad application:

    DNS and BIND from ORilley [I know everyone is saying OR's don't belong in the library but if that _has_ to be a rule then this one _has_ to be an exception, not letting BIND's implementation cloud the desctiption of DNS.

    Database Systems by Rob And Coronel. Not a "beginners" book or an "intermediate" book but a great book to take a beginner to intermediate.

    Internetworking Technology Handbook from Cisco press. Minimum Cisco-ness about it. Covers all that is "now" in networking and all that is important from the "then" in networking. I think 3rd edition is the current. Also, since when is a 900pg A4 hardcover a 'handbook' That's all I can think of for now.

    --
    /dev/Idiot/
  153. My Top Three Books by Smeg}{ead · · Score: 2

    The three books I have found the most helpful, and recommended to the most people over the last many years would be:

    1. Code Complete by Steve McConnell -- A briliant text on all aspects of software creation, language neutral

    2. Software Project Survival Guide, also by Steve McConnell -- All you wanted to know about the best processes for executing a software project and getting it shipped with your career in one piece

    3. Advanced Programming in the Unix Environment by W. Richard Stevens -- no intro necessary.

  154. Re:Design Patterns - the FIRST edition by alispguru · · Score: 2

    The first edtion acknowledged that there was more than one OO language/style in the universe, with code examples in Smalltalk, CLOS, etc. The later editions went to pure C++, and lost a lot in the translation.

    --

    To a Lisp hacker, XML is S-expressions in drag.
  155. Patterns of Software by Richard Gabriel by alispguru · · Score: 2

    This is part history of AI hacking culture, part history of the AI bubble and how Lucid soared and crashed, and part Gabriel's take on patterns (he thinks they're mostly being used as crib notes to teach beginners how to get around limitations in lowest-common-denominator OO langauges).

    For more info visit his web site, and particularly the part on Worse is Better

    --

    To a Lisp hacker, XML is S-expressions in drag.
  156. Book sets anyone? by Dr.+� · · Score: 1

    Wouldn't it be nice if someone looked at these lists and created two or three book set compilations as they do over at Thinkgeek's? "C programming", "The Art of Developing", or perhaps "Design and Architecture" could be set titles. It seems to me like a lot of programmers could benefit from this - at least I could.

    Dr. Ø

    --
    Eih bennek, eih blavek
  157. Re:The C++ Programming Language by Unknown+Lamer · · Score: 2
    How about these books too (shamelessly copied and pasted from Bjarne Stroupstrup's website):
    • Bjarne Stroustrup: The Design and Evolution of C++. Addison Wesley, Reading, MA. 1994. ISBN 0-201-54330-3. 472 pages. Softcover.
    • Margaret A. Ellis and Bjarne Stroustrup: The Annotated C++ Reference Manual. Addison-Wesley, Reading, MA. 1990. ISBN 0-201-51459-1. 478 pages. Hardcover.


    -------------
    --

    HAL 7000, fewer features than the HAL 9000, but just as homicidal!
  158. The UNIX Programming Environment by Madwand · · Score: 1

    The UNIX Programming Environment by Kernighan & Pike is an excellent book, and as close to a manifesto of the UNIX Philosophy as exists anywhere. The community of Linux developers would do well to read it, carefully, and take it to heart.

  159. Re:Writing Solid Code by Libertius · · Score: 1

    Oh, the irony...

  160. My choices :) by TV-SET · · Score: 1
    Well, you could get the whole O'Reilly set for a start. Check out Thinkgeek.Com - they have plenty of good staff.

    --
    Leonid Mamtchenkov ...i don't need your civil war...
  161. Code Complete by willis · · Score: 1
    This is one of the best books on how to code well that I've ever seen. Things like Knuth, or SICP, or Patterns books may be good for the more advanced, but if some kid stumbles on code complete, he'll be set. (I don't think most kids would really use Knuth).

    For a technical/programming specific manual that is relatively timeless, it can't be beat!

    --

    there is no thing
    what else could you want?
    1. Re:Code Complete by poisoneleven · · Score: 2

      Code complete is definately a recommended book for EVERY programmers library. it's by the M$ Press, but goes over very good concepts and ideas. I recommend it to everyone I meet who programs. If you haven't read it, you should.

  162. My list by LordNimon · · Score: 2
    Advanced C++ Programming Styles and Idioms
    James O. Coplien

    It's a great book for novice C++ programmers. It explained a lot to me. Unlike other books of its kind, it's completely OS-independent.

    Code Complete : A Practical Handbook of Software Construction
    Steve C McConnell

    This is one of those "how to write code that can be maintained by anyone" books. A library can't have too many books like these.
    --
    Lord Nimon

    --
    And the men who hold high places must be the ones who start
    To mold a new reality... closer to the heart
  163. A Must Have!!! by BandoMcHando · · Score: 1

    "The Road Ahead"

    I know you've all got copies that you keep hidden in the closet...

  164. Scott Meyers books by astrophysics · · Score: 2

    Scott Meyers has several good C++ books...
    The first is organized as 50 tips (really concepts) to improve your code.
    The second is 35 more.
    The latest is on STL. I haven't read that one, but based on his previous ones and how long he took to write it, I trust it's also a good read.

  165. Numerical Recipies in XXX by astrophysics · · Score: 2

    Numerical Recipies by William Press, Saul Teukolsky, William Vetterling and Brain Flannery.
    There are C, Fortran, Pascal, and Basic versions. Obviously you don't need all. Any one will do. Although the Fortran version has the advantage that it would be contiguous with NR in F90 which is not like any of the others in that it focuses on parallel programming. I'd have to say that NR in F90 isn't nearly as essential as any one of the standard NR texts.

  166. Re:O'Reilly books by jerdenn · · Score: 4

    avoid everything from Microsoft Press or written by Microsoft employees

    You are mostly correct - one notable exception is Steve McConnell, author of two very notable books - "Code Complete" and "Rapid Development".
    -jerdenn

  167. Design Patterns by Greyfox · · Score: 1

    Pretty much everyone getting into OOP will want a copy of Design Patterns. Although the canonical examples are in C++, the concepts are very similar and similarly useful across pretty much every OO language.

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

  168. Get the extremes by sg3000 · · Score: 2

    The most important things to teach students about any subject is diversity. I can't believe how many college grads that I had to interview that thought they were good candidates because they knew all Microsoft stuff. I hired the one who had experience with at least three different environments, and could tell me the pros and cons of each. Give me someone who knows 10 years of A, and someone who knows 5 years of A and 5 years of B, and I'm more likely to hire the latter.

    So I would pick at least O'reilly's "Unix in a Nutshell" so you always have your reference.

    And then get "AppleDesign: The Works of the Apple Industrial Design Group" to remind you that computers should be more than boring boxes and uninspired designs.


    --
    Insert simplistic political, ideological, or personal proselytization here.
  169. Abelson-Sussman & numerical recipes by Ats · · Score: 1
    Two of my favorites:

    --

    Abelson and Sussman : Structure and interpretation of computer programs.

    Based on the LISP language. Insanely elegant. Used as an introductory programming textbook in MIT and many other places.

    --

    Press, Teukolsky, Vetterling, Flannery: Numerical recipes in C

    An excellent book on numerical computing.

  170. Effective C++ by Suicyco · · Score: 1

    Effective C++ is generic enough to last for as long as c++ should be around... Forgot who wrote it but its a great book, IMHO..

    1. Re:Effective C++ by PhrackCreak · · Score: 1

      Effective C++ by Scott Meyers is a nice tome to remind you of the basic dos and don'ts of c++. More Effective C++ is worth having but not nearly as useful. The two are also available as a box set with a searchable CD (maybe windows only for searching...)

      --
      - You don't know how to maintain a station wagon either!
  171. Add some classics by grl · · Score: 1
    Look for multiple (and recent) revisions.

    Fundamentals and Design

    • The Art of Computer Programming - D. Knuth (essential)
    • An Introduction to Database Systems - C.J. Date
    • Computer Graphics: Principles and Practices - Foley and van Dam
    • Object Lessons - T. Love
    • Bringing Design to Software - T. Winograd (editor)
    • The Visual Display of Quantitative Information - E. R. Tufte
    • Envisioning Information - E.R. Tufte
    • Visual Explanations - E.R. Tufte
    Engineering
    • A Discipline for Software Engineering - W.S. Humphrey
    • The Deadline - T. DeMarco ("A novel about project management"!)
    • Death March - E. Yourdon ("The Complete Software Developer's Guide to 'Mission Impossible' Projects")
    • Rapid Development - S. McConnell
    • Code Complete - S. McConnell
    Culture and business
    • The Social Life of Information - J.S. Brown, P. Duguid
    • The New New Thing - M. Lewis (on Jim Clark)
    • Startup - J. Kaplan (GO Corporation)
    • Microserfs - Douglas Coupland
    • Dealers of Lightning - M Hiltzik (Xerox PARC)
    • Insanely Great - S. Levy (Macintosh)
    • Bootstrapping - T. Bardini (on Doug Engelbart)
    • High Stakes, No Prisoners - C. H. Ferguson (Vermeer Technologies)
    • How the Web was Born - Gilles and Cailliau (the best history of the web - from CERN to W3C)

    For the dark side, see Don Knuth Finally Sells Out, Doctor Fun

  172. What about fiction? by MikeyNg · · Score: 1

    (Science) fiction is generally more accessible than technical manuals. Why not put some "fun" computer-related books in the library, as well? Cryptonomicon (sp?) comes to mind, of course. Maybe The Difference Engine, also? What I'm trying to point out here is that most technical manuals will not be fun reads and will probably be outdated fairly quickly. When an author of fiction pens a book, he knows it should have a good shelf life, and writes accordingly. Some concepts may be lost along the way, but it would be good to get the basics in there, as well as to help foster a burgeoning interest.

    --
    Where the wind blows, the tumbleweed goes.
  173. Some personal recommendations by gweihir · · Score: 1
    I am a computer scientist, and although I would claim a strong background in algorithmics, I never really consulted the "The Art of Computer Programing" books.
    One reson is that they are hard to understand. The other reason is that there are a lot better general introductions and if you have very specific needs there are often a lot better specific texts. (Don't start me about all the bad PRNG's Knuth caused, because people just took what he proposed and regarded it as the best possible solution. Not Knuth's fault, but still....)

    Some suggestions from my personal collection:

    Theory:
    • Kfoury, Moll, Arbib: A Programming Approach to Computability(Springer)
      In my opinion the best book about computability. Still understandable for people with limited theoretical background. I enjoyed working through it.
    • D. Gries: The Science of Programming(Springer)
      An introduction to formal semantics that assumes not more than a good knowledge of some imperative programming language. Also gives a good introduction to the formal logic needed. Another fun book IMO.
    • F.P. Brooks: The Mythical Man Month(Addison Wesley)
      The must have background text on software engineering. Great for quotes and an enjoyable read (or depressing, depends on your personality).
    • Hoffman, Leonard, Linder, Phelps, Rodger, Wall: Coding Theory(Dekker)
      If you want one introduction into coding theory that covers most of the subject, buy this. On the other hand it is fairly theoretic (and needs to be), so maybe do without coding theory.

    Algorithmics:
    • U. Manber: Introduction to Algorithms(Addison Wesley)
      A good book about algorithm construction. Has some value as a reference, but is more an introductory text. Good book.
    • Cormen, Leiserson, Rivest: Introduction to Algorithms(MIT Press)
      Not good as an introduction, but a good reference. Together with the book by Manber it covers almost everything to know about algorithms in general and will usually provide a good solution.

    Selected topics:
    • B. Meyer: Object-Oriented Software Construction, 2nd Ed.(Prentice Hall)
      The introduction about what OO consists of and how it should be used. Uses Eiffel as basis (and causes some major disappointments with C++, and Java when you try to do OO with these languages after reading this book), but is general enough to be worth reading. The style is good, explains everything. If you reserve the right to an own opinion, different from Meyer's, this book is perfect.
    • B. Schneier: Applied Cryptography, 2nd Ed.(Wiley)
      The best introduction and overview of Cryptology and security available. Covers almost everything. A little weak on theory, but for some of this theory a classical book on modern algebra is the minimum, so I wouldn't hold it against this book. Anyway, it is a very good introduction and can also be used as a reference. If you have one book about crypto, buy this one.

    Now this is not a complete list, just books I relly know. But this is CS, not programming. That means all these books need effort.
    For programming you cannot really get books that can stand a longer time, as languages go in and out of fashion.

    Hope this helps!
    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted and ignored otherwise.
  174. Re:Undergrad textbooks: Algorithms, H&P, Dragon, e by Ryu2 · · Score: 2

    I would get Ullman/Aho/Hopcroft's automata book instead. They just came out with a brand new, much more accessible and understandable, yet unchanged in depth, edition (about time! =) )

    --
    There's 10 types of people in this world, those who understand binary and those who don't.
  175. Any of the "Teach yourself..." books by chrystoph · · Score: 1
    But I would recommend not getting too attached to the material that is transient. Microsoft releases a new OS every two years.

    If you have a limited budget, and most libraries do, stick to OS independent topics, such as "Teach Yourself Networking in 24 Hours". These are good for beginners. My non-geek wife started the Networking book and actually understood some of my babblings for a week or two. Unfortunately for me, she stopped reading it.

    -------------------------

    --

    -------------------------
    As easy as herding cats!
  176. Concrete Mathematics by GrEp · · Score: 2

    Concrete Mathematics by Grahm, Knuth and Patashnik

    The book unvails the wonderfull world of Mathematics that goes into computer programming. It is a must have in any library, especially if you want to understand TAOCP.

    bash-2.04$

    --

    bash-2.04$
    bash-2.04$yes "Don't you hate dialup connections?"| write USERNAME
  177. Re:Based on what my local library has... by bobwoodard · · Score: 1
    Ever heard of a concept called donating?

    Are you going to donate the books that are useful to you or the ones that are no longer useful?

    The problem with donation is the possibility of a non-technical library administration seeing all those donated Win 3.1 books and slowdown purchase of additional Windows titles that might cover newer versions. After all, Windows is Windows, right?

    Hopefully, these titles would be weeded out by the staff, but that could be wishful thinking depending on the staff.

  178. Must have Donald Knuth series ... by NoRefill · · Score: 3

    "The Art of Programming Vol. 1-3" by Donald Knuth. The definitive guide to theoretical and practical Computer Science. Check it out.

  179. Astroturfing by nwetters · · Score: 1

    From his user page, it seems he's also given a gushing review of Your Step-by-step Guide to Health and Fitness by Nina Bal, Mandip Bal.

    I'M IN HEAVEN... December 27, 2000 I was nearly 275 pounds of pure unhealthy and unwanted FAT. I started this program about 3 weeks ago and have already lost 18 pounds. I am feeling good and am COMPLETELY confident in your easy to follow guide. I CAN NOT stress it enough!! Thanks you two, you've made it so easy for me to do! For those of you who are hesitant, DON'T BE. It's now or never!!

    Although the two books he's reviewed have different publishers, the ISBNs are suspiciously close, and so are likely to have been published by the same parent company.

    1. ISBN: 0968814964 - How to Make Money on the Internet
    2. ISBN: 0968814905 - Your Step-by-step Guide to Health and Fitness

    Astroturfing, I feel.

  180. Numerical Recipes by renard · · Score: 3
    For those who use computers as tools to comprehend the world... there is no alternative.

    Numerical Recipes in C: The Art of Scientific Computing, by William H. Press,Brian P. Flannery,Saul A. Teukolsky,William T. Vetterling.

    To paraphrase the Planet of the Apes star: Anyone who wants my copy can pry it out of my cold, dead hands.

    -Renard

    1. Re:Numerical Recipes by nels_tomlinson · · Score: 2

      There has been a LOT of well-informed criticism of the Numerical Recepies books. It seems to center around the idea that the recipes don't scale well, and are more useful as teaching tools than for serious scientific work. There is a wonderful page at one of the big government labs which explains in detail, along with some alternate sources of examples. If I can find the link, I'll post it as a reply to this. I like Numerical Analysis for Statisticians, by Lange. It's aimed right at my field, and it comes highly recommended by an eminent numerical analyst and theoretician.

      You might want to check out this link, which I stumbled across while trying to find that page about (against, really) Numerical Recipes. Cannonical Tomes, they call themselves. Looks good.

    2. Re:Numerical Recipes by WhyCause · · Score: 1
      I second this one (I'm just glad I read enough comments to not repeat the initial message). This is a book that is good in both general theory and in implementation.

      One other thing though, you may also want the FORTRAN version (I know, heretical dinosaur), as FORTRAN is still an undeniably useful and irreplacable language in some respects. The other nice thing about FORTRAN is that it is easier to understand than C when you don't know either language, and thus tends to be more language-agnostic (easier to port to your language of choice, without having to learn the deep black voodoo of the original language).

      You may also consider the Pascal version, as some high-school computer courses still use this as their teaching language (at least, I think they do). This is, of course, assuming that the assignment is for a public library, which I always assume has to cater to at least up to the high-school level of education.

    3. Re:Numerical Recipes by Joutsa · · Score: 1

      One should avoid the C version if possible. The ones who wrote it had very little idea about what C is about, they used simply as fortran-like structures as possible. As the most ridiculous example, all their arrays begin from index 1 and they have done their custom version of malloc() to accomplish this. You'll have to rewrite anything you copy from this book.

  181. Libraries shouldn't ignore majority interests by DougDew · · Score: 1

    Libraries shouldn't ignore majority interests. Therefore, libraries should include classic Windows titles such as Charles Petzold's "Programming Windows", Jeffrey Richter's "Programming Applications for Windows" and Don Box's "Essential COM".

  182. Richard Stevens by debaere · · Score: 1

    Richard Stevens books, the TCP/IP guru, has stood the test of time on the topic of TCP/IP.

    TCP/IP Illustrated Vol 1,2 & 3
    Advanced PRogramming In The Unix Environment
    Network Programming IN The Unix Environment

    DOS is dead, and no one cares...

    --

    DOS is dead, and no one cares...
    If there's a Bourne Shell, I'll see you there
  183. Little Schemer by jellybear · · Score: 1

    The Little Schemer, and the Seasoned Schemer

  184. Refactoring (Martin Fowler) by mgrant · · Score: 1

    A great book about changing the design of existing code.

  185. Don't forget Database theory by stu72 · · Score: 1

    I must add my voice to the choir urging you to stock titles that have stood the test of time. I'd skip anything written in the last 10 years, just to make the job easier. Then, once you've got the classics, you can wade into the heyday of the 90's and pick & choose.

    Another guide line would be to avoid any title that focuses on a specific commercial product.

    A couple of picks I haven't seen yet:

    The Mythical Man Month of course

    any good text on the Database Relational Theory
    (I have a 2001 one called by CJ Date called, "The Database Relational Model.)

  186. Re:Kernighan and Ritchies's C Programming Language by VAXman · · Score: 2

    Hmm, seems a little software centric to me.

    Patterson & Hennesey's Computer Architecture: A Quantitative Approach is absolutely indispendable.

    Intel's three volume X86 manual set is completely required for anybody doing development on X86 systems.

    The Alpha ARM is good reading. So is the VAX manual.

    Something like the DECsystem-10 System Description makes good midnight reading for a totally different perspective (my favorite current computer book), if not something remotely applicable to today's systems.

  187. Too technical! by crucini · · Score: 2

    Everyone is recommending books that we enjoy, not books that would help the general public. This is ridiculous. When I was a kid I made stuff out of fibreglas. The library had books on fibreglas fabrication aimed at the layman. And they helped. Now ask a bunch of mechanical engineers who design fibreglas structures and they'll probably recommend some book full of differential calculus. If the library had those highly technical books instead, I would never have learned the basics of fibreglas fabrication.
    To apply that to the current case, the public does not need or want university-level computer science books. They need books about how to accomplish tasks. How to build a PC. How to plug in a PC you bought. How to shop for an ISP and get your computer talking to an ISP. How to make a web page.
    One book I'd consider appropriate is The No B.S. Guide to Linux. It's a simple book about installing and using Linux for the first time.

  188. Re:Based on what my local library has... by crucini · · Score: 4
    I'm afraid you may have missed the point. The poster was pointing out that what looked like a good choice to librarians a few years ago looks a bit silly now. And I'll agree; most computer books in public libraries look pretty silly, especially after the first 10 years have gone by. By the same token, the books chosen today are likely to look pretty silly in a decade, although choosing the right ones could minimize that.
    For some reason I have this image of the 'library computer book' with a bunch of black-and-white photos in the middle:
    • Man with glasses and polyester short-sleeved shirt sitting at terminal on expensive computer desk. Caption:The smart terminal allows users to interact with the computer in real time. Courtesy Lear-Seigler corporation.
    • Woman in skirt and heels is crouching to change a tape on a filing-cabinet sized computer. Caption:Minicomputers are becoming increasingly powerful. The unit pictured here can perform hundreds of mathematical calculations per second. Photo courtesy Honeywell Corporation.
    Anyhow, I'm glad libraries keep old irrelevant junk. It gives us a way to measure the passage of time. The commercial world constantly erases and rewrites the past. This is a large part of what DMCA is about - the right of the wealthy to erase the past and rewrite it in their own image, versus the right of the commoner to retain information.
  189. My Choices by Martin+S. · · Score: 2

    To get real shelf life, focus on methods and techniques rather than specific examples of technologies. These are my choices, I own copies of all these and consult them regularly (some daily)

    The Art of Computer Programming Volumes 1-3
    By Donald E. Knuth
    http://www1.fatbrain.com/asp/bookinfo/bookinfo.a sp ?theisbn=0201485419&vm=

    Numerical Recipes in C: The Art of Scientific Computing
    By William H. Press,Brian P. Flannery,Saul A. Teukolsky,William T. Vetterling
    http://www1.fatbrain.com/asp/bookinfo/bookinfo.a sp ?theisbn=0521431085&vm=

    The Unified Modeling Language Reference Manual (UML)
    By James Rumbaugh,Grady Booch,Ivar Jacobson
    http://www1.fatbrain.com/asp/bookinfo/bookinfo.a sp ?theisbn=020130998X&vm=c

    Applied Cryptography : Protocols, Algorithms, and Source Code in C, Second Edition
    By Bruce Schneier
    http://www1.fatbrain.com/asp/bookinfo/bookinfo.a sp ?theisbn=0471117099&vm=c

    Design Patterns: Elements of Reusable Object Oriented Software
    By Erich Gamma,John Vlissides,Ralph Johnson,Richard Helm,Foreword by Grady Booch
    http://www1.fatbrain.com/asp/bookinfo/bookinfo.a sp ?theisbn=0201633612&vm=c

    Code Complete: A Practical Handbook of Software Construction
    By Steve McConnell Also 2 non-technical, but IMHO essential reading.

    The Innovator's Dilemma: When New Technologies Cause Great Firms to Fail
    By Clayton M. Christensen

    Unleashing the Killer App: Digital Strategies for Market Dominance
    By Larry Downes,Chunka Mui

  190. TCP/IP Illustrated by FooGoo · · Score: 1

    Go figure

    --
    People who bite the hand that feeds them usually lick the boot that kicks them
  191. Applied Cryptography - Schnier by radish · · Score: 1


    I've probably gone and spelt the guy's name wrong but this is one fantastic book, both an interesting read and a pure text book.

    --

    ---- Den ene knappen er powerknapp, den andre er Bender voice knapp "Bite My Shiny Metal Ass"

  192. Re:You'll want to buy histories rather than manual by glanois · · Score: 1
    rather than saying 'Gee. I have this problem with the syntax of this Perl function. Let me go to the library and check out the camel book'

    perldoc -f function

  193. Electronic Life/Michael Crichton by Joe+'Nova' · · Score: 1

    I recomend it because it gets down to futuristic possiblities. He also gives examples of bad teaching practices, such as courseware/jargonitis. It reads at newspaper level, with insights. Too bad its out of print... =^|

    --
    This mind intentionally left blank.
    The KKK a bunch of sheetheads? You decide!
  194. Re:Let me guess - you are not a CS major? by ChosenOne · · Score: 1

    Not to nitpick, but I went to a very reputable school for computer science, and we had to learn about all aspects of the computer, including hardware. Now, we didn't dwell on it as much as the computer engineers had to, but we did have to learn information that later on was useful in optimizing program for various chip structures.

    Having knowledge on how a computer works down to the AND- OR- and NOT- gates can be helpful. However, I will agree with you that trying to build a library out of current technical specifications is going to be pointless to most people.

  195. Fundamental Library by zpengo · · Score: 1

    K&R, and anything O'Reilly

    --


    Got Rhinos?
  196. CanonicalTomes.org by LazloHollyfeld · · Score: 1

    I think this type of question is the whole reason the website CanonicalTomes.org exists...

  197. Re:Kernighan and Ritchies's C Programming Language by BluesMoon · · Score: 1

    I'd add a few of my favourites, that are generally language independent:

    The Elements of Programming Style - Kernighan & Plaugher
    The Practice of Programming - Kernighan & Pike
    Programming Pearls and More Programming Pearls - Jon Bentley
    The Cuckoo's Egg - Clifford Stoll

    While the first three are specifically about programming, but in a language independent sort of way (examples in C, and awk), the fourth is interesting as a beginner's/lay man's point of view to computer security.

    These, along with Don Knuth and Fred Brooks, have been around for ages, and are still relevant. They just won't go obsolete.

    Finally, I'd add Mastering Regular Expressions by Jeff Friedl to the list, because let's face it, life without regexes is boring.

    Philip

    --
    Do not underestimate the value of print statements for debugging.
  198. The Macintosh Bible by andyring · · Score: 1

    by Peachpit Press. I'm surprised no one else has suggested this one. Yeah, yeah, go ahead and say it. I know Macs aren't the most widely-used computers out there, but they do have a very strong and dedicated following. In fact, much of what I learned about Macs came fro early editions of this book found in my local library.

  199. "In the Beginning ... Was the Command Line" by m_c_rose · · Score: 1

    I've found one of the greatest computer books for non-computer people to be "In the Beginning ... Was the Command Line" which was posted here about a year ago and is also available in paperback, by Neal Stephenson author of Cryptonomicon and other classics. It can still be found at http://www.cryptonomicon.com/beginning.html if you haven't read it you should.

  200. New classics and an old one by catseye_95051 · · Score: 3

    New (relatively) References:
    The Java Prgramming Language, 2nd ED.
    Effective Java
    Java Platform Prformance: Strategies and Tactics

    New Tutorial:
    The Java Tutorial.

    Older reference:
    Effective C++.

  201. Re:Kernighan and Ritchies's C Programming Language by Tom7 · · Score: 1

    Please, god no.. the last thing we need is more C programs.

  202. Good god, since when does Computers = Systems?? by Tom7 · · Score: 2

    I think you need a bit more breadth there, dude. Almost every book you listed is in the "systems" category, only one of the many areas of computer science (albeit a popular one among slashdot kids). How about:

    Theory? (and the million areas of theory?)
    Software engineering?
    Modern Programming Languages?
    Graphics?
    User interfaces?
    AI?
    Computational *?

  203. OS design by yalla · · Score: 1

    I suggest "Design of the UNIX Operating System", by Maurice Bach (ISBN 0132017997). It should stand right next to Tannenbaum in the shelf.

    Alex.
    :wq

    --
    You look like a million dollars. All green and wrinkled.
  204. OS Design by yalla · · Score: 1

    I suggest "Design of the UNIX Operating System" by Maurice Bach (ISBN 0132017997). It should stand right next to "Operating Systems: Design And Implementation" by Andrew Tannenbaum (ISBN: 0136386776).

    Alex.

    :wq

    --
    You look like a million dollars. All green and wrinkled.
  205. Knuth by PaxTech · · Score: 2
    Knuth's The Art of Computer Programming.

    'Nuff said.
    --
    PaxTech

    --
    All movements for social change begin as missions, evolve into businesses, and end up as rackets.
  206. Networks by Tanenbaum by Raindeer · · Score: 2

    As in the subject. One of the books I always have handy, not because it goes into the most depth, but it tells me the basics quick, when I need them.

  207. Problem - Theft by BWS · · Score: 2

    a major problem is theft. I know we had it with our library here at the city. The library once had some decent programming books but those got stolen fairly fast. They replaced them again and within 6 months they were gone.

    --
    -- Note: These Comments are Generated by ME! Not You! ME!
  208. Pragmatic Programmer by MrBlack · · Score: 2
    My votes go to
    • The Pragmatic Programmer
    • The Practice of Programming
    • The C Programming Language
    • Code Complete
    • Rapid Development
    • VBScript Unleased in 24 hours for Dummies, Deluxe Edition
    Just Kidding about that last one! As you can probably tell from my list I'm a programmer (so programming books are the type of books I can reccomend) No doubt hardware/networking people will have some awesome books in this area to reccomend. Ditto books on SQL and relational database design.
  209. Re:*BSD is dying by MrBlack · · Score: 2

    I'm sure I've read this post (or very similar) before (especially the estimation of the number of *BSD users). I hope you're not re-cycling posts are you (althought why you would re-cycle such an obvious troll is beyond me)? If *BSD is dead what do you call this?

  210. Not Just Programming by loki2eng · · Score: 1

    There are some long-lived networking books. "Interconnections" by Radia Perlman, and "TCP/IP Illustrated" come immediately to mind. In fact most of Addison Wesley's line is long-lived stuff. Add "In the beginning there was the Command Line" by Stephenson for a less technical read. Also, most libraries I've been in have some of the 'for Dummies' line.

  211. Levy, Nielsen and Weinman by finnatic · · Score: 1
    off the top of my head

    o Hackers by Steven Levy.
    o Designing Web Usability by Jakob Nielsen.
    o Designing Web Graphics.3 by Lynda Weinman

    Hackers I managed to buy as a student by arguing it was for research (egads, is that social engineering?). Levy's other books (one on Apple, another on Artificial Life) aren't too bad either. The other two I'd readily recommend both to people getting into or already engaged in web design.

  212. Re:Easy one! by Lussarn · · Score: 1
    Seriously, IMHO Abrash is highly overrated. Nothing he wrote before 1997 really applies any more.

    Abrash teaches you how to think when you are programming, to not make dumb mistakes, to think first and code later. There are not many other books on the subject, at least not with the humor Abrash has.

    Of course the code may be outdated but that doesn't matter. It's still worth 1000 pages of black book reading. I say his littarature (Have only read black book) is a must for a library.

  213. Another set of suggestions: by nels_tomlinson · · Score: 2
    I didn't see anyone suggesting Structure and Interpretation of Computer Programs. Another good book is A Gentle Introduction to Lisp, by Touretzsky. Another book which I think is essential for computer science (as opposed to banging out code by guess-and-by-gosh) is Knuth's Concrete Math (find it at Amazon, I don't think it's on the web). This is for discrete math what a REALLY good calculus text would be for infinitesimals. A final suggestion is the Handbook of applied Cryptography.

    Except for Concrete Math, all of these are available on the web free of charge, and all of them are of lasting value, and well worth the cost.

  214. Learning Perl by mshomphe · · Score: 1

    I'll probably get flamed for this, but I thought Learning Perl was the best intro to programming I've ever read. It gets your hands dirty immediately, programming from the very first chapter, and it's very accessible, especially for a non-techie like me.

    --
    She sat at the window watching the evening invade the avenue.
  215. Re:Only need one... by irksome · · Score: 1

    I hated the class that forced me to use that book, but the book itself is great.

  216. Plauger's Programming on Purpose books by Fencepost · · Score: 2
    They're out of print now, but they cover a good range of subjects that aren't covered in most computer books.

    There are three books, covering almost all of the columns he wrote for Computer Language magazine and grouped into three categories:

    • Programming on Purpose: Essays on Software Design (note: Amazon lists this as "Programming Design")
    • Programming on Purpose II: Essays on Software People
    • Programming on Purpose III: Essays on Software Technology

    Jon Bentley's Programming Pearls books would also be good for a library to have.

    Of the Plauger books, I think the one on People is probably the most important - Design and Technology are covered pretty well in a wide range of books, but much of People is about roles, personalities and the like, not something that's as well covered.

    -- fencepost

    --
    fencepost
    just a little off
  217. Don't forget electronics! by smoyer · · Score: 1

    Obviously, computers are electronic devices. My favorite electronics reference book, which covers all facets of the craft in laymen's terms, is Horowitz and Hills "The Art of Electronics". This text was originally conceived to teach non-electrical engineering (acoustical and mechanical) the skills that they would need to implement their laboratory instrumentation. It really covers everything. I've been doing electrical engineering (mostly embedded systems) for almost twenty years and still find myself referring back to this book.

  218. Re:IDG and O'Reilly by Vanders · · Score: 1

    I would second that. C for Dummies Vol I & II are good learners books. Combine them with K&R and you have a neat little learning & reference library.

    The only complaint I would have with C for Dummies is that it is a little too Borland-centric, although I had no problems using 99.9% of the example code with GCC.

  219. Computer Networks -- Tanenbaum by Dr_Cheeks · · Score: 3
    Everyone seems to be focusing on K&R (expensive, very thin for a computing book, yet absolutely essential).

    But I'd put Computer Networking by Andrew Tanenbaum ahead of K&R. It's well written - not too much like a textbook, humourous in places, with good thought provoking examples (e.g. at what point does a station wagon full of tapes speeding down the highway become a higher bandwith carrier than a T1 cable?). And my copy is a few years old and still relevant (which, as we all know, is a very rare thing).

    Good for beginners, good for experts. Buy this book.

    --

  220. What about Automata Theory? by jo44 · · Score: 1

    I haven't seen any mention of this branch yet.

    At my school we used "Introduction to Automata Theory, Languages and Computation" by Hopcroft and Ullman. Any other suggestions along these lines?

  221. this is going to look like blatant karma whoring.. by RestiffBard · · Score: 1

    but I think that if you intend to keep things current you should have the many great books that others have mentioned as well as net connected computers that would guide people to sites llike slashdot or perl monks and the like. I know that I've learned a great deal about computers and related information from reading some of the articles and posts right here on slashdot. this article and subsequent posts is a great example. a great many of the books mentioned here are now going to end up in my personal library if they aren't there already.

    --
    - /* dead coders leave no comments */
  222. Writing Solid Code by Mr.+Sketch · · Score: 2

    Writing Solid Code: Microsoft's Techniques for Developing Bug-Free C Programs
    Steve Maguire
    ISBN: 1556155514
    Publisher: Microsoft Press

    Available on bn.com


    --BEGIN SIG BLOCK--
    I'd rather be trolling for goatse.cx.

  223. The Practice of Programming by Satai · · Score: 1

    The Practice of Programming is an excellent book. That one and K&R's C are both amazing at what they do. Knuth's might be a bit esoteric; and jeez, I'd rather own mine than check it out of the library.

  224. Re:IDG and O'Reilly by The+Flymaster · · Score: 1

    Unix for Dummies may be subpar, but DOS for Dummies is one of the all time best introductory computing books. Truly a publishing masterpiece.

  225. Technical Writing by AlexisKai · · Score: 1

    It's been suggested to me that a timeless representative for the subfield of technical writing would be "Clear Technical Writing" by John Brogan.

    Alexis

  226. Hagakure by Aya · · Score: 1

    (the book of the samurai) by Yamamoto Tsunetomo. It might not SEEM geek related, but without it, I wouldn't have been able to put up with my users as long as I have.

  227. Here's just one by gswallow · · Score: 1

    TCP/IP illustrated, Volume 1, by Rich Stevens.

    --
    Diplomacy is the art of saying "nice doggy" until you can find a rock.
  228. Code Complete by omibus · · Score: 2
    Code Complete by Steve McConnel (sp?)

    This is a must have for just about any computer programming library

    --
    Bad User. No biscuit!
  229. Applied Cryptography by byoon · · Score: 2

    I used to go down to our Public Library and check out Applied Cryptography every couple of months or so just to see how much more of it I could get. It recently turned up missing. Funny, the library staff claims it was stolen. I'll bet the FBI/NSA/SS stopped in and removed it.

    1. Re:Applied Cryptography by AdamInParadise · · Score: 1

      Sure, but remember the preface of "Secrets and Lies", his second book:

      "The world is full of insecure system because the people who implemented them red Applied Cryptography."

      --
      Nobox: Only simple products.
    2. Re:Applied Cryptography by jeffy124 · · Score: 1
      Bruce Schneier (sp?)

      That's correct.

      --
      The One Rule Of Chess You'll Ever Need: Don't play someone who carries a kit in their bookbag.
    3. Re:Applied Cryptography by Floofnargle · · Score: 1

      I don't even do any significant work with crytopgraphy, but I'd recommend Schneier's book just 'cuz it's a fun read.

  230. ANSI Common Lisp by mr_gerbik · · Score: 4

    "ANSI Common Lisp"
    Paul Graham
    ISBN: 0-13-370875-6

    Not only is just up to date when it comes to the ANSI standard for common Lisp, but it tackles many issues of learning functional programming. Good examples and lessons in recursion, macro writing and much more.

  231. the Practice of Programming by mz001b · · Score: 1
    I have been reading the 'Practice of Programming' lately, after being a coder day in and day out for ~ 9 years (and as a hobby for much longer). This is a really clear book. It may be a bit old, but it presents topics in a good order.

    K&R, 'The C Programming Language' also gets my vote. This is the best C reference out there.

  232. Re:O'Reilly books by mz001b · · Score: 2
    Just buy all the books of the O'Reilly collection. With the exception of one or two black sheeps, they are all very good.

    But O'Reilly lacks on the theory side. I would recommend going to your local university bookstore and have a look around. (Here's a tip: if the bookcover is flashy, the book is already outdated. And here's another: avoid everything from Microsoft Press or written by Microsoft employees. They suck more than you can imagine.)

    I think that this is really an over generalization. I have heard nothing but praise about a book called 'Code Complete' by Steve C McConnell, which is published by Microsoft. While I don't agree with Microsoft's business practices and use Windows as little as possible, I think it is important to keep an open mind.

  233. Small Minds, Small Worlds by susano_otter · · Score: 1

    Yes, libraries do serve some useful purpose today, but for how much longer will that be true?

    I propose that libraries are obsolete. Soon, they will serve the same function as museums. They will serve as repositories for such physical specimens as have historic or scientific value by virtue of their physicality.

    When all the world is online, when all the content can be had in digital form, what then would you have in a library?

    --

    Any sufficiently well-organized community is indistinguishable from Government.

  234. Re:Kernighan and Ritchies's C Programming Language by ixache · · Score: 1
    The Wizard Book: Design and Implementation of Computer Programs (This teaches Scheme as well, but the programming basics are the most important part)
    Wouldn't it rather be Structure and Interpretation of Computer Programs?
    Patterns in Programming, (I don't have my copy handy, and I can never remember the real title, I just know that there are four authors: The Gang of four)
    Design Patterns Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides (The Gang of Four). I'm not sure this "Gang of Four" nickname would make the Chinese laugh.

    Xavier

    --
    Do I make sense? Please report if not.
  235. my list by garinh · · Score: 1

    Here are some books that I have found useful over the long haul --

    Non-Technical:
    Peopleware; Tom Demarco, Timothy Lister
    The Pragmatic Programmer; Andrew Hunt

    Technical:

    Programming Windows 95; Charles Petzold
    Thinking in C++; Bruce Eckel
    Learning Perl; Randal L. Schwartz
    Learning Python; Mark Lutz
    Perl Cookbook; Tom Christiansen, Nathan Torkington; Larry Wall
    Programming in OpenGL; Mason Woo

  236. Re:Design Patterns - the FIRST edition by RevAaron · · Score: 2

    I second that one! I interned at a Smalltalk shop and we had a copy of a that book. It was interesting to read, and it helped to see it in a couple real languages (Smalltalk, Common Lisp) and I do agree, alot is lost just seeing it all in C++. It just wasn't written with C++ in mind.

    --

    Working toward a usable PDA environment in the spirit of Newton OS: Dynapad
  237. Bruce Eckel by Doctor+Faustus · · Score: 1

    For programming, I'd say Bruce Eckel books. I learned OOP from Thinking in C++, and I was using Thinking in Java more than the real textbook for the Java class I just finished.

  238. Only need one... by Gorobei · · Score: 4

    The Structure And Interpretation of Computer Programs

  239. Fundamentals... by livetoad · · Score: 3

    TAOCP (Knuth) and SICP (Abelson, Sussman). Both are a must. They bear fruit even on several rereads. Fun stuff!

  240. Re:THE book by jgodfrey · · Score: 1

    I agree. The "Dragon Book" is a classic book in use for decades past and for those to come. Another great book is "Modern Operating Systems"; can't recall the author off-hand but it had a bright-blue cover! :)

  241. Philip and Alex's Guide to Web Publishing by xcaster · · Score: 1

    "Philip and Alex's Guide to Web Publishing" by Philip Greenspun

  242. Re:Let me guess - you are not a CS major? by Jagasian · · Score: 2

    Computer Science deals with computability and algorithm design and complexity. Hardware is nothing more than a specific application of Computer Science. Before our time, they used mechanical gears, during this era, we use semiconductors to build NOT/NAND/NOR gates, and in the future, some other specific implementation will be used - one that might not make use of boolean gates.

    However, the foundational concepts created by Church, Turing, Kleene, Post, etc, will always be useful, will always be applicable, and will always be enlightening. Therefore, such material belongs in any "computer" library.

    Algorithm "cook books" and books on algorithmic complexity are also useful, though they can and will date faster than the foundational concepts found in S.C. Kleene's Introduction to Metamathematics (*hint* YOU MUST BUY THIS BOOK *hint*). Intro to Metamathematics covers constructive logics, countability, decidability (Church, Turing, Kleene, Post), completeness, and more. Not only that, the book is written by the legendary mathematician and computer scientist, S.C. Kleene. Read his book, and you will be learning from one of the few grandfathers/grandmasters of computer science.

    While its always good to be open-minded and well-rounded, a few books on popular industry technologies are also a good thing to have in a library, but in small amounts. My advice is to build a good foundation first. The article asked for books that would last, books that would be read many years from now. Kleene's Introduction to Metamathematics is currently 50 years old, and the book is still read today! Why? Because the truth is always good to know.

  243. Books that will be read 100 years from now... by Jagasian · · Score: 3
    Books about programming in C, C++, Java? Ha! Those things will be outdated in under 50 years. If you want to really understand computation, computer science, and programming, give these classics a try:
    1. Re:Books that will be read 100 years from now... by duffbeer703 · · Score: 2

      Books about the fundamental building blocks of software and computing, hah! They will be outdated in less than 100 years!

      Learn about the fundamentals of Electronics!

      The Art of Electronics, Horowitz

      Basic Electronics, Grob

      Mechanisms and Mechanical Devices Sourcebook, Sclater & Chironis

      Unless you can build a computer from the transistors up, you have no business in computer science.

      --
      Conformity is the jailer of freedom and enemy of growth. -JFK
  244. Kernighan and Ritchies's C Programming Language by SClitheroe · · Score: 5

    It's a slim, expensive tome, but absolutely indispensable. It's almost impossible to not come into contact with C, especially if you are an Open Source user. It's also practically a part of the geek heritage, both in the style in which it is written, and in the impact it has had on generations of coders. It is truly one of the underpinnings of a great part of Information Technology history.

    1. Re:Kernighan and Ritchies's C Programming Language by Captn+Pepe · · Score: 2
      Essentially this collection is the basics of how to build a computer system after the apocalypse.

      Okay, I can't resist --

      In that case, said post-apocalyptic peoples probably want to know how to build a computer, too. So throw in a good book on semiconductor design. What? They don't have fab plants? Okay, toss in some materials science and electrical engineering texts, and some general engineering texts if they want to know how to build the plant itself. They'll love you forever if you leave the parts to assemble a simple mill machine in a back room.

      Of course, if they're going to figure their way through semiconductors (or hell, even tube-based circuitry) they'll want a good E&M text, and probably something on quantum mechanics. Chances are, they won't have the math for this, so throw in math texts (calculus derived from number theory, basic real analysis, and abstract algebra seem like a good bare minimum set).

      'Course, maybe they can't even read those! (They were *actually* bombed into the stone age? Humans are extinct, and this library has been found by the descendents of the hyper-intelligent white lab mice?) So throw in a printed copy of some of those SETI transmissions, and you're all set. Oh, don't forget some good science fiction, so they'll know why they should go to the trouble of spending three generations chewing through this library. :-)


      --

      Quantum mechanics: the dreams that stuff is made of.
    2. Re:Kernighan and Ritchies's C Programming Language by Frizzle+Fry · · Score: 1
      I wanted to use mod points in this topic, but I feel obligated to give my opinion on this instead:
      C/C++/Java How To Program -- Deital & Deital
      In my experience, these books are hated, and for good reason. I was a teaching fellow for a class where we used the Java book, and there wasn't a single student who found it good or even usable. Most of them went out and bought another java book (java in a nutshell for many of them) and were much happier.

      While I'm here, I'll recommend (as others have) getting one of Sedgewick's algorithms books and Stevens' Unix Network Programming. Also, if no one has suggested it yet (I haven't seen it), I think that Graham's ANSI Common Lisp is another essential programming book.

      Finally, I highly recommend Eckel's Thinking in Java and Thinking in C++. Btw, for any who wants to check it out, Thinking in C++ is available free here.

      --

      --
      I'd rather be lucky than good.
    3. Re:Kernighan and Ritchies's C Programming Language by connorbd · · Score: 2

      I haven't read Cuckoo's Egg (Cliff Stoll's late reputation as a minor nutjob tends to sour me on the idea), but you're right especially about Knuth -- it was sort of silly of me to ignore that. (I'd throw in MMIXware as well; if we want to build a chip in the future it'd be nice to see a cool RISC design with no holy war baggage.)

      /Brian

    4. Re:Kernighan and Ritchies's C Programming Language by connorbd · · Score: 4

      You're being a bit too domain-specific.

      Goedel, Escher, Bach -- Hofstadter

      For the theory.

      Code -- Charles Petzold

      Yes, I know he's the Programming Windows guy, but this is one of the best explanations of how a computer works that I've ever seen.

      The Lions Book

      This is how to write an OS. Similarly, Coriolis' Linux and Apache source commentaries.

      Win32 API Reference

      4.4BSD manual set

      Macintosh Human Interface Guidelines

      Kernighan and Pike

      Some of the basics of what a working system looks like. There might be a couple of others I'd throw in.

      Include a bound copy of the most important RFCs.

      Language references

      K&R C
      Stroustrup (3d edition)
      Common Lisp: The Language
      Programming Perl
      Python references
      Visual Basic Language Definition

      The Dragon Book (for compiler writers)

      Essentially this collection is the basics of how to build a computer system after the apocalypse.

      /Brian

    5. Re:Kernighan and Ritchies's C Programming Language by bluebomber · · Score: 2
      For C++, Bjarne Stroustrup's "The C++ Programming Language" is the essential reference.

      A couple of tomes from Microsoft Press are also valuable when it comes to thinking about the actual practices of writing code: Code Complete (Steve McConnell) and Writing Solid Code (Steve Maguire).

      Others have mentioned the Dragon Book (Aho et al), The Mythical Man Month (Brooks) and anything by Knuth.

      I would also recommend Programming Pearls (Chan, Bentley), The Psychology of Computer Programming (Weinberg), and for a taste of theory A Discipline of Programming (Dijkstra).

      Most of the above books are "older" and all have help up with time.

    6. Re:Kernighan and Ritchies's C Programming Language by OverCode@work · · Score: 2

      I completely agree. I started learning C in 6th grade, and it was a very slow process because I had almost no reference material, other than the (lousy) books that came with Turbo C++ and a couple of C library references. The K&R book is exactly the kind of no-bullshit book I was looking for.

      O'Reilly's _Learning Python_ would also have been very popular at my grade school's library if it had been around then. Basically anything to help kids get a solid, self-guided start in programming, without the boring structure of a computer class. I frequently talk to high schoolers online who want to learn more advanced programming but don't have any materials available to do so. One guy I know ended up writing a simple 3D engine in mIRC script of all things because he didn't know where to start with C.

      -John

    7. Re:Kernighan and Ritchies's C Programming Language by Phred+T.+Magnificent · · Score: 1

      An excellent list. Two more come to mind:

      • Programming Perl (the Camel Book)
      • Cryptography and Data Security -- Denning

      Where is the wisdom we have lost in knowledge?
      --
      Where is the wisdom we have lost in knowledge?
      Where is the knowledge we have lost in information?
    8. Re:Kernighan and Ritchies's C Programming Language by trentfoley · · Score: 1

      My uncle gave me this book as a Christmas present in the mid '80s or so when I was trying to get out of academia and get a real job. This book is the foundation of my programming career. It's not just about C, but about programming hardware in a generic fashion. Few people remember that C was originally touted as a platform-neutral language. Borland and Microsoft destroyed that promise (flaimbait) I've kept the book so that my own children can learn from it (hopefully at an earlier age than me)

    9. Re:Kernighan and Ritchies's C Programming Language by jmccann · · Score: 1

      seconded (or thirded). This is in my not observably humble opinion the best book on a computer topic period. Perhaps not the best as a tutorial or for a new programmer, but absolutely indispensible for anyone who has to use C. And everyone ends up using C at some point.

    10. Re:Kernighan and Ritchies's C Programming Language by tb3 · · Score: 2

      Honestly, I started off with K & R, but I really didn't get C until I read "Advanced C: Tips and Techniques" by Paul and Gail Anderson. Pity it's out of print. Does anyone else remember it?

      --

      www.lucernesys.comHorizon: Calendar-based personal finance

    11. Re:Kernighan and Ritchies's C Programming Language by redcliffe · · Score: 1

      What about Programming Perl?

    12. Re:Kernighan and Ritchies's C Programming Language by eep0ck · · Score: 2

      i learned C from k&r when i was 12. whenever i see other programming books nowadays, it makes me sick. they're so bloated. k&r is the ideal to which all programming books should aspire. it's concise and efficient, just as a C program should be, and it's good enough at teaching the subject material that even a 12-year-old can learn from it.

  245. Stevens, of course. by Mark+Imbriaco · · Score: 1

    TCP/IP Illustrated is a must.

  246. How about some C++? by Paul+Maud'Dib · · Score: 1

    As C++ has recently been standardized and is very widely used in application development a library should probably have some reference work for it. Personally I prefer the definitive guide: Bjarne Strousoup's "The C++ Programming Language". The Special Edition is even better since it has extra appendices and is a hardback, for only $10 more.

    Since it's generally a very bad idea for a beginner to start with C++, you might want to get some beginner Java books instead. Java's a better beginner language because it doesn't have the C clutter of C++ and because you don't have to mess with pointers. Finally, Java's better than C++ for the beginner because it has a free, easy to use, compiler for all platforms (many beginners will /not/ be running Linux) and many beginners will appreciate the ability to use Java in their webpages (that's where many beginners get their start, in HTML).

    Of course this is not to deprecate C at all (though I would still recommend Java over C for the beginner) it's just that K&R has already been mentioned, and what else do you need?

    Then again, if you're worried about some fad like C or C++ getting outdated too quickly you might want to check this out.

    --
    Checkout taccom my worl war II simulator
  247. Re:You'll want to buy histories rather than manual by geekoid · · Score: 2

    depends on the manual. any basic html book is still valid. K&R is still valid learning the Bash shell is still valid, I hae a copy of 'The Waites Group UNIX Primer Plus" which was printed in 1990! It gets passed around the office and has helped me on seceral UNIX flavors.
    Many people will also use the library to gain the knowledge they need in order to enter the high tech industry. Then they can afford to Buy the more advanced books. This can be a great asset it many poor'er communities.
    get a few of these books, then see if you can get the library to fund some sort of basic tutorial group for different subject as the demand requires.
    They won't have to do 'Office' software in the course because most (if not all) state sponsered employment agency have class's in office products.

    --
    The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
  248. K&R by geekoid · · Score: 3

    get the K&R ansi C book.
    I would consider any book that deals with the core part of a language neccesary.
    Most O'Rielly books have a desent shelf life. I have a 5 year old html book which is still perfectly valid HTML, although not the latest.
    I wonder if you could get publishers to donate a copy of a book as it goes into a final press?
    Any book you can get I would imagine wold be good.

    --
    The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
  249. Godel Escher Bach by abde · · Score: 5

    while it may not be an "applied" book, G.E.B. is an important text because it has a high-level description of concepts that scientists and engineers should make part of their worldview. Don't discount the importance of philosophy :)

    --
    Don't blame me - I voted for Howard Dean. http://dean2004.blogspot.com
    1. Re:Godel Escher Bach by Globulatrix · · Score: 2

      But it isn't about anything!

  250. Timeless classics by PhrackCreak · · Score: 1

    Most of my library is a few good timeless books and a lot of specific knowledge which goes out of date within a few years. I suggest Focusing on the books which don't rely on a specific language or a specific knowledge domain. My personal library is mostly about engineering, so a few choice titles are probably absent.

    • Design Patterns - Gamma, Helm, Johnson, and Vlissides teaches its reader the language of software engineering.
    • The Practice of Programming - Kernighan and Pike teaches its reader how to think like a programmer.
    • The Cathedral and The Bazaar - Eric S. Raymond teaches its reader about free software.
    • Constructing the User Interface with Statecharts - Ian Horrocks teaches its reader how to engineer a functional UI.
    • Code Complete - Steve McConnell teaches its reader how to construct large software projects.
    • Software Project Survival Guide - Steve McConnell teaches its reader how to successfully build large software projects.

    And to really show that software is speech, include a CD of GNU software.

    --
    - You don't know how to maintain a station wagon either!
  251. TCP/IP Illustrated, Volume 1 by mikeee · · Score: 2

    Everything you need to know to write your own TCP stack. Surprisingly useful in day-to-dayu work - a must-read IMO.

  252. In general, books on concept by pix0 · · Score: 1

    Well, i don't have any particular title at the moment, but i think in general, books on concepts will be lasting. For example, books on systems architecture, systems analysis and design, DBMS, real-time systems, AI, human-computer interaction and maybe even books on mathematics will be good too. Titles should not be product specifics as they'll be outdated fast due to new releases every now and then. How about books on good pratices to a certain subject, for example, good pratices to be a programmer, consultant, 3D artist and so.

  253. This is NOT yet another Knuth post by Theodore+Logan · · Score: 1
    Everyone and their brother is suggesting all these smarty-pants books, very predictable. Those are all good, but how about the kid in second grade who knows nothing about programming and wants to take his first awkward steps into the field? Should he begin with Stroustup? Knuth? Please.

    Keep a number of books on BASIC. And at least one of Friedmans The little lisper, which is truly wonderful.

    Besides, even for hard-core programmers, Knuth is usually overkill. If you have tried to read it, you know what I'm talking about. It's more of a mathematics text than an actual guide to programming (I had volume III as course literature in a graduate combinatorics course). The wizard book (Structure and Interpretation of computer programs) is, in my opinion, both a lot easier to read and more stuffed with startling insights.

    But these are, of course, nothing but opinions, and I understand if they are nowhere near as interesting as other slashdot posters undeniable truths.

    --

    "If you think education is expensive, try ignorance" - Derek Bok

  254. Re:Artificial Intelligence - A Modern Approach by Rimbo · · Score: 1

    I second the motion.

  255. Undergrad textbooks: Algorithms, H&P, Dragon, etc by Rimbo · · Score: 5

    I would recommend using the books that have become old standards over the years for teaching undergraduates, the "Bibles" of their respective fields:

    Aho, Sethi & Ullman's "Compilers: Principles, Techniques and Tools"

    Cormen, Leiserson & Rivest's "Introduction to Algorithms"

    Patterson & Hennessy, and Hennessy & Patterson.

    Lewis & Papadimitriou, "Elements of the theory of computation."

    Gamma, Helm, Johnson & Vissides, "Design Patterns."

    And "The Mythical Man Month."

    All of the above are about the fundamentals, the theories, and should be part of anyone's library who is serious about computers from a Computer Science perspective, IMHO. Some of them have survived basically unchanged for many, many years, without losing their relevance.

  256. A few of my favorites by pdoubleya · · Score: 1

    Some of my favorites are: - The C Companion, by Allen Holub. Great discussion of the relationship between C, assembler and machine language. - The Practical SQL Handbook, by Brown, Darnovsky, others. Great introduction to SQL programming and relational databases. Written for Sybase originally but highly portable. - Designing Quality Databases Using IDEF1X Information Models, by T Bruce. Excellent discussion of what goes into designing a relational database, the conceptual analysis, classical problems, etc., from someone who's been there. A great introduction into the practice of analysis for people who need to analyze on a daily basis. - Repetetive Strain Injury, by Pascarelli. 'nuff said. -pdoubleya!

    --
    "I honestly would vote libertarian if their candidates weren't usually total cooks."--slashdot poster
  257. And after the lowlevel crap, it's time for ... by MarkoNo5 · · Score: 1

    Object Oriented Software Construction, 2nd edition by Bertrand Meyer.

    It's pure enlightenment.

    Marko No. 5

  258. Yet More Classics by Skald · · Score: 2
    It's tough to find books that are both accessible to a broad audience and likely to stand the test of time. Computer science has its seemingly timeless principles, but they (and the books which capture them) are mostly abstruse from the viewpoint of the common user.

    Here are some classics which I haven't seen posted yet:

    • The Unix Programming Environment by Brian W. Kernighan and Rob Pike
    • UNIX Network Programming (Vols. I & II) by W. Richard Stevens
    • Advanced Programming in the Unix Environment by W. Richard Stevens
    • The Elements of Programming Style by Brian W. Kernighan, P. J. Plauger
    • Design of the Unix Operating System by Marice J. Bach
    --

    "The best we can hope for concerning the people at large is that they be properly armed." - Alexander Hamilton

  259. Database/General Books by TheFuzzy · · Score: 1

    For database development, I'd suggest two books which will have value even after the current technology has rolled over: Database Design for Mere Mortals Practical Issues In Database Design Also, The Essence of Databases is pretty good and not expensive at all. For the tech/management audience: Software Project Survival Guide I'd suggest that you stay away from the first edition of O'Reilly's SQL in a Nutshell, which needs a lot of editorial cleaning up. Actually, the O'Reilly books in general suffer from very poor bindings which could make them expensive for libraries to keep. Skip anything version-specfic; by the time that you shelve it, it will be out of date. -Josh Berkus

  260. UNIX POWER TOOLS by liebi · · Score: 1

    O'Reilly, now in its second edition
    it seems like everybody i ever worked for owns it ... well maybe you shouldnt put it in a public library then.

    --
    I will continue to articulate what I believe and what I believe - I believe what I believe is right. G.W. Bush
  261. Knuth by robman · · Score: 5

    The Art of Computer Programming by Donald Knuth is a must have.

    --
    "Perl 6 will give you the big knob." -Larry Wall
  262. Kernighan and Plaugher by reallocate · · Score: 1

    Kernighan and Plaugher's "Software Tools", either the Ratfor or the Pascal version.Just a stupendous book, especially for understanding the basic concepts behind much of Unix. I managed to implement their code in Turbo Pascal for DOS, Still in print, I think.

    --
    -- Slashdot: When Public Access TV Says "No"
  263. Best Choices by poetic+justice · · Score: 1
    1. The C Programming Language by Kernighan and Ritchie
    2. Learning Perl
    3. Learning Python
    4. DNS and Bind
    5. TCP/IP Networking by Craig Hunt
    6. Programming Windows fifth Edition by Charles Petzold
    This will give you a foundation upon which a great library could be built. This will get you into Unix or Windows (not meaning to snub Mac Fans, I just don't know any good books). It will also give you 1 programming language to do anything well and 2 programming languages capable of doing anything well in fewer lines of code.
    1. Re:Best Choices by hearingaid · · Score: 1

      I'm a macgeek.

      unfortunately, that'd be my list too, well excepting #6. there are no good introductory books to mac programming, really, other than maybe Learn C On The Macintosh which is for total newbies.

      mac books jump straight from hello-world to let's build a device driver... not too much inbetween :)

      on the other hand, the llama book works fine for us too. :)

      --

      my old sig used to be funny, but then slashcode ate it and now it's not funny anymore

    2. Re:Best Choices by MWeiss+Accrisoft · · Score: 1

      Add a book on: MySQL HTML (PHP/Python/Perl) - the three P's C/C++ and the official GIMP! - I found it in my local library. :) another tip, read reviews of books - if most people say it sucks... their RIGHT. a good instance is Java for Dummies... the WORST BOOK ever written. Don't get a FOR DUMMIES BOOK, in reference to computers... it really is only for idiots.

  264. For Development Practices by sphix42 · · Score: 1

    Code Complete
    Rapid Development

    Both books are written by Steve McConnell and printed by Microsoft Press

  265. Must Have by Lomby · · Score: 2

    In random order:

    These are the base books for every programmer, since they contain most of the algorithms used in CS:
    The Algorithm Design Manual, Skiena
    Algorithms + Data Structures = Programs, N.WirthAlgorithms, Sedgewich

    Some good design pattern:
    Design Patterns

    Some network too:
    Computer Networks, Tannenbaum (fun to read)
    TCP/IP Network Administrator, O'Reilly

    Logical Design and Benchmarking:
    Computer Design: A quantitative Approach
    The C Programming Language, K&R

    Some good advice on design/coding/debugging/documenting and all the rest:
    The Practice of programming, Kernigham
    Unix:
    The secrets of Unix

    And don't forget some O'Reilly In A Nutsheel:
    Perl/Java/HTML are a must have!

  266. And don't forget... by cDarwin · · Score: 1
    Feynman Lectures on Computation, which deals with physical limitations of computing, quantum computing, reversible logic, etc. It is likely to keep its currency for a long time.

    --

    --

    --
    Socrates was asked where he was from. He replied not "Athens," but "The world."

  267. Perl by Mr_Person · · Score: 1

    Don't forget the Camel and Llama books! They're probably the two most important books I've read on programming and are very well written and easy to understand. You're pretty safe with almost anything O'Reilly.
    --

    1. Re:Perl by hearingaid · · Score: 1

      remember, this is a public library.

      I'd actually put the Gecko book ahead of the Camel book on my buy-list for library use. most people who want the Camel book will want to buy it. the Gecko and Llama books will come back.

      the problem with getting K&R and Knuth is going to be book theft. if you have good patron returns, go for them. but watch them. I might be tempted to slot them for reference.

      oh yeah. I'm an LIS student. can you tell? :)

      --

      my old sig used to be funny, but then slashcode ate it and now it's not funny anymore

  268. Easy one! by ErikTheRed · · Score: 2

    Pretty much anything by Donald Knuth or Michael Abrash.

    I don't think I'd miss having The Road Ahead, though...

    --

    Help save the critically endangered Blue Iguana
  269. Long shelf life by fm6 · · Score: 2
    Hmm. How do you define "long shelf life"? You could argue that any book on Fortran programming qualifies, since Fortran is the oldest high-level language, and is still widely used. But this is technological inertia -- Fortran is really antiquated. I'd hate to inflict it on anybody that doesn't specially need to use it.

    Just because a particular technology has an old and active following, don't assume it has relevence to you. The important question is: is the technology alive? Does it have an engaged user community that is forcing it to evolve, as opposed to a cult of true believers who can't bear to move on? Fortran doesn't qualify. Lisp/Scheme/Logo, almost as venerable as Fortran, does much better -- if you're interested in the applications being built with it (mainly AI, but there are a lot of good basic computer science textbooks written around it). On the other extreme, Python has only been around for a short while, but already has a loyal user base and some serious applications -- clearly not a passing fad.

    Which brings up a secondary point. Don't waste money on books that are "important" but have no relevence to your readers interests. Do they want to hack out simple games, or study computer science? Do they want to write apps from scratch, or learn how to script existing applications? They probably want to build web sites, but do they want web sites that look nice (study Javascript, DHTML, etc.) or maintain a lot of content (study document management systems)? Every programming language is as much a community as a technology. Which communities do you want to be a part of?

    __

  270. Hackers by magarity · · Score: 1

    "Hackers: The Story of the Computer Revolution" by Steven Levy (technology editor for Newsweek). Covers computers, computer companies, engineers, and programmers from early 1950s through ~1980. The best book (IMHO) on the history of modern computing.

    1. Re:Hackers by magarity · · Score: 1

      Oops, the latest revision is retitled "Hackers: Heros of the Computer Revolution" and is dated January 2001. Amazon has it here.

    2. Re:Hackers by hearingaid · · Score: 1

      yes! get it. get everything Levy's written. he's awesome.

      he'll turn your teenagers into programmers. they'll go from computers-are-neat to wow, cool, we must all hack. :)

      --

      my old sig used to be funny, but then slashcode ate it and now it's not funny anymore

  271. SICP by Abelson Sussman by rusti999 · · Score: 1

    Structure and Interpretation of Computer Programs is a must, an excellent and proven introductory book in computer science that contains a lot of gems even for the most experienced programmers. Online version is also available.

  272. Non-Reference Books by fwc · · Score: 2
    It appears everyone is going for "Reference" Books.

    Although I would highly recommend most of these, there are also a few non-reference books which I think people should consider:

    Fire in the Valley" Paul Freiberger, Michael Swaine - Basically the story of the early days of the personal computer. Talks about early days at Apple, Microsoft, etc. etc.

    The Soul of a New Machine Tracy Kidder - The story of a team of engineers at Data General who built a 32 bit minicomputer in one year.

    The Cuckoo's Egg Clifford Stoll - The story of how Stoll tracks a cracker through the maze of the phone system.

    Takedown - Tsutomu Shimomura - The story of the pursuit and capture of Mitnick. This is a good read. There's also one that I haven't read which tells Mitnick's story - perhaps someone else can point us toward that one.

    There is another I've read which talks about the Steve Jackson Games incident - and a lot of the other Secret Service activities in that era. Again, I can't provide a reference.

    --

  273. Suggestions by anubis__ · · Score: 2

    If they haven't already been suggested:

    "Design Patterns: Elements of Reusable Object-Oriented Software"
    by
    Erich Gamma
    Richard Helm
    Ralph Johnson
    John Vlissides
    (Addison-Wesley 1995 ISBN: 0-201-63361-2)

    -AND-
    "The Inmates Are Running the Asylum:
    Why high-tech products drive us crazy and how to restore the sanity"
    by
    Alan Cooper
    (SAMS, 1999)

    woohoo!

    --

    "After three days without programming, life becomes meaningless." - Tao of Programming
  274. End User Books by wasca · · Score: 2

    The average joe visiting a library needs application specific books rather than programming language manuals. For example... "Excel for Dummies", "Learn MS Word in 21 Days", "How to upgrade your PC!"... that kind of thing. Even though the name is insulting to some I've found the "for Dummies" books pretty useful in getting my dad up and running on his PC.

    --
    - wasca -
  275. Hackers by masterv · · Score: 1

    Hackers by Steven Levy.

  276. Some x86 Assembly Materials by Twistor · · Score: 1
    I of course second those books mentioned most often elsewhere (Knuth, Abrash, etc.) and would like to add some specific, introductory, assembly books:

    Sivarama P. Dandamundi "Introduction to Assembly Language Programming" (Springer)

    Kip R. Irvine "Assembly Language for Intel-Based Computers" (Prentice-Hall)

    Randall Hyde "The Art of Assembly Language" (available online)

    Joe Carthy "An Introduction to Assembly Language Programming and Computer Architecture" (Thompson)

    Vitaly Maljugin, et al. "Revolutionary Guide to Assembly Language" (WROX)

    Jeff Duntemann "Assembly Language Step-by-Step" (Wiley)

    ... and Tom Swan's "Turbo Assembler" book

    some other interesting works: Rick Booth "Inner Loops" (Addison) -- optimize it!

    Kirk Zurell "C Programming for Embedded Systems" (R & D)

    A. K. Dewdney "The New Turing Omnibus: 66 Excursions in Computer Science" (Freeman)

    Adele Goldberg & David Robson "SmallTalk-80: The Language" (Addison)

    Robert Sedgewick "Algorithms in C ++" (Addison)

    --
    I flee dead people.
  277. Knuth & Aho, Sethi, & Ullman by maloi · · Score: 2
    Donald E. Knuth's _Art Of Computer Programming, Vols. 1-3_

    Aho, Sethi, and Ullman's _Compilers: Principles, Techniques, and Tools_

  278. Programming books? by FLaMeBoY · · Score: 1

    Wow thats a lot of books on programming, and the theory of. How about 'Upgrading and Repairing PC's' by Scott Mueller? I know from the library at uni (and the main public) that Scott's book will probably be the most dog-eared, and well read book in its section. Most people don't go to the library computer section to get out books on programming, they wanna find out how to fix something, or build something. Most of the books suggested are great for your own library tho. I wish I had more money to buy a few of the ones I don't have.

  279. Re:IDG and O'Reilly by Kalrand · · Score: 1

    I admit that I love the "C for Dummies" series, by Dan Gookin. It came out a few years ago, but it presents beginner's programming conceps in a fairly straight forward manner.

    The author still updates that books with additional chapters on his website: http://www.c-for-dummies.com

    It taught me years ago, and it got atleast one kid I know through his CompSci 1 class who otherwise would never had made it.

    Kalrand
    -The Voice of Reason

  280. free books by bcrowell · · Score: 2
    Basalisk's question is a little contradictory, because it asks for books that a library would want on its "shelves," but also asks for advice on making a collection that won't become obsolete quickly (will have a "long shelf life"). In other words, the assumption is that the books will be in dead tree format, and that dead tree format will not become obsolete for a long time. Computer books are the one big category of books where free information is making inroads, and where digital books are rapidly replacing dead-tree books. (Notice how software these days always seems to come with PDF documentation rather than a printed, bound manual?)

    Some of the books that people have already mentioned in their posts are actually available as free information. Examples: Philip and Alex's Guide to Web Publishing (suggested by the post I'm replying to), and Thinking in Java by Bruce Eckel. For a listing of a bunch of free-information computer science books, look here.


    The Assayer - free-information book reviews

  281. Gotta have a good hardware text... by duffbeer703 · · Score: 2

    How could you forget Patterson and Hennessy's Computer Organization & Design?

    Has a good history of computing and great discussion of hardware, logic and assembly language.

    --
    Conformity is the jailer of freedom and enemy of growth. -JFK
  282. Re:Computer Graphics Principles and Practice by yuktar · · Score: 1

    i used the Foley book in both of my graphics classes. it's not the best for telling how to actually program graphics, but for getting a good understanding of how the computer itself interacts with the graphics subsystem and how the algorithms behind the graphics work, it's an exceptional book. after all, the point of computer books in a public library should not be to give the details of a particular API for the seven programmers who would need to read it. the library should provide books that are conceptually accessible to the general public, and i think foley's book accomplishes this very well, giving both an overview of graphics techniques, as well as the nitty-gritty of implementation, without relying on a specific OS or programming environment that's going to change in the next two years.

  283. Re:Based on what my local library has... by IvyMike · · Score: 2

    Ever heard of a concept called donating?

    I suspect that's how they got all those Apple II books in the first place.

    I use the books I own, and if I don't, it's because they're for an obsolete and worthless technology. (Want any MS Dos 3.0 programming books?) Donating them would be a disservice. In the rare case I have a still-useful book I'm no longer using, I give it to one of my younger cousins, which I guess is sort of greedy, but I know he will use it and it won't just sit on a shelf.

    I guess I have a stack of UML books I never use, my cousin has no interest in, and they aren't really obsolete. But once again, donating them to a library seems like a disservice.

  284. Based on what my local library has... by IvyMike · · Score: 3

    ...you should get lots of books on the Apple II and programming VGA graphics.

    1. Re:Based on what my local library has... by mami · · Score: 1
      Ever heard of a concept called donating?

      Sure, but when I have finished studying a book I bought, and ready to give it away (which is extremely hard for me to do anyway), then the book is already outdated and the newer edition out. Do you want me to donate old computer books ?

    2. Re:Based on what my local library has... by celerity02 · · Score: 2

      I work at my local regional library, and I keep a pretty close eye on what passes through the computer bookshelves.

      I've noticed the ones that seem to move the fastest are:
      -anything by O'Reilly. Especially their Linux and HTML books.
      -books like 'Red Hat 7.1 Bible' by Negus...books that introduce Linux but also go into more details too.
      -books that cover HTML 4.0 comprehensively
      -anything in the 'For Dummies' series. Some of them are pretty good, and they offer a pretty gentle intro to a lot of things.
      -Sam's "Teach Yourself..." series. Especially the ones on programming.
      -books on specific programs such as Dreamweaver, Photoshop, etc.
      -any up-to-date security book.

      Then again, I do work in one of Fairfax County, Northern VA's regional libraries, and they have an excellent collection of computer books, so I'm seeing people pick from what is almost the cream of the crop.

    3. Re:Based on what my local library has... by flatulus · · Score: 1

      " the right of the wealthy to erase the past and rewrite it in their own image..." ... like Spielberg editing out all the guns in the upcoming DVD release of ET??? see here

    4. Re:Based on what my local library has... by sefranem · · Score: 1

      This is ridiculous - library books have to cater to a broad and very generalized audience they cannot be at the expert level. They have to appeal to anyone interested in computers. I'll tell you right now that NOBODY would take this out - they love dummy books - personally I hate them - but that's what the public wants. A couple of books on programming, a couple on operating systems, lots on internet related materials. I know - I am a librarian - you have to go for a wide variety of general topics - to waste shelf space on apple II and VGA programming is simply short-sighted and ridiculous. People that are truly interested in this will buy books on this specialized topic as they are handy references. If you find these types of specialized topics in a library, it's because someone has donated the materials.

  285. THE book by Sir_Real · · Score: 1

    Don Knuth's books on Algorithms. The K&R book. Stay away from the new "flavor of the month" books and focus more on entrenched standards and theories. Database design books (There are many). The Dragon book (Compiler construction).

    Just a couple from my bookshelf.

    Andrew

  286. Just remeber something... by moose_hp · · Score: 1

    ...that computer related books need a mayor update freequently, unlike most books, their info contained can last a few years or less.

    History books last forever since they talk about past and they only need to be more in the pass of time, geografy books can be used for centuries without a major update, math books need only to be updates in a very specialist research areas (yeah like the way to know the Nth number of pi!), and so on, but a computer related book tend to be almost completly obsolete in five or more years (with a few exceptions of cource, like computer science books (they are not the same thing))

    So i thing that books that must be on libraries are algorythm and computer science books.

    --
    DON'T PANIC.
  287. Stevens, et al by cnkeller · · Score: 1
    Advanced Programming in the Unix Environment, Stevens.

    TCP/IP Illustrated, Stevens.

    Pretty much anything by him is worth having available as a reference.

    Strausstroup's C++ ARM is pretty much mandatory as well.

    Also, the MIT press book on algorithms is pretty much the definitive algorithm book for ComSci majors.

    --

    there are no stupid questions, but there are a lot of inquisitive idiots

  288. My short list by specialist · · Score: 1

    Knuth "The Art of Computer Programming"
    Abelson & Sussman "Structure and Interpretation of Computer Programs"
    Hamming "Numerical Methods for Scientists and Engineers" (This is a classic.)
    Brooks "The Mythical Man-Month"
    Glass "The Universal Elixir And Other Computing Projects Which Failed"
    Barron "Assemblers and Loaders"
    Aho & Ullman "Principles of Compiler Design" (also known as the Green Dragon Book) (I tend to prefer this one to the newer Red Dragon Book by Aho, Sethi & Ullman.)
    Boehm "Software Engineering Economics"

    a complete collection of Dijkstra's EWD notes series (search around http://www.cs.utexas.edu)

    I'm not really impressed with any of the operating systems textbooks I've seen.

    Recommended:

    Thornton "Design of a Computer: the Control Data 6600" (very hard to find, maybe impossible)
    Kidder "The Soul of a New Machine"
    Levy "Hackers"

  289. ..and one to bind them.. by SubtleNuance · · Score: 2
  290. Geek Library by Coreigh · · Score: 1

    Whenever I am looking for something "techy" to read I goto The Screensavers "Geek Library." Its geared more toward "less-than-Slashdot-hardcore" geeks, but hey we're talking about a library.

    --



    "Waitress I need two more boat-drinks..."
  291. Understanding geeks, Weaving the Web by KjetilK · · Score: 2
    I agree!

    Also, it would be a good thing to include books that people can read to understand us. Hackers dictionary, the Hacker Ethic, etc.

    I would also recommend Weaving the Web by Tim Berners-Lee. It is not very well written, but it gives insight into some very brilliant ideas that have yet to be implemented, and makes you see how little of the web's real potential that has been realized.

    --
    Employee of Inrupt, Project Release Manager and Community Manager for Solid
  292. Just programming titles? by deGleep · · Score: 1
    Wasn't the question about computer books, not just programming books?

    While I stand in awe of Knuth, Sjoustroup, Kernighan, and the rest, I think a computer library should also include other topics.

    My suggestions:
    • Practical Unix and Internet Security by Simson Garfinkel and Gene Spafford
    • The Politics of Information Management by Paul A. Strassman
    • Interconnections - Bridges and Routers by Radia Perlman
    • Internet Routing Architecture by Bassam Halabi
    • Goedel, Escher, Bach: An Eternal Golden Braid by Douglas R. Hofstadter
    • The Hardware Bible by Winn L. Rosch
    • Fundamentals of Digital Logic and Microcomputer Design by Mohamed Rafiquzzaman
    Spaf has been around since dirt and so has Practical U. and I. Security, but they're both still worth paying attention to. This here's a 10-year old O'Reilly book that's still useful and pertinent. If you're looking at starting to learn about security, this is a great foundation.

    If you ever want to be more than a bit-twiddler, you're going to have to understand what goes on the head of the CxO. Politics isn't a substitute for practical experience or an MIS degree from a worthwhile university (any suggestions?), but it will help you understand the rationales behind those incomprehensible IT executive decisions.

    The Perlman and Halabi books come from Cisco Press. If you know anyone who's cocky about their 1337 r0ut1ng sk1llz, give 'em one of these books. They're both well-written, readable, and absolutely fascinating. These books are enough to teach you how much you don't know about routing (and how much more there is to learn).

    Goedel, Escher, Bach is a great book on many levels and from many different directions. Just trust me on this one.

    The Hardware Bible is a little long in the tooth these days, but if you want a complete, detailed history of PCs and PC standards, this is the best place to get it. We used to give a copy of this book to everyone who did PC support at an old company. I still pull it out for the troubleshooting guides and interface specifications.

    And if you want to get into the real nitty-gritty, you can start chewing on Fundamentals. It's an EE-level book, but with enough plain English to make it accessible to anyone with a solid basis in Logic (not necessarily digital logic, just the old-fashioned kind - like Grampa used to have) and computer architecture (like you can get by reading the good stuff on Tom's, Ars Technica, and Anandtech.).

    I think we've covered programming tomes pretty well. I'd be interested to see what the /. community can add to the list of computer-related non-programming books...
  293. SQL for Smarties by splante · · Score: 1
    Joe Celko's _SQL_for_Smarties_ is an excellent advanced SQL book. It deals with the standard, but also talks about specific popular implementations.

    It was published in '95, but it's still very relevant. Very few programmers couldn't learn many relevant things from it today.

  294. For your comedy reading pleasure by shokk · · Score: 1

    Bill Gates' The Road Ahead. Nothing like a good laugh.

    --
    "Beware of he who would deny you access to information, for in his heart, he dreams himself your master."
  295. TAOCP by divert · · Score: 1

    Of course you need "The Art Of Computer Programming" by Don Knuth. No library is complete without them.

  296. The Art of Ware by dstone · · Score: 2


    The Art of Ware: Sun Tzu's Classic Work Reinterpreted , by Bruce F. Webster

    Strategy and tactics of the software marketplace.
    First published 1995
    ISBN 1-55851-396-5

  297. Plauger, Tanenbaum and Philosophy by djve · · Score: 1

    Well P.J. Plauger's "The Standard C Library" is a good addition to K&R's "The C Programming Language". I really like the item on time calls.

    The above means I think K&R should be in the library.

    If your after a good general text on OS's I like A.S. Tanenbaum's "Modern Operating Systems".

    And on the philosophical side I'd have add my voice to "The Mythical Man Month".

    These are all good solid works. But you may want something lighter in there as well - I think either Dilbert or User Friendly should also be added.

    --
    "There is magic in the web." - Othello Act 3 Scene 4.
  298. Good computer books for the library by lowder · · Score: 1
    For the beginners, I agree about the O'Reilly books (Learning Perl, Learning Java, Practical C Programming, etc.) A good intermediate one would be the O'Reilly book "Mastering Algorithms with C". For advanced books, you can't go wrong with the books by Stevens ("Advanced Programming in the Unix Environment", and the series on TCP/IP networking), and the Dragon book on compilers ("Compilers : Principles, Techniques, and Tools" -- Alfred V. Aho, et al.)

    All of the above books are really good -- the advanced ones have been around for awhile and have stood the test of time. There is also source code available for the examples in all the above, with the possible exception of the compiler book.

  299. Similarly, other subjects by IdahoEv · · Score: 1
    It's nice to have some books that are either simply inspirational, or introduce interesting topics without being dry programming manuals.

    Here are some popular accounts of computer-related sciences that are very nice accessible introductions.

    • Chaos - James Gleick
    • Artificial Life - Steven Levy
    • Mind Children - Hans Moravec
    • The Emperor's New Mind - Roger Penrose
    • The Society of Mind- Marvin Minsky
    • Nano: The emerging science of nanotechnology - Ed Regis

    And some more specific texts that I use in my field:

    • Neural Networks for Pattern Recognition - Christopher Bishop. Simply the best introduction to neural networks ever written; requires a good math background though.
    • Neural Smithing - Russell Reed and Robert Marks
    • Robot Vision - Berthold Korn

    And I'd second all the people who mentioned Applied Cryptography and GEB.

    --
    I stole this sig from someone cleverer than me.
    1. Re:Similarly, other subjects by weaselgrrl · · Score: 1
      The popular books are a great suggestion, I'd also recommend most of those. The Society of the Mind, btw, is really quite a serious book hidden in the cloak of approachability. ;-)

      --
      I spent all of those years as Anonymous Coward and all I got was this lousy number (204976).
  300. w00t by zoftie · · Score: 1

    1.The practice of programming (by Brian W. Kernighan, Rob Pike)
    2.C Programming Language (by Brian W. Kernighan, Dennis M. Ritchie)
    3.Perl Camel Book
    4.UNIX Network programming (by Richard Stevens)
    5.Advanced UNIX programming (Richard Stevens)
    6.The C++ Programming Language Special Edition (Bjarne Stroustrup)
    http://www.amazon.com/exec/obidos/tg/listmania/l is t-browse/-/2M7CF5B7QBV2A/qid=9
    96534042/sr=5-8/ref=lm_b_6/002-5786338-7700829
    for good examples. =)

  301. Graphics Books by PixelDelirium · · Score: 1

    Computer Graphics: Principles and Practices - Foley, van Dam
    An Introduction To Raytracing - Glassner
    Advanced Animation and Rendering Techniques - Watt
    3D Computer Graphics - Watt
    Texturing And Modeling - Ebert

  302. Some other choices by sv0f · · Score: 2

    I tried to pick books that (1) no one has yet mentiond, (2) have stood and will stand the test of time, and (3) have some chance of being generally accessible.

    Frankly, I'm shocked by some of the schlocky faddish crap that other's have recommended. Maybe this just means I'm old.

    Jensen and Wirth's "Pascal: User Manual and Report" is a must for any library, general or University.

    David Harel's "Algorithmics: The Spirit of Computing" is an introduction to the heart of computer science for the smart high school student. Would change a few lives if present in more public libraries.

    Flake's "The Computational Beauty of Nature" is a good survey, for the smart high scool student or collegian, of the application of computing to modeling the natural world. Covers genetic algorithms, neural network, chaos, fractals, etc., in an introductory yet non-condescending manner.

    For the budding AI mind: Haugeland's "Mind Design" introduces the philosophical side. Minsky's "Society of Mind" is accesible to the lay reader. Hofstadter's "Metamagical Themas" and "Fluid Concepts and Creative Analogies" are similarly comprehensible. All of these books are tremendously stimulating to the novice and expert alike.

    (A personal plug: As a high school student I turned to AI after reading an early history of the field, McCorduck's "Machines Who Think", and a book by someone I now know to be a bit of a charlatan but who I still love: de Bono's "Mechanism of Mind")

    Simon's "Science of the Artificial is absolutely foundational to AI, computer science, and design.

    Paul Graham's "On Lisp". Presents those techniques that are effortless in Lisp and laborious in other languages. In the same vein, Kiczales et. al.'s "The Art of the Metaobject Protocol". (Okay, these are esoteric.)

  303. Re:IDG and O'Reilly by quintessent · · Score: 2

    Be careful, though. I don't know much about the others, but when I bought the "Unix for Dummies" quick reference book, I thought I'd be getting something similar to "Unix in a Nutshell." While it was cheaper, the quality and organization of information turned out to be quite poor compared to the O'Reilly.

  304. IDG and O'Reilly by mgkimsal2 · · Score: 2

    I would think some IDG "For Dummies" books would be generic and 'long lasting' enough to give good value to a library. Win 95, 98, 2000, Office, etc. Some basic things like that.

    For the more technical, some basic O'Reillys (camel and bat come to mind) would be nice. Probably at least one on VB. :)

  305. Distributed Computing by dfenstrate · · Score: 1

    No slashdot-recommended library collection would be complete without How to Build a Beowulf: A Guide to the Implementation and Application of PC Clusters by Sterling, Salmon, and others. Paperback, MIT Press, 1999

    --
    Alcohol, Tobacco and Firearms should be the name of a store, not a government agency.
  306. My favorite book.... by SSonnentag · · Score: 1

    If I could only keep one book in my computer library it would be my Data Structures book. There's a lot of good stuff in there. SSonnentag

  307. Human Interface Guidelines books by sasha328 · · Score: 1

    The Macintosh Human Interface Guidelines although Mac-centric, is a very good foundation for GUI design. It also gives principles that have been implemented in almost all GUIs.

    May be outdated though, I'm not sure if it's been updated

  308. Java Class Ref 1.1 by theBunkinator · · Score: 1

    wait 1.2 wait JSK 2 1.2.2_03 no 1.2.2_04a with EJB 2.2 JSP 1.1&2 JDBC 1.0-2.5 you get my point

    But any good java docs out there? how about instead of spending $1000's on book, just give them a $500 internet appliance with google? google know everything.

  309. for a public library... don't forget the masses... by Technodummy · · Score: 1



    in a public library you won't be catering just to aspiring programmers, you'll also have retirees researching computers for their own personal information, non-programming students trying to get an insight into the computer industry, mums and dads trying to figure out what their kids are on about...

    I'm not saying you won't need programming books, they are essential, but if it's for a public library, you will need some broader books as well, such as:

    The Unfinished Revolution
    by Michael Dertouzos
    http://www.unfinishedrevolution.com

    Peer-to-Peer : Harnessing the Power of Disruptive Technologies
    by Andy Oram

    and depending on your budget, non-textbook style books like Jerry Kaplan's Startup would also be good

    books aside, current general subjects important to the masses (the kind of stuff they'll be trying to look up) are:

    * the internet
    * privacy
    * digital security (viruses, hackers etc.)
    * email
    * cultural shifts
    * education
    * global communication
    * business on the internet (best to train em up right with some anti-spam books and warnings about get-rich-quick schemes)

    Books for a school library would probably be a little different again.

  310. Re:Undergrad textbooks: Algorithms, H&P, Dragon, e by weaselgrrl · · Score: 1
    And for more advanced graphics, consider:

    Real Time Rendering by Mo:ller and Haines
    Advanced Animation and Rendering Techinques by Alan Watt and Mark Watt
    Making them Move: Mechanics, Control and Animation of Articulated Figures edited by Badler, Barsky and Zeltzer

    Getting back to basics:
    Interactive Computer Graphics by Angel is a good Intro to Graphics textbook aimed at Undergrads and it is grounded in OpenGL

    And then you need the OpenGL reference manuals (the red, blue, green and alpha books)
    (Red) OpenGL: A Programmers Guide
    (Blue) OpenGL: Reference Manual
    (Green) OpenGL: Programming for the X Windows System
    (Alpha) OpenGL: Programming for the Windows95/NT

    For serious graphics fun, consider:
    Jim Blinn's Corner: A trip down the graphics pipeline, by Jim Blinn

    --
    I spent all of those years as Anonymous Coward and all I got was this lousy number (204976).
  311. Turbo Pascal by marcovje · · Score: 1


    Some language books like
    - Turbo Pascal (preferably something from Jeff Duntemann). A lot used to learn programming still.
    - (introduction to) Modula 2 (Niklaus Wirth)
    - Algorithms + Datastructures=programs (Niklaus Wirth)
    - Delphi books, preferable by Marco Cantu' Not necessarily need the latest one.
    - Math: Handbook for Automation series (half of the volumes seems to be German though)

  312. Re:Web development +1 by Webz · · Score: 1

    Absolutely! I have the majority of those books and plan on getting the last one =), all of which are excellent web design resources. Right off the bat, I recommend Web Design in a Nutshell (O'Reilly) and Don't Make Me Think, in addition to the books above. I can't stress enough the importance of solid web design in effective communication. These books are resources that every web page maker should read and have. As far as I can see, these books probably won't ever be outdated as they teach principles that apply to the future (good structure, valid code, extensibility, etc).

    In response to another user's comment about manuals in a library... Yes, these would be well sought after books (it will probably entice readers into buying one for themselves). They're good, short reads for someone looking for answers right away, but they also function as great references for web designs, much in the way the Camel Book acts as the Bible for Perl nuts...

  313. More general/basic texts. by Troodon · · Score: 1
    Given the audience, what might be at hand to the average professional programmer, sys admin etc. might not be the most useful selection. Perhaps some of these (in the order dig them out off the heap on the shelf):

    Where wizards stay up late, the origins of the internet. By Katie Hafnet and Matthew Lyon.

    Windows 98 [ME/95/2000 whatever] Annoyances. Pub. by OReilly

    In the Beginning ... was the command line. By Neal Stephenson

    Rebel Code, Linux and the open source revolution. by Glyn Moody

    Running Linux. Pub. OReilly

    Upgrading and Repairing PCs. By Scott Mueller

    C Programming, A modern Approach. By K. N. King

    --
    troodon.net
  314. A book you should hold with your teeth on by ehiris · · Score: 1

    "Slashdot for dummies"

  315. TCP/IP Illustrated Volume 1 & The Object.... by raretek · · Score: 1

    ...Oriented Thought Process, by Matt Weisfeld.

    TCP/IP Illustrated Volume 1(get all of em if you can), is an excellent reference for virtually every network technical job. Whether it be coding, systems administration, database administration, webmastering, or just supporting any software which operates over tcp/ip networks, it will be a big boon and you will grow strong in the force. Also, it's very nicely bound and has stood up far better than my O'reilly books(which are excellent, they just don't last very long if many people are sharing them in my experience).

    As for The Objected-Oriented Thought Process by Matt Weifeld(SAMS publishing), this book facilitated my final trancendance from mere precedural programming, to the heedy heights of Object Oriented programming(although that sounds alot better than it feels). If you've struggled with REALLY understanding OOP, get this book and read it. I read it in 2 days, it was addictive and eye opening. It is not a book about code in any one language, but about thinking in terms of objects, and it does this extremely well. When I was finished, I found I could read C++ code(this is coming from a strong C background, your mileage may vary). Before reading this book, I just never got it. I'd wager money this book will still be useful 20 years from now. Although it is a paperback.

    --
    Show me an effect without cause and then I'll believe in chaos.
  316. Web development by DreamingReal · · Score: 2
    Let me recommend a couple of books that relate to web development and user interfaces:
    • Designing Web Usability - Jakob Nielsen
    • Information Architecture for the World Wide Web - Louis Rosenfeld and Peter Morville
    • Web Pages That Suck: Learn Good Design by Looking at Bad Design - Vincent Flanders and Michael Willis
    • Philip and Alex's Guide to Web Publishing - Philip Greenspun
    Good usability design and testing are two things that still seems to get shortchanged by companies as being unimportant or extraneous. It is probably the most important thing a company can do with its website or product! All of these books are good but I would recommend Nielsen's most strongly. He has written the... ahem, "book" on usability.


    -------

    --
    We want some answers and all that we get
    Some kind of shit about a terrorist threat

    - Ministry
  317. Re:You'll want both by hearingaid · · Score: 1

    sadly, this is untrue.

    you will probably steal the one you already have.

    that's why I suggested the gecko and llama books. those are books you come to the end of. what libraries, especially public libraries, want are tutorial books.

    --

    my old sig used to be funny, but then slashcode ate it and now it's not funny anymore

  318. The C++ Programming Language by Mnemia · · Score: 4

    This is one programming book that has stood the test of time... Bjarne Strousrup.

    1. Re:The C++ Programming Language by MrSquish · · Score: 1

      (I think this sums it up best (Taken from Linuxbrit.co.uk) AWSOME SITE btw.. ) The C++ book, written by the main guy behind the C++ language definition. The book rocks, covers every part of the language, and does so at just the right level. You can't do C++ without this book.

      --
      If i was you, you'd be me and we wouldn't be having this conversation
    2. Re:The C++ Programming Language by rpg25 · · Score: 1
      Gosh. I hate to go against the flow, but I think this is a terrible book. It's one of the worst books I can imagine for learning a language. The organization doesn't follow any structure you would use to learn the programming language --- instead it follows the structure of a spec. It's a real contrast with Kernighan and Ritchie, which seems a much better example of how to learn and master a programming language. And C++ is a terribly confusing language to learn. It's like perl in being an organically grown, instead of designed language, but unlike perl, it wasn't designed with the programmer in mind; it was designed with the compiler in mind.

      I suppose this is a classic, but I wish it weren't so. The library should have it as a historical document, but not as an exemplar of a good book.

  319. O'Reilly's Webmaster in a Nutshell by Rogue.net · · Score: 1

    I find Webmaster in a Nutshell to be indespensible. It covers HTML, CSS, XML, PERL, CGI, PHP, and Apache Administration. This book is the most beat up, and well used on my shell, and is by far the best investment I have made in computer/programming reference books.

  320. several suggestions by drDugan · · Score: 1


    S. Russell and P. Norvig, Artificial Intelligence, A Modern Approach Prentice Hall/Allyn&Bacon, 1995, ISBN: 0-13-103805-2

    Introduction to Algorithms (MIT Electrical Engineering and Computer Science) by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest 1990 Hardcover - 1028 pages MIT Press; ISBN: 0262031418

    Garey and Johnson Computers and Intractibility A guide to the Theory of NP-Completeness C.1979 isbn 0716710447

    other areas to cover
    • into to computing/ bits/bytes/ logic
    • linear algebra / numerical methods
    • linear and non linear optimization
    • databases
    • hardware
    • informatics, knowledge modeling, \& ontologies
    • computer history
    • development of the web / Internet
    • machine code/assembly /compilers
    • graphics/visualization
    • parallel applications/programming/ meta computing / supercomputing
    plus probably a lot of others I can't think of right now

    _________

    I would be careful with many of the Oreily books. It used to be their books were standard references for the most important areas. In the last few years, however, I've seen many many books on more and more obscure topics. Its gone from a small series of really important books to a book-mill approach covering every topic they can. I'm not saying the quality is less - most of the recent oreily books I've never read. Just that the topic themselves may not stand the test of time.


    peace
  321. The best HTML book I've ever seen. by Quadraphonic · · Score: 1

    It seems that everyone everyone wants to know HTML; let them learn it right with the following book: HTML: The Definitive Guide . I'm really surprosed I haven't seen this mentioned by anyone yet. This is one of the few books I've encountered that is fully understandable to a novice and is also very useful to the expert. Gives an historical background...; platform independent...; my hightest recommanation for the need. You'll need at least two!

  322. Good books by Parsley+Sage · · Score: 1
    The following would be good for experts

    Knuth's trilogy of computing blockbusters Hardcover Slipcase edition (October 1998) Addison-Wesley Pub Co; ISBN: 0201485419 ; Dimensions (in inches): 5.03 x 10.06 x 6.97

    Bertrand Meyer : Object Oriented Software Engineering 1296 pages 2nd Bk&Cd edition (March 21, 2000) Prentice Hall PTR; ISBN: 0136291554 ; Dimensions (in inches): 1.93 x 9.28 x 7.03

    Frederick Brooks : Mythical Man Month 336 pages 2nd edition (July 1995) Addison-Wesley Pub Co; ISBN: 0201835959 ; Dimensions (in inches): 0.75 x 9.07 x 6.11

    ... These are just some ideas. I think some of the 'Dummies' books are quite good if you want to get people starting off on particular subjects (eg Delphi, C++, HTML, XML, XHTML). Cheers Parsley Sage

  323. Good Books by bdoliver · · Score: 1

    I have found these missing from the above lists: -> Numerical Recipes in C (Second Edition) - Teukolsky, Vetterling, Flannery -> Tcl and the Tk Toolkit - Ousterhout These are great books I use all the time

  324. C++ for You++ by SlamMan · · Score: 1

    You can't have a computer book discusion without my old AP Comp Sci text book: C++ for You++. Despite the mind-numbingly ceesy title, it was actually a prettyy good reference.

    --
    Mod point free since 2001
  325. "About Face" by Alan Cooper by hwilker · · Score: 1
    I haven't seen anyone mention this tome:

    About Face. The Essentials of User Interface Design by Alan Cooper

    I know, I know, Cooper is ex-Microsoft and invented Visual Basic (at least the cover blurb claims so -- I wouldn't know that), but I found the book interesting, if sometimes hard, reading. It is only somewhat MS-specific; readers should be able to transfer ideas and solutions forwarded in the book to other GUI systems and OSs. It would round out the CS-heavy bias of most of the lists I have seen here towards the "applied" or "user" side.

    Funny how most of the lists are so very similar! I wonder if the reason is in my /. settings (I only see about 30% of the posts), or in the quality of the books and the people writing about them...

    --
    -- H. Wilker
  326. On Web Publishing by hwilker · · Score: 1

    Philip and Alex's Guide to Web Publishing by Philip Greenspun

    This volume is named "Web Publishing", but can be read as a more general textbook on online publishing, communities and information exchange. The book has lots of concrete technical information (AOLserver, Oracle, SQL, Unix) which may be expected to go out of date in some years, but it is still general enough to make it a lasting source of information. Of course, you have to hack through Greenspun's egomaniac style, but if you don't take him too seriously, it works...

    Plus, it has nice pictures. And you can read it on the web, in its newest, updated edition.

    --
    -- H. Wilker
  327. Zen and the Art of Motorcycle Maintenance by riedquat · · Score: 2

    By Robert M Pirsig. Our computer hardware lecturer made it one of his course texts.

  328. Stick with books that cover standards... by wrinkledshirt · · Score: 1

    There's a lot of crap out there right now, and the best books to get would be ones that actually stick to some sort of standard, like hardcore SQL or C references. It's probably the only way to guarantee that you won't be getting into something that's a fad, because any programming language community that commits to bringing about a standards base isn't in it for the short haul. This rule, of course, excludes yet-to-be-proven-potential-vapourware like C#.

    --

    --------
    Bleah! Heh heh heh... BLEAH BLEAH!!! Ha ha ha ha...

  329. You'll want to buy histories rather than manuals by hillct · · Score: 5

    The first inclination of /. readers will be to suggest manuals, or more generalized reference works such as are published by O'Reilly & Associates. This is an extremely bad idea. These works not only have a short shelf life, but are also of a nature which is not conducive to use in a library, in that people who refer to them will want to do so continually, and at a moments notice, rather than saying 'Gee. I have this problem with the syntax of this Perl function. Let me go to the library and check out the camel book', users will want to own such works durring the time in their lives when they are actively pursuing the subjects those works would relate to.

    Instead, you should concentrate on aquiring for the library's collection, books which cover a broader scope of aspects of computer science and the history of computing. This would include such books as 'Alan Turing: The Enigma'.

    --CTH

    --

    --Got Lists? | Top 95 Star Wars Line
  330. Re:"How Computers Work" by behindthewall · · Score: 1

    Yes. Remember, a general library will be catering to non-professionals, as much or moreso than to professional. How many times I've wished someone I'm helping would devote a few hours to books such as this. With such background, their tasks would be much clearer to them and my job much easier.

  331. Re:Numerical Recipes not perfect by tartley · · Score: 1

    Be aware that Numerical Recipies is a great place to go for inspiration, but contains several vexing bugs and innacuracies, in my experience particularly so in sections about dynamics and methods of integration.

  332. No computer books, only maths books. by tempmpi · · Score: 1

    Well, if you want a really long shelf life than you should buy only books about math. Computer Science is essential very specialised math. Over the years many of the assumings of CS will change a bit and old books will be obsolete. Books about CS will have a much longer shelf life than books about computers in general or programming languages etc but even CS book will get outdated.
    Take "The Art of Computer Programming" as an example. The core content is still very usefull and not outdated, but all that pages about MIX and implenetation of the algorithms in this fake assembler language are not very usefull now.
    Math books are better choice because learning about math will help the reader to adept smarter to new situations and will help the reader to find effective solutions for his particular problem.

    --
    Jan
  333. Silicon Snake Oil by DeadMeat+(TM) · · Score: 2

    Without a doubt, Silicon Snake Oil by Cliff Stoll is more important than any other computer book budding programmers can read. If you can take Stoll's heavy dose of cynicism, it's an excellent reflecion about what we're doing wrong with computers. Stoll really pushes programmers to ask themselves the question that should come first, but is rarely considered at all, in system design: "Does this really help people, or is it just another way to take away their productivity?"

  334. Hey hey hey! What about Certifications!??! by 8bahl · · Score: 1

    I go to my local library often and I'm surprised to find books on certifications.

    But wished there were more!!

  335. Re:Undergrad textbooks: Algorithms, H&P, Dragon, e by KagakuNinja · · Score: 1

    Agreed, and for graphics, add:

    Foley & van Dam, "Computer Graphics, Principles and Practice"

  336. Actually, yes. by AKAImBatman · · Score: 1

    If I had found even a terribly out of date Tanambaum (sp?) book when I was younger, I would have thought that I had died and gone to heaven.

  337. For the fundamentalists by wdebruij · · Score: 1

    Although beginners might like the dummies books and programmers never stop drooling over O'Reilly books you should always add one for the fundamentalists in the group. Perhaps "Theory of Computation" by Derrick Wood will be enough self-chastisement for die-hards, detailing context free grammars, turing machines, set theory and much more late night reading delight. Enjoy!

  338. Core books with a long shelf life by natersoz · · Score: 1

    1. Stevens, "TCP/IP Illustrated", vol I" (must have), "vols II, III" if you can...
    2. Stevens, "UNIX Network Programming Vol I,II", very good.
    3. Kernighan & Ritchie, "The C Programming Language." 3 copies.
    4. Lippman & Lajoie, "C++ Primer", an excellent reference and tutorial.
    5. Stroustrup, "The C++ Programming Language", the K&R of C++. 6. Scheifler & Gettys, "X Window System, Core Lib. and Standards", The single best book on X I've found.


    7. Richter, "Advanced Windows", the *only* worthwhile book related to Win32 programming on the market.

  339. Boycott Yourdon by natersoz · · Score: 1

    Don't get *anything* written by this author of FUD. Long on rhetoric and lacking any scientific underpinning or practical value.

    This author should be discredited not only for bilking companies out of millions of $$$ through so-called "seminars" (which emphasize pretty pictures and quaint "processes"), but also for his completely off-base analysis of Y2K (yup, he predicted a melt-down).
    Get books built on:
    1. Science (Knuth, Numerical Recipes, ...)
    2. Standards (O'Reilly, Stevens, ...)
    3. Implementations (O'Reilly, K&R, Sams, ...)

  340. suggested books by the_rev_matt · · Score: 1

    My must haves: Programming Python, 2nd Edition (O'Reilly, natch) Java Enterprise CD Bookshelf (as above) Apache, the definitive guide (as above) Linux Network Administrators Guide, 2nd Edition (as above) UNIX CD Bookshelf (as above) C++ the Core Language (as above) Or most any of the O'Reilly books, really, focusing on things that aren't going to change wildly with the next version (VB, for example).

    --
    this is getting old and so are you

    blog

  341. Books Related to Computing (Kind of...) by airship · · Score: 1

    You've got to include a copy of Geoffrey James's "The Tao of Programming". Not only is it hilarious, it really conveys what it feels like to be a professional programmer. He followed this book up with two sequels called "The Zen of Programming" and "Computer Parables: Enlightenment in the Information Age", but I haven't read those yet.

    I'd also suggest a copy of "The Difference Engine" by William Gibson and Bruce Sterling. The ultimate "steampunk" novel, it shows how the world might have evolved if computing had gotten its start in the Nineteenth century instead of the Twentieth.

    Clifford Stoll's "The Cuckoo's Egg: Tracking a Spy Through the Maze of Computer Espionage" is a fascinating account of the painstaking analysis that it takes to track crackers in the real world.

    Jakob Nielson's book on web design (and design in general) is indispensible and will have a long shelf life: "Designing Web Usability: The Practice of Simplicity".

    Eric S. Raymonds's "The New Hackers Dictionary".

    All of Scott Adams's "Dilbert" books, especially "The Dilbert Principle", "The Joy of Work", and "The Dilbert Future".

    For a great introduction to fractals, James Gleick's "Chaos: Making a New Science".

    And, of course, Steve Levy's "Hackers", Tracy Kidder's "Soul of a New Machine", and Pekka Himanen's "The Hacker Ethic".

    If you can find a copy, Theodor H. Nelson's "Computer Lib/Dream Machines" is a fantastic look forward at personal computing from the very dawn of the era. Original copies, privately published by Nelson, are almost impossible to find, but it was reprinted in a (less cool) updated version in the mid-90's.

    --
    Serving your airship needs since 1995.
  342. Slahdot for Dummies by Skiamorphic · · Score: 1

    -- or is that redundant?

  343. Books24x7.com by jhaberman · · Score: 1
    If you haven't visited this site, you should. Books 24x7 is a site that has online versions of technical books, in their entirety. For example, in "My Bookshelf" I have quick links to books on ColdFusion, ASP, Perl, Javascript and more (all known and well reviewed books too). The beautiful part is once you're registered, you can access these books from anywhere. Nice to always have your tech reference with you.

    I got access through my employer. You might want to look into if you can talk your boss into getting the same deal for your workgroup (if you have one)

    Jason

    --
    He's totally creeping out the Great One, eh...
  344. My Top 10 by geekplus · · Score: 2

    10. Visual Basic For Dummies
    9. Learn HTML in 21 Days
    8. Learn Perl in 4 Days
    7. 7 Minute Abs
    6. Practical Programming for the PDP-11
    5. Advanced Programming with the Windows Task Scheduler
    4. xClock for xPerts
    3. t0p 100 l33t 5c41pts
    2. Customized Quake Maps in 5 Minutes!

    and destined to be a timeless classic...

    1. Microsoft Terminology for Microsoft Certified Certifiers of Microsoft Certification Seeking Professionals

  345. Applied Cryptography by geekplus · · Score: 3
    by Bruce Schneier (sp?)

    This is becoming the end-all, be-all textbook on cryptography (both composing and cracking message) in the wild.

    One of its more valuable contributions is the fact that it sets down a common language for various cryptographic terms and practices we all sorta know about, but can't really bring clearly into a conversation. Having the common vocabulary that Bruce brings to security is as powerful as the common language that the Gang of Four book brought to object-oriented design.

  346. Programming books by $pacemold · · Score: 1

    First of all, the four cornerstones of programming:

    The Art of Computer Programming -- Donald E. Knuth;
    The Practice of Programming -- Brian W. Kernighan, Rob Pike;
    The Science of Programming -- David Gries;
    A Discipline of Programming -- Edsger W. Dijkstra.

    The last two books are out of print and a little dated - but very, very good.

    Here's more:
    Design Patterns -- Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides;
    Object-Oriented Analysis and Design With Applications -- Grady Booch;
    Object Solutions : Managing the Object-Oriented Project -- Grady Booch;
    The Mythical-Man Month -- Frederick P. Brooks.

  347. Re:Undergrad textbooks: Algorithms, H&P, Dragon, e by tanpiover2 · · Score: 1

    The above list, K&R included, as well as the addtion of Abelson and Sussman's Structure and Interpretation of Computer Programs. and Harbison and Steele's C: A Reference Manual.

    --

    But masters, remember that I am an ass: though it be not written down, yet forget not that I am an ass.
  348. How about something on Microsoft? by dasunt · · Score: 2

    No, no, don't mod me as a troll yet, hear me out...

    Unfortunately, for a lot of us, we will find ourselves in environments with windows machines. If you need to interact with Windows, it might be better not to seem like a dumb monkey randomly clicking things. Yes, linux is superior in a lot of ways, but if you learn more about windows, you'd probably be surprized at what you can do.

    Also, I'd recommend a book on PC repair, a book on computer hardware, and a nice book on electronics. They come in handy sometimes.

  349. Programming pearls by jarn · · Score: 1

    The Programming Pearls books by Jon Bentley are an excellent practical approach to algorithms, and are essentially timeless because of it.

  350. Re:101 ways to... by bahtama · · Score: 2
    OK, now that is kinda funny. Considering the question that was put to Slashdot readers was "What books won't you give up on your tech-library?" Besides, is that proper English ya reckon? Not that Slashdot is known for that anyways. Of course neither am I, but I digress.

    This story is ripe for some goat type answers. But I think a couple basic books on computers and operating systems are a must. Probably multiple copies as well. Also, the Dummies book are good for non-technical people, they give a dumbed down broad overview.

    =-=-=-=-=

    --

    =-=-=-=-=-=-=-=-=
    Oh bother.

  351. Libraries are _resources_ by noz · · Score: 1

    I have two C books, A Book On C (if you have this one, burn it now and never follow the advice of that who recommended it to thou), and Kernighan and Ritchie (contact it to protect against rouge coffee and never, never remove it from your desk).

    Libraries are resources. Resources must to be broad in scope and concise in economies. This is why the prior is shudas, and the latter optimus.

  352. Let me guess - you are not a CS major? by invalid_user · · Score: 1
    The heart of computer science is about "computation" (not "computers", as is popularly believed), a mathematical concept formalized by Turing, Church and Post. Hence (as with all things in the field of mathematics,) as long as the original insights remain correct and valid, our work regarding computation will continue to hold.

    Also worth noting, is that your electronical devices will however, pass as new ways of machine constructions come to be.

  353. I wonder by jsse · · Score: 1

    Why would a book need to be long lasting to be qualified in library?

    A couple big commercial bookstores in Shenzhen of China has floors of technies books. I can still find '6502 programming design', 'Player missle graphics and game design'(for ATARI), 'Complete 8086' and 'Inside DR. DOS 3.1', etc.

    I wonder why libraries has to exclude those books which has great academic values.

  354. Security by imipak · · Score: 2
    Network Intrusion Detection (Novak, Northcutt) (New Riders)

    Practical Unix and Internet Security: Garfinkel & Spafford (O'Reilly)

    Web Security and Commerce: Garfinkel & Spafford (O'Reilly again)

    lots more at the isscc.org site: check their reading list.
    --

  355. Re:Linux, Perl, C, C++ by Newander · · Score: 1

    I would personnaly avoid books dealing strictly with Linux. A good base of *nix books would yield the highest bang/buck ratio.

    --

    Jesus saves and takes half damage.

  356. Can't go wrong with O'Reilly by baptiste · · Score: 3
    If you're looking for system admin book or language references, you generally can't go wrong with O'Reilly books - Perl, Java, etc and sys amdin books on RedHat, Sendmail, DNS, Essential Sys Admin, etc.

    Also, for Visual Basic, the Microsoft Refernece library for VB is quite extensive and well written, combine that with the VB Programmers guide

    1. Re:Can't go wrong with O'Reilly by Publicus · · Score: 1

      I second that, mod this gentleman up, O'Reilly rules. I haven't bought an O'Reilly book that I haven't liked, and I think I have 7 books now and 2 pocket references (from O'Reilly). My gf also works at Barnes and Nobel and she has noticed that O'Reilly books seem to be the most popular. I have a couple of others that have way too many pages for the amount of information (I imagine space is at a premium on library shelves). I think those others are marketed toward those who think bigger is better. But we all know that good writing lies in thrift. Omit needless words!

      O'Reilly, O'Reilly, O'Reilly!!!

      Stick it to The Man!

      --

      My Karma was at 49, then they switched to words. All that work for nothing!

  357. O'Reilly books by AdamInParadise · · Score: 1

    Just buy all the books of the O'Reilly collection. With the exception of one or two black sheeps, they are all very good.

    But O'Reilly lacks on the theory side. I would recommend going to your local university bookstore and have a look around. (Here's a tip: if the bookcover is flashy, the book is already outdated. And here's another: avoid everything from Microsoft Press or written by Microsoft employees. They suck more than you can imagine.)

    --
    Nobox: Only simple products.
    1. Re:O'Reilly books by anany01 · · Score: 1

      I disagree in one, and only one, case. The book entitled Transaction Processing: Concepts and Techniques is the ultimate book on it's topic. And Jim Gray, author, just happens to work for Microsoft Research. Sucks for him, but this is an absolutely essential book for anyone doing transaction processing work on a large-scale. But, we can rest assured that anything that comes out of MS Press is a piece of s*** and not worth the paper that it's printed on, so at least we'll always have that ;-)

    2. Re:O'Reilly books by MSBob · · Score: 2

      Steve Maguire "Writing Solid Code". Timeless. From Microsoft Press.

      --
      Your pizza just the way you ought to have it.
    3. Re:O'Reilly books by Floofnargle · · Score: 1

      Second that. I can't speak to the claims about the quality of GPL code, but i can say that Code Complete and Rapid Development are both excellent books by a former MS employee, Stevel McConnell. Both books are language and platform neutral, and Code Complete in particular should be required reading for every starting programmer. These are also great books for a library because both newbies and old timers will get something from them.

    4. Re:O'Reilly books by Keith+Mickunas · · Score: 1

      I agree whole-heartedly on these books. I read Writing Solid Code shortly after I entered the real world. It made a huge difference in the way I code. Code Complete is also an excellent resource. These guys may be from the Great Satan, but they know their stuff.

    5. Re:O'Reilly books by defaulthtm · · Score: 1

      Rapid Development is the third best use of my money to buy a computer book that I can recall. The best was Oracle8i: The Complete Reference by Kevin Loney, George Koch (Perhaps the only book with the word "Complete" in the title that doesn't make me cringe), It is quickly followed by Javascript bible by Danny Goodman. Others that helped have been UML Distilled by Martin Fowler and Thinking in Java by Bruce Eckel (free online but dead trees are easier to read) A web guy.

      --
      K
  358. Sexe for Dummies by AdamInParadise · · Score: 2

    I recommends "Sexe for Dummies" and "Food for Dummies". I'm not kidding. Both are really good and I guess that geeks like us could make a good use of them. And they are in a the familiar format we all love!

    --
    Nobox: Only simple products.
  359. The classic in it's field! by Proud+Geek · · Score: 2
    DOS for Dummies

    The quintessential tome for computer beginners, and a historical reference, too boot.

    --

    Even Slashdot wants to hide some things

  360. Re:You'll want to buy histories rather than manual by stickb0y · · Score: 1

    How about the New Hacker's Dictionary (aka The Jargon File)?

    Not only does it provide a lot of history, but it probably would help people decipher some of the other books.

  361. A good starter library by LinearB · · Score: 1

    There are between 17K and 42K computer books in print now. Here's a list that could be a basis for beginning a discussion. There should probably be more MS books in this list, but I just threw this together in a few minutes. Oh yeah, I used to do this for a living. I'll have the complete 17K+ list up on Geek Austin next month. - Lynn Bender

    156205810XDesigning Web Usability : The Practice of SimplicityNielsen, Jakob12/99NewRiders
    0201354934HTML 4 for the World WebCastro, Eliza11/99Peachpit
    0782126472CCNA Cisco Certified Network Associate : Study Guide (with CD-ROM)Lammie, Todd03/00Sybex
    0735708967Flash Web DesignCurtis, Hillm11/99NewRiders
    0072123648Oracle 8i: Complete ReferenceLoney, Koch01/00Oracle
    0130273635Thinking in JavaEckel, Bruce06/00Prentice
    0201616416Extreme Programming ExplainedBeck, Ken10/99AddisonWesley
    0201633612Design Patterns: Elements of Reusable Object-Oriented SoftwareGamma, Erich10/94AddisonWesley
    0596000162Java and XML (O'Reilly Java Tools)Brett McLaughlin, Mike Loukides06/00O'Reilly
    1556154844Code Complete : A Practical Handbook of Software ConstructionMcConnell, St04/93Microsoft
    0672316366Teach Yourself UML in 24 hoursSchmuller, Jo07/99Sams
    1861003668Beginning Java 2 - JDKHorton, Ivor03/00Wrox
    0672316641Teach Yourself SQL in 1Forta, Ben09/99Sams
    0735709211My SQLPaul DuBois, Michael Widenius12/99MTP
    1565928717Building Internet Firewalls (2nd Edition)Zwicky, Eliza06/00O'Reilly
    0201835959The Mythical Man-MonthBrooks, Frede10/95AddisonWesley
    0521777682The Elements of Java StyleVermeulen, Al02/00CambridgeUP
    0789723034Upgrading and Repairing PCs (with CD-ROM)Mueller, Scot08/00Que
    0735606315Software RequirementsWiegers, Karl09/99Microsoft
    0072121157CISCO: A Beginner's GuideShaughnessy,08/99&nbs p;Osborne
    0130819336Core Java 2 : Volume 1 FundamentalsHorstmann, Ca12/98Prentice
    0735610207XML Step by StepMicrosoft Pre06/00Microsoft
    156592469XRunning LinuxWelsh, Matthe08/99O'Reilly
    0130819344Core Java 2, Volume 2: Advanced FeaturesHorstmann, Ca12/99Prentice
    0764504460Excel 2000 For Windows® For Dummies®Harvey, Greg05/99IDGbooks
    0201634481Interconnections: BridgPerlman, Radi09/99AddisonWesley
    020169946XInterconnections, Second Edition : Bridges, Routers, Switches, and Internetworking ProtocolsPage-Jones, M12/99AddisonWesley
    0735611092A+ Certification Training Kit06/00Micros oft
    0596000251Linux in a NutshellSiever, Ellen09/00O'Reilly
    1565926226Cascading Style Sheets: The Definitive GuideMeyer, Eric A05/00O'Reilly
    1565924274Unix in a Nutshell: A Desktop Quick Reference for SVR4 and Solaris 7 (3rd Edition)O'Reilly & As06/99O'Reilly
    0201571684The Unified Modeling Language User Guide (The Addison-Wesley Object Technology Series)Booch, Grady10/98AddisonWesley
    059600026XHTML & XHTML : The Definitive GuideChuck Musciano, Bill Kennedy08/00O'Reilly
    0131103628The C Programming LanguageKernighan, Br03/89Prentice
    1565924649Learning PythonLutz, Mark03/99O'Reilly
    0132169878Internetworking with TCP/IP Vol. I: Principles, Protocols, and ArchitectureComer, Dougla04/99Prentice
    1861002718VB Script Programmer's ReferenceClark, Susann10/99Wrox
    0471117099Applied Cryptography: Protocols, Algorithms, and Source Code in C, 2nd EditionSchneier, Bru10/95JohnWiley
    076454716XPHP 4 BibleConverse, Tim08/00IDGbooks
    078212710XCCNP Remote Access Study Guide Exam 640-505 (With CD-ROM)Lammle, Todd05/00Sybex
    1565924193CGI Programming with PerlGundavaram, S07/00O'Reilly
    0201485524Java(TM) Class Libraries, Volume 1, The: Supplement for the Java(TM) 2 Platform, Standard Edition, v1.2 (The Java(TM) Series)Chan, Patrick05/99AddisonWesley
    1565924886Java Foundation Classes in a Nutshell : A Desktop Quick Reference (Nutshell Handbook)Flanagan, Dav11/99O'Reilly
    0072118458SQL: The Complete ReferenceGroff, James02/99McGraw
    1861002777Professional Java ServerAyers, Danny08/99Wrox
    0782123716Access 2000 Developer's Handbook 2 Volume SetLitwin, Paul09/99Sybex
    0133499456Computer NetworksTanenbaum, An03/96Prentice
    020163354XTCP/IP Illustrated, Volume 2: The Implementation (The Addison-Wesley Professional Computing Series)Wright, Gary01/95AddisonWesley
    1861002726Beginning ASP DatabasesBuser, David09/99Wrox
    0672319454Running qMailBlum, Richard09/00Sams
    0201889544The C++ Programming LanguageStroustrup, B07/97AddisonWesley
    013490012XUNIX Network ProgrammingStevens, W. R10/97Prentice
    1565924835Java Enterprise in a NutshellCrawford, Wil09/99O'Reilly
    1565924266Learning the vi EditorLamb, Linda11/98O'Reilly
    0133262243C: A Reference ManualHarbison, Sam10/94Prentice
    0201633469TCP/IP Illustrated, Volume 1: The Protocols (The Addison-Wesley Professional Computing Series)Stevens, W. R12/93AddisonWesley
    020165783XUML Distilled: A Brief Guide to the Standard Object Modeling Language (The Addison-Wesley Object Technology Series)Chan, Patrick07/99AddisonWesley
    1565926609Ethernet: The Definitive GuideSpurgeon, Charles03/00O'Reilly
    0130810819UNIX Network Programming, Volume 2: Interprocess CommunicationsStevens, W. R08/98Prentice
    0735709009Linux FirewallsZiegler, Robe11/99NewRiders
    0201447878The Practical SQL HandbookBowman, Judit10/96AddisonWesley
    0764546880Access 2000 ProgrammingPrague, Cary04/00IDGbooks
    0471375233Assembly Language Step-byJeff Duntemann05/00JohnWiley
    1884777791Object Oriented PerlConway, Damia08/99Manning
    1861001061Beginning Visual BasicConnell, John08/98Wrox
    186100088XBeginning Visual C ++ 6Horton, Ivor08/98Wrox
    1565926994Programming the Perl DBDescartes, Al10/99O'Reilly
    1565926099Perl for System AdministrationBlank-Edelman&nbsp ;04/00O'Reilly
    0789721325How the Internet WorksGralla, Prest09/99Que
    1565923901Learning the UNIX Operating SystemPeek, Jerry12/97O'Reilly
    1861003064Beginning SQL Server 7.Willis, Thear01/00Wrox
    0201563177Advanced Programming in the Unix EnvironmentStevens, W. R06/92AddisonWesley
    0471364142Operating System ConceptsSilberschatz01/98& nbsp;JohnWiley
    0136386776Operating Systems: Design And ImplementationTanenbaum, An12/96Prentice
    0131038052Artificial IntelligenceRussell, Stua12/94Prentice
    078212187XWeb Pages That Suck:Flanders, Vin03/98Sybex
    1565926536Database Nation: The DeGarfinkel, Si01/00O'Reilly
    1884777805Elements of Programming with PerlJohnson, Andr10/99Manning
    0201634546Java Tutorial, The: Object-Oriented Programming for the InternetCampione, Mar08/96AddisonWesley
    1571691626Waite Group's C++ PrimerPrata, Stephe08/98Sams
    1861002971Beginning Linux ProgramgMatthew, Neil09/99Wrox
    0201657880Programming PearlsChan, Patrick10/99AddisonWesley
    020163371XMore Effective C++: ThiMeyers, Scott12/95AddisonWesley
    020161586XThe Practice of ProgramKernighan, Br02/99AddisonWesley
    0201634953TCP/IP Illustrated, Volume 3: TCP for Transactions, HTTP, NNTP, and the UNIX(R) Domain Protocols (Addison-Wesley Professional Computing Series)Stevens, W. R01/96AddisonWesley
    1861003021Professional ApacheWainwright, P11/99Wrox
    0201848406Computer Graphics in CFoley, James07/95AddisonWesley
    0072121432Solaris 8: Complete ReferenceVeeraraghavan05/0 0Osborne
    0521431085Numerical Recipes in CPress, Willia10/92CambridgeUP
    0201924889Effective C++Meyers, Scott09/97Peachpit
    0201350882Algorithms in C++, Pts.Sedgewick, Ro12/98AddisonWesley
    0070119384FORTRAN 90 & 95 for ScientistsChapman, Step10/97McGraw
    1565923790Web Performance TuningKillelea, Pat10/98O'Reilly
    0672319144Teach Yourself MySQL in 21 DaysMaslakowski,06/00&nbsp ;Sams
    0201700735C++ Programming LanguageStroustrup, B02/00AddisonWesley
    0201874830The Macintosh BibleAker, Sharon11/98Peachpit
    020163337XTCL & the TK ToolkitOusterhout, J03/94AddisonWesley
    1565923510Web Navigation: DesigniFleming, Jenn09/98O'Reilly
    0131096532The C Answer Book:Tondo, Clovis11/88Prentice
    0789724103Information Anxiety 20009/00Que
    0133708756Ansi Common LispGraham, Paul11/95Prentice
    0201331438Linux Kernel InternalsBeck, Michael08/97AddisonWesley
    1565923774Win NT TCP/IP Network AdministrationHunt, Craig10/98O'Reilly
    1565922867Perl in a NutshellSpainhour, St01/99O'Reilly
    078972376XThink UNIXLasser, Jon07/00Que
    020156324XKornshell Script ProgrammingRosenberg, Ba07/91AddisonWesley
    073560505XCode: The Hidden LanguaPetzold, Char10/99Microsoft
    1565920546Learning the Korn ShellRosenblatt, B09/93O'Reilly
    1556155514Writing Solid CodeMaguire, Stev05/93Microsoft
    0596000464Learning XMLRay, Eric02/01O'Reilly
    0789723700The Art and Science of Web DesignVeen, Jeffrey12/00Que
    0735710465Dreamweaver 4 MagicAl Sparber, Craig Foster, Murray Summers05/01New Riders
    1565922476Learning VbscriptPaul Lomax, Ronald Petrusha10/97O'Reilly
    0596001320Learning Perl (3rd Edition)Randal L. Schwartz, Tom Phoenix07/01O'Reilly
    0596000081Linux Device DriversAlessandro Rubini, Jonathan Corbet07/01O'Reilly
    0596000200Essential SNMPDouglas R. Mauro, Kevin J. Schmidt07/01O'Reilly
    1565928415Applescript in a Nutshell : A Desktop Quick ReferenceBruce W. Perry06/01O'Reilly
    0596001703Java Cookbook: Solutions and Examples for Java Developers (O'Reilly Java Series)Ian F. Darwin06/01O'Reilly
    0596001584DNS and BIND (4th Edition)Paul Albitz, Cricket Liu04/01O'Reilly
    0596000405Java Servlet Programming (2nd Edition)Jason Hunter, William Crawford (Contributor)04/01O'Reilly
    0596000588XML in a Nutshell : A Desktop Quick Reference (Nutshell Handbook)Elliotte Rusty Harold, W. Scott Means01/01O'Reilly
    1565927443Sql in a Nutshell : A Desktop Quick ReferenceKevin E. Kline, Daniel Kline PhD12/00O'Reilly
    1565924002Linux Network Administrator's Guide (2nd Edition)Olaf Kirch, Terry Dawson07/00O'Reilly
    0735710899XML, XSLT, Java, and JSP: A Case Study in Developing a Web ApplicationWesty Rockwell07/01New Riders
    0735710015Vi iMproved (VIM)Steve Oualline04/00New Riders
    0735710880A+ Certification Training Guide, Third EditionCharles J. Brooks04/01New Riders

    --
    LinearB http://geekaustin.org
  362. Re:17,000 books? by LinearB · · Score: 1

    I have a data warehouse which includes Books in Print. Here's some additional points of reference: There are about five to six thousand computer books ranked in Amazon's top hundred thousand, the average Barnes and Noble "A" store stocks around 3500-4500 computer titles, and the average Borders "A" store stocks around 4000-5000 titles -- depending on the season.

    --
    LinearB http://geekaustin.org
  363. A large sign "Don't believe everything in books" by Zeinfeld · · Score: 2
    In a field like computer science why are we all recomending books almost twenty years old?

    A lot of folk recomend Knuth, how many people actually use it for more than a reference? The biggest problem with TAOCP is that it is asurvey work that is now twenty odd years out of date. Lots of stuff has been developed since. The other is that the algorithms are presented in pseudo-machine code.

    Don is a great guy, but he has been promising volume 4 since before I started grad school twelve years ago. If people are still using TAOCP as a guide to computer algorithms has it become a liability rather than a benefit? Would people read the litterature for newer and better techniques if they did not always go to TAOCP?

    Equally, the dragon book is somewhat questionable. yacc is a great tool for writing LR(1) parsers, only problem is that Chomsky's model of human grammars are not the best plan for computer languages. Back in the 80s we thought this stuff was wonderful, now it seems more like a backwards step.

    One book I can recommend without reservation is the Handbook of Applied Cryptography by Menzes, van Orschot et. al. This is the academic equivalent of Bruce Schneir's excellently readable but somewhat unreliable Applied Cryptography.

    Secret's and lies would qualify for being in the library but for the ridiculous claim that Bruce only just realized that security was about risk control. He showed no surprize when I mentioned that to him three years ago, and he certainly does not credit me with the discovery (which of course I am not). But he is certainly right that it is a good spin to sell books 'I have found the alchemists stone'.

    --
    Looking for an Information Security student project suggestion?
    Try http://dotcrimeManifesto.com/
  364. you need this one, fellas by anany01 · · Score: 1

    For my money, there are only a couple: Database: Principles, Programming and Performance by O'neil and O'neil Applied Cryptography by Bruce "O.G. Pimp Daddy" Schneier Programming Perl by Larry "The Man" Wall A Book on C by Al Kelley and Ira Pohl ...and last, but not least... Linux Kernel Internals (too many authors to list) These are the essentials right here folks. No question.

  365. The New Testament by Braudo · · Score: 2

    No computer book collection will be complete without The New Testament.

  366. The Soul of a New Machine by Tracy Kidder by vondo · · Score: 1

    Not a programming book, but a good yarn. I believe this won a Pulitzer prize. It's the story of the engineers at Data General and their efforts to build a competitor to the VAX-11/780, the MV-8000

    Possibly I'm biased to this book because I've used both machines, but this book is a really good read.

  367. Grady Booch by dwayrynen · · Score: 1

    I have maybe $10,000 of programming books on my shelves collected over the years, and the few that have stood the test of time (ouside of the obvious ones people have already listed - K&R C, anything by Bjarne Stroustrup, anything by donald knuth, etc), I *have* to mention Grady Booch... So add to the bookshelf anything with Grady Booch's name on it. Darin Wayrynen

  368. Thornton (if you can find one) by dfuller · · Score: 1

    Design of a Computer, the CDC 6600 by Thornton is essential and concise reading for anyone who wants to know what a computer actually does.

    Mind you, Hennessy, et. al. is a great piece of work but if you want to sniff bedrock and your library has a copy, you owe it to yourself to read it.

  369. Re:This will get troll marking but... by MSBob · · Score: 2

    No. They are awful. Every one of them. The ones I've read included C++ for Dummies, Corba for dummies (yes it does exist) and Java for Dummies. They were so bad it's not funny. Speaking of funny I found the kind of humour they used pretty obnoxious and distracting in general. I learned NOTHING from those books. Instead I picked up Effective C++ (Addison-Wesley), Advanced Corba Programming in C++ (Addison-Wesley) and The Java Programming Language (Sun Press) and was all set. It's better to go with tried and true. Dummies books are rags.

    --
    Your pizza just the way you ought to have it.
  370. Database Books by JsrNull · · Score: 1

    The Handbook of Relational Database Design - Fleming and Von Halle User-Centered Requirements Analysis - C. Martin (Currently out of print unfortunately) Both revolve loosely around the "Waterfall" model but the tips and techniques are great overviews of database system design independent of methodology or RDBMS. Database Relational Model - C.J. Date (History of Codd's contribution to relational databases. Relational Model for Database Management E.F. Codd

  371. The original and definitive by Joff_NZ · · Score: 1

    Gang of Four Patterns catalouged

    Title: "Design patterns : elements of reusable object-oriented software / Erich Gamma ... [et al.]. "

    Published: Reading, Mass. : Addison-Wesley, c1995.
    ISBN: 0201633612 (acid-free paper)

    --
    The revolution will not be televised. It won't be on a friggin blog either
  372. Being Digital, Nicolas Negroponte by dtrevino · · Score: 1

    A little older, and not about programming, but a very, very good book. Everyone should read it.

    --
    Embrace the wrevolution!
  373. Simple Internet Books by Atreides4 · · Score: 1

    Drawing on the expierience of my local library, the ones I see people taking out most are relatively simple books on the World Wide Web. For instance, HTML how-to guides are very popular and are fairly long-lasting by the standards of programming books. (The ones my library bought were HTML x.x for Dummies Web page design books are also good because the artistic portion of design stays static.

    --
    I posted and all I got was this stupid sig
  374. essentials by cowtamer · · Score: 1
    The only worthwhile programming book I own is:

    Unix Network Programming (Richard Stevens) [the first edition!]

    Probably the most complete and concise UNIX programming reference you can find (network or not).

    In addition, every CS student must read:

    Neuromancer (William Gibson)

    Snow Crash (Neal Stephenson)

    Hamlet on The Holodeck (Janet Murray)

    The last one (Hamlet) is one of the most insightful books I own, despite the corny title. Snow Crash is full of concepts waiting to be implemented and patented (yuk)...

    I had a CS professor who made Neuromancer and Hamlet on the Holodeck required reading for our VR class :)

  375. Boor-ring... by Tantrum420 · · Score: 1

    I mean the reference books are good an all, but how about something that's halfway fun to read? I would recommend something along the lines of Cyberpunk, Neromancer, etc... I'd like to expound a little more, but I gotta run. T

  376. Some of my favorites by __aadidx2690 · · Score: 1

    The C++ Programming Language -- Bjarne Stroustrup (ISBN 0-201-70073-5)
    The C++ Standard Library -- Nicolai M. Josuttis (ISBN 0-201-37926-0)
    The Mythical Man-Month -- Frederick P. Brooks, Jr. (ISBN 0-201-83595-9)
    Godel, Escher, Back: An Eternal Golden Briad -- Douglas R. Hofstadter (ISBN 0-394-75682-7)

  377. For the non-techy Grannies... by doubtme · · Score: 1
    While I didn't do this course, the introductory COMP course at Otago Uni uses Computer Confluence, by Beekman, which I have read.

    It is a good mix of basic windows concepts (menus, left and right clicking etc), basic hardware concepts (what is software, what is hardware, input and output) and a mix of applicatio specific stuff like MS Word. It's not a book for techies, but it's a very friendly book for non-geeks who just want to learn how to use a computer.

    There's no $$$ in 'team'...

    --

    There's no $$$ in 'team'...
    www..--..net - for incisive, w
  378. Good books. by Big+Sean+O · · Score: 1

    No one will read this because I'm such a johnny come lately to this topic, but here's my top 5:

    Code Complete taught me a _lot_ about programming. Plus, if it's in the library, you don't have to buy your own copy and pay Microsoft Press to read it (at least until corporate america repeals a library's lending provisions with the new DMCA).

    The Pragmatic Programmer is a "Mentor in a Box" for those programmers who don't have any programmer friends IRL.

    Think Unix is the first book that made Unix make total sense to me. Ever try learning Unix from _just_ the man pages?! Yikes.

    An Introduction to Database Systems by C.J. Date. This book is genius.

    Mastering Regular Expressions is another fine book. Enter with no knowledge and exit with a clear understanding of regex.

    --
    My father is a blogger.
  379. DB book and Java by cberetz · · Score: 1

    A great database theory book is the classic text by C. J. Date, An Introduction to Database Systems. I also love the Sun Microsystems Core Java series.

    Chuck

  380. From my experiences by number+one+duck · · Score: 2

    Advanced books are important, but not as important as some of the earlier stuff. Speaking from experience, its very frustrating at that age just before you can afford to buy what you want, when looking for a reference. You should at least have something for html, javascript, vb, everything that the relatively young might start with on account of them being somewhat accessable (*especially* javascript and html, since it doesn't require any expensive compilers or other setup).

    Anything college-level or above (advanced data structures, networking, yada yada) can *almost* be ignored... they cater for the most part to a group of people that are already well off enough that they aren't likely to choose the public library as their source of reference. My list:

    The O'Reilly HTML book (Atlantic Book Warehouse in Salisbury, MD still has a whole sale table full of lots of these).
    Javascript for the World Wide Web.
    * for dummies, where * is a programming language.
    A few random linux books with cd's (random helps keep us from homogenizing, of course), so long as people don't steal the cd's... sigh.

  381. The C++/C Bible by Electrawn · · Score: 1

    My library is filled with reference manuals and some books of algoritms. Basic technique books also might be a good add.

    I think a core book should be Jamsa's C/C++ Programmer's Bible By Kris Jamsa and Lars Klander. I also keep a 4.0 reference to QuickBasic...which was beat the hell out of in my earlier years. I wouldn't recommend that for a library though.

    1. Re:The C++/C Bible by Meffan · · Score: 1
      I think a core book should be Jamsa's C/C++ Programmer's Bible By Kris Jamsa and Lars Klander.

      I absolutely agree, that book got me into C/C++ programming from no knowledge at all. I still refer to it when coding in visual C++, as it's an incredibly rich source for good, simple examples of almost everything you could want to do in C.

      Kudos to Jamsa, Klander & the dalmation...

      --
      I don't think I'm very happy. I always fall asleep to the sound of my own screams.
  382. Categories & Suggestions by TargetBoy · · Score: 3

    Suggestions:
    "The C Programming Language"
    "The C++ Programming Language"
    "Programming Perl"/"Learning Perl"
    "Design Patterns: Elements of Reusable Object-Oriented Software"
    "Data Model Patterns: Conventions of Thought"
    "Designing Web Usability"

    Categories:
    A book on Discrete Mathematics
    A book on set theory
    A book on cryptographic theory
    A book on problem solving ("How To Solve it" is a good example)
    A book on the design and analysis of algoritms

    Somewhat OT:
    A machine with a CD-RW drive and links to www.linuxiso.org, promo.net/pg/ (project guttenburg), and similar sites. Let people BYOB (Bring Your Own Blanks) and let them burn CDs for stuff that is FREELY available on the net. Sell blank discs at cost+handling, like libraries do with other supplies.

  383. Similar subject in WikiWikiWeb by icoloma · · Score: 1
    I always recommend Wiki as the perfect place to start learning about... well, about life. It has topics that range from programming languages to patterns, job interviews and so on. It's hard to read (because it doesn't have this nice karma thing ;) but has very interesting points of view. A must-have-been for 1 month of every geek life.

    OTOH, the real reason why I am taking this now is because they already have this same question posted since more than one year ago here. Maybe you find this useful. They have the best books of some personalities (Alistair Cockburn, Michael Feathers, and so on).

  384. Excelent suggestion! by Tricolor+Paulista · · Score: 1
    Who moded this as redundant?! It's perfectly in tune with what libraries should be about: deeper research of subjects you are interested in.

    I must admit that my first thought was "Just get a O'Reilly mirror", but that's clearly not the answer, lest you've got infinite budget. Good mathematics, computer philosophy (that includes GNU's papers!) and OS design books seem to be a much more reasonable choice.

    Of course, more specialized libraries will want to keep their O'Reilly collection current!

    --
    Linux *is* user friendly. It's not idiot-friendly or fool-friendly!
  385. Code complete and ... by flippety_gibbet · · Score: 1

    I'd suggest Code Complete by Steve McConnell, published by Microsoft Press.

    Is non paper documentation allowed? I've always thought that Python Documentation (editor Fred L. Drake, Jr) is clear and well presented.

    For non computer books, I've found I Had Trouble in Getting to Solla Sollew to be an excellent motivator, full of food for thought.

    --
    <-- You are here.
  386. Don't forget hardware... by CoachS · · Score: 1
    Upgrading and Repairing PCs by Scott Mueller is the best basic PC hardware book you're going to find. Thorough and understandable.

    -Coach-

    --
    Perhaps the world's greatest tragedy is that ignorance is not impotence.
  387. Electronic Handheld Books by Uttles · · Score: 1

    No physical books at all. Libraries should have palm-pilot like devices that you could download information onto in order to read about computers. I think the internet is and will be for a long time the best source of information on computers. The only book a person could really use for good information about computers would be some sort of concepts book that includes historical commentary. I don't know of any off the top of my head, but something that told about the basic ideas behind computers and told the story of how computer technology reached present day... that would be something worth reading.
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    --

    ~ now you know
  388. Here are some recommendations by cyberkahn · · Score: 1

    I tried to list books that would not become too dated over time although some might:

    TCP/IP Illustrated, Volume 1: The Protocols W. Richard Stevens / Addison-Wesley / 0201633469

    Internetworking With Tcp/Ip Douglas Comer / Prentice Hall / 0130183806

    The C Programming Language Brian W. Kernighan / Prentice Hall / 0131103628

    Unix Network Programming, 2nd Edition, Volume 1; Networking APIs: Sockets and XTI W. Richard Stevens / Prentice Hall /013490012X

    Real World Linux Security : Intrusion Prevention, Detection and Recovery Bob Toxen / Prentice Hall / 0130281875

    Building Internet Firewalls, 2nd Edition Elizabeth Zwicky, et al / O'Reilly & Associates / 2000 / 1565928717

    A little dated but is still a good book IMHO:

    Firewalls and Internet Security: Repelling the Wily Hacker William R. Cheswick, et al / Addison-Wesley / 0201633574

  389. Re:A large sign "Don't believe everything in books by mgarraha · · Score: 1

    In a field like computer science why are we all recomending books almost twenty years old?

    Because the average practice lags thirty years behind the best practice. How many of you know a "Senior Programmer" who is unfamiliar with binary search trees?

  390. You mean you can still get info in paper form? by Telek · · Score: 1

    Quite seriously though, I have *never* bought a computer book in my 12 years with computers. Why would I spend upwards of $100 on a book when I can hit F1 or surf on the internet for 5 minutes to find everything I ever wanted to know about (insert topic here). If you want a library to have a resource for computer information, I'd seriously suggest finding some way to set up an ELECTRIC repository for this information. Have a set of computers set up that easily indexes and gives information on all of the latest topics in computing. I think that would have a much more effective model. Allow people to have this stuff "burned" to a CD or to a disk for a charge. Now wouldn't that be a neat idea? Go to a library, and get a copy of all the information you could possibly want on a topic for $5 on CD. That's a lot easier than carrying around a set of huge clunky books, and you don't have to worry about the shelf life expiring 5 days after the book is bought, especially when these books cost as much money as they do.

    --

    If God gave us curiosity
  391. All the Lamothe boks by robvasquez · · Score: 1

    Andre Lamothe is elite!

  392. Knuth, K&R, Minsky, Aho&Ullman, Brooks by sillivalley · · Score: 1
    Knuth's "Art of Computer Programming" volumes (shouldn't there be another one *any day now*?)
    K&R's C book
    Minsky's "Computation -- Finite and Infinite Machines"
    Aho&Ullman's Dragon book -- "Principles of Compiler Design"
    Fred Brooks "The Mythical Man Month"

    Knuth's books are classics. K&R is short and sweet. A&O still lays out the field clearly and concisely. Minsky's book explains the limits on computation.

    Oh, these are for the most part "computer science" books, and other than K&R, not "practical."

    Read what Fred Brooks wrote many moons ago, and see how far we've advanced -- we're still using the same damn debugging techniques that were used when computer memories used Wilkes tubes and little donuts made out of rust!

    Garnder's "Annotated Alice" should be on the list as well -- if you can't believe n impossible things before breakfast, you shouldn't be in the computer biz.

    namaste-

  393. Michael Abrash's Graphics Programming by KilljoyAZ · · Score: 1

    ...if you can find it. I think it's out of print :(

    --
    This .sig is currently on hiatus for retooling.
  394. Great OO book by kronin · · Score: 1

    I went through "An Introduction to Object-Oriented Programming, second edition" by Timothy Budd in my C++ class in college, and it is great. It's very short, sweet, and to the point, and doesn't tie it down to any programming language. Shelf life for this one is awesome.

  395. C and C++, as well as perl. by bsquizzato · · Score: 1

    I would suggest C and C++, since those are rather dominant languages today that won't be going away in the near future. Perl is also a strong language that is starting to get commonly used for many different things... from simplifying complicated tasks to running IRC daemons.

  396. Numerical Algorithms by sheeler · · Score: 1
    I don't see any suggestions for the Numerical Recipes series, which are extremely practical books, and what a library patron is extremely likely to want:

    A quick reference to a numerical algorithm to solve a task at hand.

    You would have to select one of the languages that the book is written for, so probably at this point Numerical Recipes in C is the best choice. Even before I learned C, I found this a useful reference for understanding how to implement numerical algorithms. There is quite a bit of narrative. I see that there is a new edition coming out in August 2002. Of course, over a year to wait is quite a while.

  397. Web publishing by sheeler · · Score: 1
    There seems to be a preponderance of highly theoretical books suggested so far. I guess, considering this is /. that one should expect that. But not everyone thinks of programming and networking when they think of computers.

    What about people who are thinking about getting into web publishing? I would suggest Philip and Alex's Guide to Web Publishing , which is a generic look at techniques for and design issues for putting together effective websites. Very common sense advice. The entire book is also available online.

  398. How about a book about the first programmer? by circletimessquare · · Score: 1

    Benjamin Woolley, "The Bride of Science: Romance, Reason, and Byron's Daughter"

    Betty A. Toole "Ada, the Enchantress of Numbers : A Selection from the Letters of Lord Byron's Daughter and Her Description of the First Computer"

    Here's more books about her.

    Apparently, women are trending away from computer science careers, so a book about Ada in the library might be a good influence on some young minds.

    We can forgive her for introducing the idea of using punchcards! ;-)

    --
    intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
  399. Handbook of Programming Languages by jamacdon · · Score: 1

    I would definitly include the 3 book set of "Handbook of Programming Languages". It breaks languages down into the 3 books and includes everything from C++, Pascal, awk, Python, Perl, Cobol, Fortran and Basic. They are well written and an excellent reference. They aren't meant to make you a guru by no means, but do show you how the language works with excellent examples. The set is also actually very cheap for the style of book it is. I have also only ever seen it in hard cover so it will probably get a little more respect in a library and can take more abuse. The author is Peter H. Salus and it is distributed by Macmillan-Technical Publishing Joe MacDonald jamacdon@hwy97.com

  400. Programming Pearls by ghoke · · Score: 1

    This collection of Jon Bentley's columns (from Communications of the ACM) holds timeless advice for developers. I'd recommend it as a language-neutral, think-before-you-write book for a wide range of audiences. I continue to use it in teaching HS C++ and Java, year after year.

  401. Geeks might not be the best folk to ask by cnelzie · · Score: 1


    I have been looking at a few of the posts and while they mention some truly awesome books that are worthy to be shelved in any library they seem to only cover the advanced topics.

    Even though I am sure to be flamed for this, I would have to recomend some easy to follow tomes such as the Peter Norton's guides. There are some on Windows 9x, Windows NT 4.0 Workstation and I believe server, Windows 2000 family. Recently, there is a Norton's Guide to Linux. While not the most technically challenging of books they can give a reader a fairly strong base knowledge that they can use to enter other more complex areas.

    The only major problem with a library stocking computer books on a wide range of subjects is that computer technology changes so rapidly that a book on an OS and even some programming languages is out of date within months of hitting the shelves.

    However, I have noticed that some books can last at least a few years before needing to be replaced. I own a well thumbed copy of SAMS Red Hat Linux 6.0 Unleashed. While it is out of date and I use more recent releases of Linux, several areas in this book are still extremely pertinent when it comes to configuring several aspects of Linux.

    I would have to recomend books on subjects that are varied and timeless. While UNIX books are not always easy reading this OS has remained relatively unchanged for many years. I am sure that there are several books for various levels of skill regarding UNIX and its cousins.

    --
    .sig
    --

    --
    If you ignore the other uses of a tool, does that make the tool less useful, or you less useful?
  402. Online Help by fodi · · Score: 1

    I find I'm able to research most topics online. The documents are free, easy to find (sometimes)and usually as informative as very expensive books. Perhaps trying to build a database of free, online documents might prove useful. With most professional texts costing over $AU100, you might find it a viable option.

  403. Don't forget ... by isj · · Score: 1

    For developers:
    "Modern Operating Systems" by Andrew Tanenbaum.
    "Prototyping" by Roland Vonk.

    For end-users the choice is more difficult because they will probably need some less abstract, resulting in books on contemporary applications and technologies. But I recall a book called "What computers can't do" which should be general.

  404. Magic Machine: A Handbook of Computer Sorcery by Chris+Y+Taylor · · Score: 1

    Magic Machine: A Handbook of Computer Sorcery
    by A.K. Dewdney
    ISBN: 0716721252

    It is mostly a collection of essays on computers from Scientific American. Its discussions on how computers work, how they don't work, and how to think about computers will probably still be relevent 50 years from now. The April Fools computer joke about the archeological dig of an ancient rope and pulley computer is great, too.

  405. Books by Subject by Saratoga+C++ · · Score: 1
    I personally think that we shouldn't be looking for titles at the moment but looking at separating the fads (.net, I hope) to technology that is here and will most likely still be here in 5-10 years (a serving of C anyone?). Here are the topics that I'd like to see in a library.

    Programming theory (OOP or otherwise).

    x86 architecture theory (Hey its been here for over 15 years why not longer).

    Algorithms, not in any particular language but just the "how-to" for problem solving.

    UNIX and w32 (I'm sorry but I just don't see it dying any time soon) programming theory and structure.

    For languages I'd try to limit it to languages that are still widely used (i.e. c/c++) and languages that just wont die (i.e. COBOL).

    A good terms Dictionary or two would be nice too.

    And Thats my $.02

  406. Ask Microsoft... by Saeger · · Score: 1
    No really, ask Microsoft what a geek library should should consist of. They have quite a nice and complete geek reference library at their Redmond campus.

    Maybe get an employee to send you their index to make light work...

    --
    Power to the Peaceful
  407. The Desert Island... by dghcasp · · Score: 1
    What books would you recommend for a desert-island library collection?

    I got my first computer book in Grade 4 (1978 to the rest of you) and it was called "Computers at Work." If this question had been asked at that time, I'd expect (from the replies here) that the list would have looked like:

    IBM 370 Assembly

    JCL: The complete reference

    Fundamental Algorithms in Algol

    APL Quick Reference

    Application development in COBOL

    &c...

    Were I rescued today with those books, I don't think I would have much luck programming, because they all are based on the "flavours of the time." Would someone 30 years from now find a C++ manual useful? Probably only if they wanted to be like a COBOL programmer today, forever fighting to keep legacy code alive.

    Programming evolves. All languages live, die or transform beyond recognition; knowing Algol doesn't mean you will be able to code in (insert modern language here) without a learning curve.

    Because of this, the "timeless" books are the ones that are rooted in that which doesn't change: Pure theory or mathmatics. The ones we hardly ever look at after we graduate.

    But even if you spend 25 years on that island memorizing "Data structures using pure recursion" and "Elements of the Theory of Computation," your skills still aren't going to help you program. Prepare you for a Ph.D. program, well...

  408. Absolute Necessity! by Moonza · · Score: 1

    Windows For Dummies! Has this been posted 1000 times? I didn't look before I leaped! :)

  409. Tales of pirx, the pilot - by Stanislaw Lem by KlausB · · Score: 1

    It is actually a collection of sci-fi short stories, but for everybody who is going to do any real-time programming, this is a must read !

    The best story, which was written, if I remember correctly, in the early fifties, describes how a program for a complex guidance computer for a manned spaceship is overdesigned by a paranoid programmer and eventually chokes on complexity in a critical situation.

    Don't ever board a plane unless you are sure the designers of the software read this book !

  410. Mythical Man Month -2nd Ed. by jeffphil · · Score: 2

    Mythical Man Month has been posted, but for some of the oldtimers out there who read this many years ago - there is a 2nd Ed. [1995] that came out for the 20 year anniversary. Reading it again.

  411. Don't forget _The Cuckoo's Egg_ by WannaBeGeekGirl · · Score: 1

    This novel by Stoll is a classic IMHO when it comes to computer books. Even after all these years its still loaded with useful information -- the bonus is that this book is one of those 'hard-to-put-down' suspense-type novels.

    --
    ~WBGG~ "And I'm so sad like a good book I can't put this Day Back a sorta fairytale with you" ~Tori Amos
  412. A C++ must have... by panker · · Score: 1

    The C++ Programming Language. from the creator himself Bjarne Stroustrup

    --
    move along, nothing to .sig here.
  413. Two Books to Explain How Computers Really Work by eyesyte · · Score: 1
    Computer Science, an Overview by J. Glenn Brookshear
    (Addison- Wesley, 6th ed., 2000) (How many of you had this for a text book?)

    Code, The Hidden Language of Computer Hardware and Software by Charles Petzold, 2000.
    (Yes, its published by Microshit - so get it at your public library)

    --
    Logic is overrated.
  414. Soul of a New Machine a history must by ph8ts2l · · Score: 1

    Tracy Kidder's Soul of a New Machine is a great look at the lives and challenges facing a small army of engineers in the late '70's, in their building an early 32-bit microcomputer. Maybe not a computer book per se, but a must for the history of computer development.

  415. Timeless books by pmz · · Score: 1

    There are a lot of computer-related books that are timeless. This may suprise the readers of those flashy something-unleashed or learn-something-in-15-minutes books.

    Library rule of thumb: 90% (perhaps 99%) of the books at your local bookstore are garbage. Hesitate to buy any book that is 2 inches thick with a single (often vague) topic, such as "Internet Programming" (how does one program the Internet?). Don't get pulled in by the hype. Also avoid version-specific books, such as "Using Word 97" as they are good for a maximum of five years (if not fewer).

    I second the above votes for Brooks' "The Mythical Man Month." It is 26 years old and still worthwhile to read. It is a computer book that is really about people--hence it is timeless.

    Other high level books, such as Object Oriented Analysis books, are good, because they address how people go about designing software--hence they are timeless.

    Philosophical books, such as Eric Raymond's "The Cathedral and the Bazaar" are good for a library, because they are a part of our computing history--hence they are also timeless.

    Again, don't get pulled in by the hype. There are a precious subset of computer books that are cited time and time again in literature, have withstood years of criticism and have formed loyal bases of readers. These are the books that should go into a library.

  416. Books you MUST have by The+Net-worker · · Score: 1

    My background is networking so that's the primary focus here...
    TCP/IP Illustrated Vol 1,2,3 - Steves, Addison-Wesley pub.
    Unix Network Programming Vol 1,2 - Stevens, Addison-Wesley pub.
    (actually anything written by Stevens is good...)
    Internetworking with TCP/IP - Comer
    (most of Comer's books are good)
    Design Patterns - Eric Gamma, Addison-Wesley pub.
    C++ Primer - Lippman, A-W pub.
    C Programming Language, Kernighan & Ritchie, Prentice-Hall pub.
    Bjorn's book on C++ (OF COURSE).
    Managing Internetworks with SNMP, Miller, M&T Books pub.
    Troubleshooting TCP/IP, Miller, M&T Books pub.
    Operating Systems: Design and Implementation, Andrew S. Tanenbaum, Albert S. Woodhull, Prentice-Hall pub.
    Computer Networks, Albert S. Tanenbaum, Prentice-Hall pub.
    The series by Harvey Deitel & Paul Deitel on programming, excellent for beginners.
    and of course the bibles .... TAOCP Vol 1,2,3, Knuth

    Hell, just get Addison-Wesley's catalog and order
    then get O'Reilly's catalog and order... that's the start point.

    --
    ---- The world is a network, just some people are still using 300 baud dialup. ---
  417. Every bookshelf needs... by AnonymousComrade · · Score: 2

    ...Knuth. And Wall. But stay away from the Gates.

    1. Re:Every bookshelf needs... by mdbritt · · Score: 1

      The only problem with reading Tannenbaum's books on OS architecture is that they presuppose that one will be working with a real OS. Since 90% of today's computers don't actually run a real OS, this type of book might be REALLY confusing...

  418. Linux distros? by natesch · · Score: 1

    What I want to know is why they don't have linux distros on CD at libraries. I don't know if anyone has seen this, but I think it would be a great way to get Linux out to people who want it. When I first got Linux I had a hell of a time getting a CD (56K, no linux friends, no money etc.) The library is like the open source branch of The System (or was), it should definitely be put to use.



    ---

    --

    ---
    Hey man, can I bum a sig?
  419. suggestions for books by ljhornist · · Score: 1

    In the Website writing/design section: The Chicago Manual of Style and a good technical writing handbook. A beginning typography manual - mine is "Stop Stealing Sheep" (Erik Spiekermann & E.M. Ginger, Stop Stealing Sheep & find out how type works, Mountain View (CA) Adobe Press, 1993, pp.174, ISBN 0672485435.) Books on advertising research are also helpful ie: why people look at what they do. Also "Ogilvy on Advertising" by David Ogilvy.

  420. The Best by docasm+ · · Score: 1

    Code Complete, Programming Windows, Knuth's volumes, Concrete Mathematics, the Revolutionary Guide to Assembly Language, Upgrading and Repairing PC's (Mueller), Linux Unleashed (of course), Windows Assembly Language and Systems Programming, and books covering the foundations of computer theory (cellular automata). unfortunately, my local public library doesn't books of this nature and i have to resort to buying them myself. i hope i was of some help. Doc

  421. Canonical Tomes by 7s · · Score: 1

    There's a web site for this. It covers not only tech books but just about every other field too; fiction and nonfiction:

    Canonical Tomes

    It's also user submitted, so if you have a favorite that's not listed, you might want to recommend it there.

  422. some books: by cdn-programmer · · Score: 1

    Numerical recipes - Press, Flannery,etc. Get the C version Network Programming (2 books: Networking API's and Interprocess Communications)- Stevens Building Linux and OpenBSD firewalls - Sonnenreich, Yates SSL adn TLS - Designing and Building secure systems - Rescorla Writing APACHE Modules with Perl and C - Stein, MacEachern Red Hat Linux boxed set!!! - Many people are too poor to buy it. Poor people have kids too and these teenagers are left out. A PC can be found for nothing but they won't know where to get the OS. Any other distro will be fine too.

  423. Gray and Reuter by FeatherBoa · · Score: 1

    Transaction Processing Concepts and Techniques Jim Gray and Andreas Reuter ISBN 1-55860-190-2 Morgan Kaufmann

  424. Don't Forget Richard Stevens by SpyderMD · · Score: 1

    The three Unix programming books by Richard Stevens are all excellent: 1. Unix Network Programming, Volume 1 2. Unix Network Programming, Volume 2 3. Advanced Programming in the Unix Environment I hear the TCP/IP series is really good too.

  425. Re:Structured Computer Organization by agent0range_ · · Score: 1

    I also recommend this book. I've had it for years, and it's very informative. Not only that, but the author has a good sense of humor and it's a pleasure to read.

  426. Theory, Architecture, Mathematics, and Logic by Nalfein · · Score: 2

    The basics? Here are a few I still use to today. They're certainly not a total covering of CS, or Computing for that matter, but they cover some important basic CS.

    Theory:
    * "Languages and Machines: An Introduction to the Theory of Computer Science", Sudkamp, T. A.

    Introduces the basic concepts of languages and computing, relating the two using formal languages and state machines. Complete and clear.

    * "Computers and Intractability: A Guide to the Theory of NP-Completeness", Garey, M. R., Johnson, D. S.

    This one is a classic. Covers the NP(-Complete,-Hard,...) theories, problems ("what is a problem", examples), much more.

    Architecture:
    * "Structured Computer Organization", Tannenbaum, A. S.

    Covers the design of a common-day (err 1980-1990) computer from the ground up.
    Might be a bit dated, but still good stuff.

    Mathematics:
    * "Discrete Mathematical Structures for Computer Science", Prather, R. E.

    A must for understanding logic and proofs.

    Logic:
    * "Digital Logic and State Machine Design", Comer, D. J.

    Want to design, implement and test computer hardware? Please read this; Good stuff.

    --
    -- Brian
  427. Books for a library by mdbritt · · Score: 1

    A classic algorithms book is Aho, Hopcroft and Ullman's The Design and Analysis of Computer Algorithms. I first used it in graduate school about 15 years ago but this is one area of CS that does NOT change very rapidly. On FatBrain.com, the only A,H,U book I see is Data Structures and Algorithms which may well be an update... HTH MDBritt

  428. Books Listed by Subject Area by flyingindian · · Score: 1

    I would suggest dividing the topic of computers into some broad areas which you think should be covered by a library and then find the good books in those areas. You want books of general interest which a person with keen interest in computers would be able to use and learn from (not highly specialized books). I have tried to list areas which cover the general areas of computer studies. Plus in the areas I have some knowledge I have given a list of useful books.

    Algorithms/Data Structures

    Donald E Knuth, The Art of Computer Programming, Vols. I - III

    Robert Sedgewick, Algorithms

    Leiserson, Cormen, Rivest, Algorithms

    Horowitz, Sahni, Fundamentals of Data Structures (get one of the editions around 1990 using C)

    Programming Techniques/Languages

    Kernighan, Ritchie, The C Programming Language, 2nd ed

    Bjarne Stroustroup, The C++ Programming Language, 3rd ed

    + insert the book on your favorite programming language here.

    Software Engineering/ Design & Development Techniques

    F.P. Brooks, The Mythical Man Month

    Gerald M Weinberg, The Psychology of Programming (book may be out of print but is an interesting read)

    Gamma et al (I don't remember the other authors' names), Design Patterns

    Following two books (even though by MS Press are very good)

    Steve McConnell, Code Complete

    Steve Maguire, Writing Solid Code

    Computer Networks

    Andrew S Tanenbaum, Computer Networks, 3rd ed

    Davies and Patterson, Computer Networks, A Systems Approach

    W Richard Stevens, TCP/IP Illustrated, Vol 1 and 2

    Doug Comer, Internetworking with TCP/IP, Vol 1 and 2

    some books on web development (HTML, Perl etc) and general info about the Internet would also be useful but I don't know the right books.

    Operating Systems

    Peterson, Silberschatz, Galvin, Operating System Concepts, 6th ed

    Andrew Tanenbaum, Modern Operating Systems

    plus a book on practical OS design

    McKusick, Bostic, Karels, The Design and Implementation of the 4.4BSD Operating System

    Computer Architecture

    Patterson, Hennessy, Computer Architecture A Quantitative Approach, 2nd ed (an advanced book)

    Patterson, Hennessy, Computer Organization and Design : The Hardware/Software Interface

    Databases

    C.J. Date, An Introduction to Database Systems, 6/7 ed

    Silberschatz, Korth, Sudershan, Database System Concepts

    Security/Cryptography

    Bruce Schneier, Applied Cryptography

    Numerical Computing

    Press, Teukolsky et al, Numerical Recipes in C : The Art of Scientific Computing

    Computation Theory

    I do not have a good idea

    some book on Artificial Intelligence

    Compilers Aho, Sethi, Ullman, Compilers: Principles, Techniques and Tools (the dragon book)

    Computer Graphics

    Foley, van Dam et al, Computer Graphics: Principles and Practice

    some book on Fractals since it is an interesting topic

    PC Maintenance

    i have no idea here but these are of practical value.

    Computers and Society

    some books which explore the effects of computers on society and interaction between the two.

  429. Thanks by PRays · · Score: 1

    As a librarian in charge of our computer book collection I would like to thank you all. Tomorrow I will go to work and see which of your suggestions my library doesn't have. I am a little smug in that I know we have some of them already ...

  430. Timeless classics? by Henry_Doors · · Score: 1

    Not many of these in the IT world but I think,

    Code Complete by Steve Mconnell
    Software Project Survival Guide by Steve Mconnell
    Cuckoo's Egg by Cliff Stoll
    Close to the Machine by Ellen Ullman
    all come close, the last two are also a good read.

    One of the Dilbert books - probabaly 'The Dilbert Principle' should be there as well.

    A bit more specific but I've just finished ' The Book of JavaScript by Dave Thau and would strongly recommend this. It assumes no programming knowledge and is a book I would give to anyone who was interested in learning to program.

    --
    "I deny nothing, but doubt everything." Lord Byron
  431. Books I have liked over the years by jchristo · · Score: 1

    Definitely the Knuth series. I bought the first printings over twenty years ago, still have (latest) printings over my desk. Pragmatic Programmer (Hunt & Thomas) also very good (much more recent vintage) in demonstrating basic principals, as well as the Programming Pearls books by Bentley. None of these books particularly biased toward any language or OS, so stand the passage of time well. The Design Patterns book is also excellent, but I am not sure that they will make a lot of sense for a public library.

  432. Andrew S. Tanenbaum by Bramah · · Score: 1

    Tanenbaum has written a whole series of textbooks that are really incredible learning resources. They cover all of the essential topics in computer science without being so specific that they are prone to becoming out of date rapidly. They are also extrodinarily well written. titles include: Structured Computer Organization Computer Networks Operating System Design and Implementation Modern Operating Systems Distibuted Operating Systems

  433. YABL (Yet Another Book List) by Mister+Mudge · · Score: 1

    1) The C Programming Language - Kernighan & Richie
    2) The Art of Computer Programming (all) - Knuth
    3) UNIX Network Programming - Stevens
    4) TCP/IP Illustrated (Vols 1-3) Stevens
    5) The Mythical Man-Month - Brooks
    6) Programming Perl - Wall et al.
    7) Java In A Nutshell - Flanagan

    --
    Mudge

    In theory, theory and practice are the same.
    In practice, they're not.

  434. Not yet mentioned by enbody · · Score: 1
    "Computer Power and Human Reason : From Judgement to Calculation" by Joseph Weizenbaum is an excellent overview of CS topics for a general, educated audience. It is over 25 years old, yet still relevant. Amazon.com still sells it.

    Technical, but easy to read books on circuits are the ones by M. Morris Mano published by Prentice Hall such as "Computer System Architecture".

    -rich enbody@cse.msu.edu

  435. Books by medeii · · Score: 1

    Being a designer ... I've got a vested interest in seeing a few non-programming books dumped on those library shelves.

    1. The Visual Display of Quantitative Information, by Edmund Burke.

    It's almost more math than design, but so many of the principles within apply to more than charts and graphs.

    2. Graphic Design for the Electronic Age (author forgotten.)

    I know there's an author for this book out there, and it's nearly out of print, but it's one of the best books I've seen about paper design. Most, if not all, of the methods and theories that it presents apply equally to web design.

    3. The Non-Designer's Design Book, by Robin Williams.

    No, it's not the actor (thank your deities for that. Her discussion on fonts should be required reading ... in that perfect world where WYSIWYG editors are banned, of course, along with fonts like Comic Sans.

    That's all I can think of for now.

    --
    got standards? --- http://www.w3.org/