Apart from Ancient History, I believe it's desirable to have books of most disciplines to be updated. This is applicable for Programming Books also. I mean, one wouldn't like to learn from a book published a decade back which would not reflect recent improvements to the matter at discussion. I understand certain basic concepts don't change much, but even then, the presentation tone should change to reflect contemporary customs. As an example, in a chemistry book, Carbon is a said to possess Dr Jackeyl and Mr Hyde like behavior; being something precious as Diamond and something ugly like coal. Youngsters these days maybe not be familiar with those character and hence updated writing should constitute modern examples.
In these regards, what should be the effective lifetime of a Programming book?