Volta e meia me perguntam o que ler para crescer em tech. Minha resposta honesta é: leia bastante e não se apegue a uma única tecnologia. As ferramentas mudam a cada poucos anos; os princípios por baixo delas quase não se mexem. Estes nove livros são os que eu sempre revisito, e a maioria está numa estante física que eu consigo alcançar de verdade. Tem algo numa biblioteca de referência que você pode pegar na mão.
A estante
O Programador Pragmático — Andrew Hunt e David Thomas. Os hábitos e as responsabilidades que separam quem escreve código de quem faz engenharia, mais uma filosofia de boas práticas (DRY, "don't repeat yourself", à frente de todas). Se for ler só um desta lista, leia este.
Testing JavaScript Applications — Lucas da Costa. O título diz JavaScript, mas os conceitos são universais. Ele me ensinou a pensar em testes em qualquer linguagem.
Use a Cabeça! Python — Paul Barry. Uma introdução leve e prática aos fundamentos e idiomas do Python. Ótimo para quem está começando e para quem chega de outra linguagem.
Head First Git — Raju Gandhi. Vai além dos comandos até os conceitos por baixo do Git, para você entender por que ele se comporta como se comporta, e não só qual feitiço digitar.
Murach's MySQL — Joel Murach. SQL avançado, design de banco e otimização de performance, explicados com clareza. O tipo de conhecimento de SQL que rende uma carreira inteira.
Designing with the Mind in Mind — Jeff Johnson. Padrões de UX e UI baseados em como a cognição humana realmente funciona. Muda o jeito como você olha para qualquer interface.
Information Dashboard Design — Stephen Few. Boas práticas para comunicar com clareza por meio de dashboards e visualizações. Indispensável se você um dia colocar números na frente de quem decide.
The Data Warehouse Toolkit — Ralph Kimball e Margy Ross. Conceitos atemporais de engenharia de dados e modelagem dimensional. As ideias daqui sobrevivem a qualquer banco específico.
CSS: The Missing Manual — David Sawyer McFarland. Os fundamentos e as possibilidades avançadas do CSS, a parte do front-end que todo mundo subestima até levar uma mordida.
Repare na variedade: ofício de programar, testes, uma linguagem, controle de versão, banco de dados, UX, visualização de dados, arquitetura de dados e estilização. É proposital. As pessoas mais úteis com quem trabalhei não são as que foram infinitamente fundo em uma só stack. São as que transitam entre as camadas e enxergam como tudo se encaixa.
Não se apegue a uma tecnologia. Apegue-se a aprender.
Publicado originalmente no LinkedIn. Leia o original