babellog

Friday, September 17, 2004

The List

88Pro once said quite correctly that what sets apart the IT industry from the others is its maturity(or rather the lack of it). But IT being in it's infantile stage is not without its benefits; the body of knowledge being quite small, it enables the bibliophiles amoung us to acquire a decent CS library. I've been wanting to compile a list of timeless CS books; the classics; the bibles. So to start things off ...

Programming

1. The Art of Computer Programming (Volumes 1,2,3) - Donald Knuth
2. Data Structures and Algorithms - Aho, Ullman, Hopcroft
3. Compilers, Principles, Techniques and Tools - Aho, Sethi, Ullman
4. The C programming Language - Kernighan & Ritchie
5. The C++ Programming Language - Bjarne Stroustrup
6. Algorithms + Data Structures = Programs - Niklaus Wirth



Databases

1. An Introduction to Database Systems - C.J Date

inzy winsy start, soooo, add away people...

9 Comments:

  • At 9:12 PM, Blogger longdeparted said…

    This comment has been removed by a blog administrator.

     
  • At 9:26 PM, Blogger gumz said…

    I knew Larry Wall will be the 1st on your list! And I just bought the mythical man month today. question, can we describe mmm, pressman & somerville as classics? or timeless?

     
  • At 9:57 PM, Blogger longdeparted said…

    Wow, blogger ate my comment. Or something.

    Lessee, I think this is going to be rather subjective series of choices (not to mention long) from me, so feel free to comment/contradict.

    Programming Perl by Larry Wall, et alPragmatic Programmer by Andrew Hunt and David ThomasProgramming Windows by Charles PetzoldPeopleware by Demarco and ListerMythical Man Month by Fred BrooksSoftware Engineering by Pressman (Ian Somerville is also an option, I guess)

    Design Patterns by Gamma et alModern Operating Systems by Andrew TanenbaumMastering Regular Expressions by Jeffery FriedlI guess a few titles by Steve McConnell might also make that list, but I thought I'd give the other software engineering people a chance ;)More ?

    Kernighan's Unix Programming EnvironmentProgramming PL/SQL by Steve FeuersteinC++ STL reference by JosuttisArtificial Intelligence: the modern approach by Russel and NorvigProlog for AI by Bratko*cough* couldn't resist slipping in one of my favourites this year (I'll appreciate it better when I finish the year, I think)

    Modern Information Retrieval by Baeza-Yates and Ribiero-Neto

     
  • At 10:04 PM, Blogger longdeparted said…

    wow. Blogger commenting HTML is braindead :o This is the second attempt after the first post got borked.

    Hmm, well, Pressman and Somerville are authoritative sources of software practices, at least for most undergraduates doing SE. Quite a few people have read them. I included them on that basis, actually.

    I suppose the problem with technologies in particular is that they become out of date. Anyone looking at the first edition of Petzold, for instance, will find that it deal with Windows 3.1 :) That's why I've sorta stopped buying technology related books and concentrated on more high level stuff. That and my mother threatening that she's going to do a cleanup of the shelves real soon now*grin*

     
  • At 10:31 PM, Blogger gumz said…

    Yeah, everyone goes through sommerville and pressman( I actually bought both in a spurt of undergrad madness), or is forced to rather. I find a significant part of it hopelessely dated. There must be a more authoratative work on SE, especially in the light of The Cathedral & Bazaar.

     
  • At 10:32 PM, Blogger gumz said…

    networks and databases anyone?

     
  • At 11:09 AM, Blogger 88Pro said…

    Most of what I would have covered has been already covered by Thimal. My favorites are Pragmatic Programmer and Peopleware. Here is my two cents,

    Code Complete, By Steve McConnellProgramming Pearls, by Jon Louis Bentley, Jon BentleyAlso since we are posting links to Amazon thought this would be an interesting read on how to shorten Amazon URLs.

     
  • At 6:18 PM, Blogger longdeparted said…

    Hmm, I don't think I have any to add to networks and databases. The problem (where I am concerned) is that I do both by the seat of my pants, so I am rather err.. uncultured. I'm not a student per se, but a practitioner of sorts, so I read a lot of "how-to" books rather than theoretical stuff.

    Elmasri and Navathe, maybe ? (I think we have too many textbooks in this list already, though).

    Not sure if the books being dated is common to just the SE stuff, though, Gumz. I mean, to be perfectly honest, I wanted to add Winn L. Rosch's hardware bible to my original list, but that still covers hardware from the early part of the decade. Ditto some of Peter Norton's books. Yes, no one really does asm anymore, and the newfangled processors support a dazzling array of primitive instructions, but as an introductory text ....

    Oh, almost forgot this one Refactoring by Martin Fowler. I'd cynically include some Dilbert books and other related things, but err.. never mind.

     
  • At 6:18 PM, Blogger gumz said…

    I think i was wrong when i said dated. The divide, i think, is between the timeless and non-timeless. Sure not many people do asm, but there is knowledge there that is timeless; did you mean Peter Abel btw? practitioner books(the how to type) are fine and definitely help you out 'on the job'. But I think my intention was to try and get those books that capture the 'essence' of the subject, the books you want to go through leisurely, read late into the night for no immediete goal, just to see where we are and where we are headed. I was looking for a candidate for Architecture, So thimal, your suggestion on that front is welcome.

    oh and btw, my mom was threatenig to do the cleanup thing for years. never happenned. I think you're safe ;).

    AI?

     

Post a Comment

<< Home