Please turn on javascript in your browser to play chess.
Developers Forum

Developers Forum

  1. Standard member gregoftheweb
    The Great Gonzo
    19 Dec '03 19:03
    I'm looking for any recomendations for good computer science books. I am currently trudging my way through Knuth's The art of Computer Programming right now.

    What Comp Sci books have influenced you the most?

    For me it has been:
    Code Complete - Steve McConnell
    http://www.amazon.com/exec/obidos/tg/detail/-/1556154844/qid=1071860050//ref=sr_8_xs_ap_i0_xgl14/103-2975002-2619846?v=glance&s=books&n=507846

    Aboslutely superb book on the proper techniques in producing quality production code.

    Code: The Hidden Language of Computer Hardware and Software - Charles Petzold
    http://www.amazon.com/exec/obidos/tg/detail/-/0735611319/qid=1071860128/sr=1-1/ref=sr_1_1/103-2975002-2619846?v=glance&s=books

    Great book on how a computer is constructed from Morse Code - simple relays - Logic gates - switches - Ram and all the way up. Awesome book.


    The Object-Oriented Thought Process - Matt Weisfeld, Bill McCarty
    http://search.barnesandnoble.com/booksearch/isbnInquiry.asp?userid=2V0PJ327K4&isbn=0672318539&itm=2

    Another Great book explaining OOP.

    Anybody else got some favorites? Not really looking for specific language books (I have dozens of those) more along the lines of Comp Sci Theory books?
  2. Standard member StrayJay
    I'm like a nerd
    18 Jan '04 03:31 / 9 edits
    My best friend has Knuth on his shelves but I expect very few people will actually read that; I know I'm going to steer clear from his books!

    To answer your first question, I think the books that influenced me most are:

    1) the BASIC programming manual that came with my first computer, an Acorn Atom. :-) It got me hooked on programming. I still remember the title of one of the last chapters: "What To Do If Baffled"; I remember it because, as a 14 y/o native Dutch speaker, I had to look up what 'baffled' means...

    2) "Data Structures with Abstract Data Types and Modula-2" by Stubbs & Webre. It's 17 years old by now, but I don't think I'll ever get rid of it. It was mandatory material at my uni (the Vrije Universiteit in Amsterdam) and I remember that back in 1992 I did not 'get' what is special about Data Structures and ADT's. The contrast with my current situation (I dream in data structures :-) is remarkable. Programming IS manipulation of Data Structures.

    3) "Programming Windows with MFC" by Jeff Prosise. I think of this as "my cash cow book"; I read the first 16 chapters/983 pages in 9 days and for the following two years, it earned its purchase price back once every day --it cost about $95. It is now the most heavily used/damaged book on my shelves*. A couple of years ago I sent an e-mail to thank Mr Prosise for writing it.

    4) "Parsing Techniques, A Practical Guide" by Dick Grune et al. Grune (http://www.cs.vu.nl/~dick/; the book can be downloaded from this site) was my favorite lecturer at the aforementioned uni, and/because he is a very likeable person. He also wrote the famous CVS-software, and a book titled "Programming Language Essentials". I don't even mean to emphasize my nerd status when I say that this books makes for some very nice, light, interesting bed time reading...

    I also have the "Code" books that you mention, plus "Writing Solid Code", but I can't say they influenced me all that much. Although "Solid" did describe some interesting concepts.

    Answering your second question, regarding recommendations: here are some classics from some areas that I am interested in, in random order:

    - "Computer Graphics, Principles and Practice" by Foley & Van Dam.
    - "Algorithms" by Sedgewick.
    - "Database Systems" by C.J. Date.
    - "Compilers. Principles, Techniques, and Tools" (a.k.a. "The Red Dragon Book" ) by Aho, Sethi & Ullman
    - "Programming Language Concepts" by Ghezzi & Jazayeri.
    - "Object Oriented Software Construction" by Betrand Meyer.

    Let me know if/when you tried any of these, and what you think of them.

    StrayJay.


    * This isn't entirely true: my copy of "Fundamentals of Database Systems" by Elmasri & Navathe is slightly more damaged, but that's because it's a paperback, whereas Prosise is a hardcover. I definitely used Prosise much more often.
  3. Standard member gregoftheweb
    The Great Gonzo
    23 Jan '04 18:41 / 1 edit
    I have Knuthe's first book but it is kinda like reading Finigan's Wake at the moment. I will probably attack it again after I finish one of my current books (I am always reading about 4, seems about my limit).

    I downloaded the "Parsing Techniques, A Practical Guide" book that you recomended and will skim it and then buy it if it is as good as you say.

    I am hesitant to buy a 17 year old book ("Data Structures with Abstract Data Types and Modula-2" ). I mean Code Complete is 12 years old and it was very helpful. But I am doing primarily ASP.Net stuff right now so I'm not sure how helpful it would be.

    Of the recomended books can you provide a bit more detail on - "Algorithms" by Sedgewick. That one looks particularly interesting to me.
  4. Standard member StrayJay
    I'm like a nerd
    23 Jan '04 19:12 / 1 edit
    I browsed through the Knuth series and thoguht it was way too... uhm. theoretical for my liking.

    I did NOT recommend Parsing Techniques, I only said it influenced me a lot. If parsing isn't your thing, the book is too technical and specific to be of any use to you. And it's out of print, though I understand the Springer publishing company will release an updated version of the book. Which I will buy when it's out.

    The same goes for the Data Structures book: it influenced me, but I'm not necessarily recommending it to anyone. It's probably out of print, also.

    For mre info the the Sedgewick book(s), see the author's homepage: http://www.cs.princeton.edu/~rs/.