What do you think? Any examples welcomed. How about one where the older edition was actually better than a newer edition?

+1  A: 

Books about general concepts in computing will have a much longer shelf life than books about a specific version of a programming language, API or application. That being said it's hard to give a general answer to that question.


Older editions are usually better than nothing but it's up to you to find the errata for that edition as well as what concepts have been outdated since its publication. I usually try to get the latest edition, which usually has bug fixes and additonal material that includes whatver is new in the state of the art since the previous edition.

Mark Cidade

It really depends on the actual book, your skill level, availability of online documentation to help you fix the differences, and so many other things. So while I wouldn't quite call this a bad question, I would call it a very difficult one to give any kind of answer to.

Brian Warshaw
+7  A: 

For me, it depends on the subject and what I'm looking for to solve a specific problem/issue.

For example, The Mythical Man-Month and Code Complete are "classics" that provide helpful insight into the nature of software construction/engineering. Sure the latest version might have a nice update or two, but the original editions were spot-on in their observations and arguments about the practice of programming.

When it comes to books focusing on a particular language or technique, I prefer the latest edition of a text that deals w/ my specific problem, so that I can avoid any unnecessary pitfalls and draw upon the latest knowledge base the expert has to offer.

+2  A: 

It all depends on the specific subject. I just bought a copy of Brooks' "Mythical Man-Month", circa 1975 or so. On the other hand, I just threw away a copy of "Active Server Pages for Dummies".

+11  A: 

It's (thankfully) fairly rare that a newer version of a book is actually worse than the older version. Typically the newer version will simply fix any glaring problems with the older version and expand to include newer or previously-neglected topics. It's rare that a new edition takes such a wrong turn that you're better off with the older version.

However, if money is a significant concern, it can certainly be worthwhile to pick up an older edition of a book. For example, the first edition of Introduction to Algorithms by Cormen, Leiserson, and Rivest is an excellent book, and while I would prefer the second edition, the first edition is still an excellent reference, and an excellent value if you manage to pick one up cheap.

In slowly-changing fields, there's little value in upgrading to a new edition. For example, if I needed a calculus reference, I don't expect to find a lot of difference between the 2nd and 8th version of a introductory textbook. There might be some improvements in the examples, and some errata corrections, but calculus hasn't changed since the second edition. I think this applies to the well-established areas of computer science as well (e.g. fundamental algorithms).

I think there's also some great nostalgia/memorabilia to be had in older editions. I'd love to have a first edition, first printing of TAOCP. I doubt I'd ever read it, but it would still be nice to have.

Derek Park
+2  A: 

It depends heavily on the subject.

Some subjects are, by their very nature, mostly static. Changes that are made in the subject are small, and far-between. Thus, newer editions of books written for these subjects are often made just to clear up errata or get the book back out on the shelves to make more money.

For example, a book covering the syntax of a particular language (if the language itself is fairly static) might not change much between editions. But a book covering, say, Windows Security Enhancements in an early version might be more confusing than helpful if you're dealing with the latest version of Windows Security Enhancements (because the syntax changed in a poorly documented manner). Unfortunately, it's going to have to be evaluated on a case-by-case basis whether it's worth it to get the latest edition.

+2  A: 

There are a number of reasons to save an old, and possibly out of date book:

Historical significance

  • I still have my father's old Fortran textbook from the 80's, very enlightening book on older teaching methodologies and on the evolution of the Fortran language;
  • I have a few older textbooks on numerical methods and various older software engineering concepts which I'd like to get around to reading.

The language/technology isn't dead yet

+3  A: 

Just as a followup: I'm currently taking compilers and we're using the Dragon Book. I'm using the 1986 edition, while the professor recommended the 2007 edition. Sure, it talks about JITting a bit and bytecode platforms like .NET and Java, but almost all the content is the same, and the exercises are there, but just moved around a bit.

It works for me except that I have to photocopy specific pages from the '07 book to get the right exercises for the assignments, but that wouldn't be a problem for someone not in directed study of the topic. And, it was $9 instead of $90 == worth it for me.

+1  A: 

Sometimes I read old tech books for nostalgia alone. Especially those about old microcomputer tech like CP/M, 8080, Z80, Apple II, dBase etc. It feels like watching old Star Trek episodes.

And yes, I do like to play with emulators every now and then.

About the usefulness, I believe beginner books on the principles of programming could be good reads for total newbies.

+1  A: 

Since you've already received many answers I'll skip straight to the examples that you asked for:

"The C Programming Language" book is out of date by the latest C standard but is still my first choice for C books.

"ANSI and ISO Standard C Programmer's Reference" by Microsoft Press, out of date but you couldn't pry it from my hands.

"Linux in a Nutshell 2nd Edition". Newer versions have dropped some chapters and added others. None are as benefical to me as the 2nd Edition though.

On the flip side of the coin:

"Running Linux". I've quit buying this book for lack of need but I always highly recommend the latest version of this book.

Ditto for "Understanding the Linux Kernel".

Almost any of the O'Reilly Pocket Reference books, i.e. the ones of interest to you. These allow for you to keep your favorite text on a language but still have the latest language features listed at your fingertips. And they're cheap.