Breaking Eggs And Making Omelettes

Topics On Multimedia Technology and Reverse Engineering


Regarding The Literature

December 22nd, 2006 by Multimedia Mike

I journeyed to the bookstore today in search of an O’Reilly pocket-sized Python reference, in an effort to tip the balance toward the positive in my newfound love/hate relationship with the Python programming language. I found what I was after, and on prominent display. I had not perused the computer book aisle in quite some time so I took a moment to look around. Every current and trendy computer language and development fad was well-represented, including a few of which I was previously unaware. That’s when it dawned on me how hard it is to find a simple book on the C programming language in these sections.

Maybe C just isn’t good for selling books.

Stack of books

This episode reminded me of the difference I observed long ago about the differences in computer book selections at bookstores vs. academic libraries vs. public libraries. A bookstore will stock thick, vastly expensive tomes covering whatever the latest hot computing fad or language happens to be (wait for the fad to blow over and in 6 months the book will be less than $10 on the clearance table). Rewind 10 years to 1996 when Java was taking off in a big way. I think the local Barnes & Noble shop had an entire section devoted to the language. And I seem to remember that every one of the books was essentially the same: A few chapters discussing the basics of the language, with the remaining 4/5 of the book devoted to a verbatim reprint of the official Java language and API reference that was freely available online.

An academic library, such as the one found at your local technical university, will stock a few of the fad books about specialized skills but will feature far more texts on fundamental and advanced computer science theory (think “general theory of fishing” vs. “learn bass fishing in 3 days!”). A community public library, in my experience, will have a decent mix of both types of books.

Posted in Programming, Python | 6 Comments »

6 Responses

  1. Robert Swain Says:

    At the university I went to they mostly teach Java. They do teach other languages but the emphasis is definitely Java. As far as I’m aware, most of them who really know their stuff actually steer clear of it. Another thing I’ve noted, people are all over C++ and everyone dislikes C.

    Looking for jobs, most people seem to want C++ or .NET. .NET is wholly uninteresting by definition, for me at least. I don’t know. :) Did you notice a lot of C++ books? More than you would have expected…?

  2. Multimedia Mike Says:

    There probably were a a fair number of C++ books, but I didn’t look too hard for those. I can recall the days (early-mid 1990s) when C++ tomes were dominant on the bookstores’ computer shelves.

    Just remember that the specific skillsets and hot languages change over time (Cobol – C – C++ – Java – .Net, for example), but the underlying concepts and theory rarely do.

  3. Kostya Says:

    That is the exact reason why ‘The Art of Computer Programming’ has virtually all code written in MIX assembler (except some random generator code in C and Fortran). And while there are almost no true MIX programmers this book is still valued high.

  4. Multimedia Mike Says:

    Interesting… never heard of MIX assembler.

  5. Kostya Says:

    Well, it’s assembler for imaginary computer invented by Knuth.
    If you’re interested look here for stuff

  6. Sisir Koppaka Says:

    Well, not all languages have a K&R book… :)

    We have a C course here, and usually, most people find it difficult to progress through that one – more so due to lack of previous knowledge about C. So many friends keep asking for a good C book, and when I show them my K&R and tell them it’s the only C book I *seriously* read, they nod and go back to their guidebooks and stuff – the sort of books you encountered here.

    It takes a K&R to immortalize a language, I guess.