Respostas:
Se os livros forem sobre o próprio idioma , perca-o e adquira um novo.
Se o livro trata de programação como assunto (arte, assunto, disciplina, técnicas, o que for), então definitivamente vale a pena ler. Os melhores livros de programação que eu já escrevi há mais de 10 anos.
Depende do livro e do que você deseja aprender com eles e com você.
Existem razões de bens para ler livros antigos:
Pessoalmente, guardo ALGUNS dos meus livros de programação antigos:
Por exemplo, o manual do usuário do ZX81 (por volta de 1981) tem uma ótima descrição de um algoritmo de desenho em linha reta. Ainda faz mais sentido para mim do que qualquer coisa que eu li desde então. Eu o usei como base de uma implementação várias vezes ao longo dos anos.
Tudo isso dito, eu também li novos livros. Eu certamente não quero ficar preso na idade das trevas.
Se eles eram bons, então, e os recursos de linguagem que ensinam não mudaram - então por que não!
Eu não acho que os fundamentos do Java mudaram muito desde a versão 1.2 (ou Java 2).
Um dos melhores livros de engenharia elétrica (a arte da eletrônica) foi escrito há mais de 20 anos e, embora o campo da engenharia elétrica tenha crescido aos trancos e barrancos, possivelmente o maior crescimento de qualquer setor, o livro ainda é conhecido por muitos como o texto único e autoritário.
Embora muitos dos exemplos do livro estejam desatualizados e substituídos por designs mais recentes, o livro não trata de ensinar você a construir um relógio digital, mas como projetar um. As regras fundamentais ainda se aplicam e se era um bom livro, então agora é um bom livro.
Obviamente, se é um livro sobre alguma API antiga e obscura, pode não ser útil hoje ou no futuro próximo e você provavelmente pode ficar sem. mas, novamente, um livro como esse está apenas lhe dizendo como construir algo e, portanto, sua vida útil é limitada, mantenha-se com livros generalizados.
Mantenha os livros que ensinam como projetar uma solução e não os que dizem como construí-la. Pode ficar claro quais métodos foram alterados e você pode simplesmente ignorar essas partes, mas um bom livro sobre C ainda vale seu peso em ouro.
Pode ser útil manter os livros antigos como referência se você trabalhar em qualquer sistema legado com base em tecnologia desatualizada, especialmente nos sistemas J2EE antigos. Eu costumava manter um livro J2EE antigo, porque ocasionalmente encontrava algum código antigo que usava o EJB 2.1 ou o código Swing antigo.
A última versão do Java para introduzir grandes mudanças na linguagem foi o Java 5 em 2004. Todos os livros escritos após esse período devem incorporar essas alterações na linguagem e devem ser lidos em geral (e talvez nem tenham uma edição mais recente publicada). Observe, no entanto, que muita coisa mudou no ecossistema Java desde aquela época; a estrutura Spring e o Maven, por exemplo, agora são tecnologias amplamente usadas que não eram tão predominantes na época.
Para a linguagem Java e como programar em java, é bom ter as edições mais recentes desses livros, por exemplo, a classe WeakReference é do Java 1.2 e não há muitos programadores que não sabem que essa classe existe no Java SE , o que significa que ler os livros mais recentes para Java é a melhor coisa, isso só é bom para algumas estruturas, mas, para entender esses livros mais recentes, é necessário ter o básico, o que você não obterá com os livros mais recentes, mas o com os livros mais recomendados. Acho que pensando em Java, edição mais recente, é um bom livro para começar com Java