Every IT professional should have a library of the classics in their field. This blog entry offers a short list of books that belong on every computer professional’s book shelf.
Although the main focus of this blog is data management, I thought it would be worthwhile to take some time to recommend a few classic books for computer professionals. I am an avid reader of all kinds of books, not only on technology but on a wide variety of topics. Periodically I will use this blog to extoll the virtues of some of my favorite books. For example, earlier this year I blogged about My Favorite SQL Books.
I figured since everyone reading this blog is probably in the field of I.T. (…except maybe my Mom… Hi Mom!) that generalizing from data management to I.T. was not a big stretch. So, here goes, my coverage of a nice starter set of 3 computer books (well, 6 or 7 actually)…
Number One: The Mythical Man-Month (Addison-Wesley Pub Co; ISBN: 0201835959). Brooks is best known as the father of the IBM System/360, the quintessential mainframe computer. He managed the projects that created the S/360 and its operating system.
This book contains a wealth of knowledge about software project management including the now common-sense notion that adding manpower to a late software project just makes it later. The 20th anniversary edition of The Mythical Man-Month, published in 1995, contains a reprint of Brooks’ famous article “No Silver Bullet” as well as Brooks’ reflections on the twenty years since the book’s publication. If creating software is your discipline, you absolutely need to read and understand the tenets in this book.
Number Two: Another essential book for technologists is Peopleware (Dorset House; ISBN: 0932633439) by Tom DeMarco and Timothy Lister. This book concentrates on the human aspect of project management and teams. If you believe that success is driven by technology more so than people, this book will change your misconceptions. Even though this book was written in the late 1980’s, it is still very pertinent to today’s software development projects.
DeMarco is the author of several other revolutionary texts such as Structured Analysis and System Specification (Yourdon Press; ISBN: 0138543801). This book almost single-handedly introduced the concept of structured design into the computer programming lexicon. Today, structured analysis and design is almost completely taken for granted as the best way to approach the development of application programs.
Number Three: If you are a systems analyst, application programmer, or software engineer then you will surely want Donald Knuth’s four volume series The Art of Computer Programming 3rd edition (Addison-Wesley Pub Co; ISBN: 0321751043). This multi-volume reference is certainly the definitive work on programming techniques.
Knuth covers the algorithmic gamut in this three volume set, with the first volume devoted to fundamental algorithms (like trees and linked lists), a second volume devoted to semi-numerical algorithms (e.g. dealing with polynomials and primes), a third with sorting and searching, and a final volume dealing combinatorial algorithms. Even though a comprehensive reading and understanding of this entire set can be foreboding, all good programmers should have these techniques at their disposal.
Now I don’t pretend to believe that these are the only classic books in IT literature, but I do know that they will provide a good, solid core foundation for your IT library. And I purposely avoided data and database management books (I’ll offer a list of classic data books in a future post).
Books promote knowledge better than any other method at our disposal. And knowledge helps us do our jobs better. So close down that web connection and pick up a book. You’ll be glad you did…