books-pile

Minhas boas leituras de 2016

Apesar de ter lido muitos livros ruins em 2016, o contrário também se manifestou: peguei muita coisa boa para ler. Houve um lado positivo no atraso deste post anual: pude comprovar aqueles livros que realmente me fizeram bem. Sem demora, vamos à lista.

Configuration Management Best Practices – Bob Aiello e Leslie Sachs

cm_best_practices

É grande a chance deste ter sido o livro mais importante do ano para mim. Inclusive o mencionei na apresentação no DevCamp 2016. Em nosso trabalho com legado sem sombra de dúvidas o mais importante (junto com a análise inicial do projeto) é a aplicação de boas práticas de gestão de configuração e mudança.

O problema com esta disciplina (tenho vontade de escrever um livro sobre) é que se fala muita bobagem a seu respeito. Ainda pior: em praticamente todas as equipes pelas quais passei (com exceção, naturalmente, da itexto) esta é vista mais como um fardo que uma ferramenta capaz de alavancar projetos. Em grande parte por que as pessoas simplesmente não sabem escrever bem a respeito.

Este livro é o exato oposto: bem escrito e focado na prática apresentando diversas histórias (que os autores dizem ser reais) que batem com situações similares às que presenciei pessoalmente. Há um único porém neste livro: tive a impressão de ser um jabá monstruoso do site dos autores: http://cmbestpractices.com/ .

Vale cada centavo. Comprei na Amazon.

Software Estimation – Demystifying the Black Art – Steve McConnell

software-estimation

Se é do Steve McConnell há 90% de chance de que eu ame, e com este livro não foi diferente.

Já havia tido um contato com este livro alguns anos atrás, mas nunca o havia estudado a fundo, tal como fiz este ano. Sabe aquele papo de “no estimates”? Pois é, é bobagem, pois todo cliente quer ter uma ideia sobre quanto quer pagar.

E se você acha que sabe fazer uma estimativa, este livro te prova o contrário logo no primeiro capítulo. Tal como o próprio subtitulo diz, ele realmente desmistifica o processo de estimativa, te faz pensar o que realmente significa estimar algo. É um livro que te faz pensar e que me ajudou bastante neste ano de 2016.

Melhorou algo no qual já somos bons na itexto, que é o processo de estimativa em nossos projetos arquiteturais. Ajuda a te tirar da zona instintiva (mas não totalmente, pois isto é impossível).

Código Limpo – Robert C. Martin

codigo-limpoo

Finalmente li este livro, mas confesso que fiquei bastante decepcionado. Talvez tenha sido a tradução para o português (achei bem fraca), mas creio que a razão foi outra, e a culpa é do Steve McConnell com seu Code Complete, que li em meus anos de formação.

Sendo assim este livro não me trouxe grandes novidades, foi mais um repeteco com pouca profundidade do Code Complete. Isto não quer dizer que seja um livro ruim, muito pelo contrário. É também um bom livro de formação para quem está começando.

Na minha opinião os capítulos sobre como dar nome a variáveis e o sobre a definição de parâmetros em função já justificam sua leitura. Leia estes capítulos (faço muita pressão na itexto para que os mesmos sejam lidos por quem entra).

Não consigo pensar neste livro sem lembrar do Code Complete (ei, li as duas edições do Code Complete em inglês e português, se sou fanboy de algo, é deste livro, então desconfie do que vou dizer). Minha recomendação é a seguinte: Código Limpo te tornará um bom júnior, mas a boa leitura do Code Complete te prepara para ser um excelente pleno.

TDD com PHP – André Cardoso e Maurício Aniche

tdd-com-php

Em 2016 voltei a estudar PHP, então achei que seria interessante começar a partir do TDD. Comprei dois livros sobre o assunto e um deles foi este que adorei: vale ouro. Apesar de ser bem raso no que diz respeito ao PHP (o que é justo, visto que a linguagem é usada apenas para ilustrar o TDD), o que é tratado sobre TDD achei simplesmente excelente. Uma palavra para descrever este livro? Excelente. Merece uma review só para ele.

É excelente não por que concordo com os autores, mas por que sua leitura me fez questionar algumas das ideias que tinha sobre o modo como pratico TDD. É um texto que propicia o diálogo entre leitor e autor(es) de uma forma rica, pois é muito bem escrito.

Pelo que pude entender no site da Casa do Código há versões deste livro para .net e Java que contém essencialmente o mesmo texto, trocando apenas a linguagem usada para ilustrar os conceitos. Dos livros nacionais que li em 2016, este sem sombra de dúvidas foi o melhor: muito bom ver gente daqui fazendo coisa boa!

É o livro técnico tal como deve ser escrito: tem profundidade, te faz pensar, é cheio de referências, apresenta bibliografia decente, não é um tutorial disfarçado de livro, é técnico, tem o peso correto, apresenta a visão dos autores e seus contra-pontos (o que o torna intelectualmente honesto). Resumindo: leia.

Sobre o outro livro de PHP que li… lixo absoluto, profundidade de uma poça em evaporação, mal escrito, sem bibliografia alguma, sem qualquer referência, apresenta conteúdo equivocado…. Vai ter um review aqui no blog assim que encontrar adjetivos menos agressivos a seu respeito.

Aplicações Mobile Híbrigdas com Cordova e Phonegap – Sérgio Lopes

cordova-phonegap

Este foi outro livro que li em 2016 e gostei bastante. Sabe quando disse que detesto tutoriais disfarçados de livros? Este aqui foge à regra. Segue a forma de um tutorial, mas um muito bem escrito e que fornece um bom nível de profundidade sobre as tecnologias que aborda para quem está começando.

Cordova foi sem sombra de dúvidas uma das tecnologias mais importantes para nós em 2016, e este livro com certeza foi a melhor introdução ao assunto que poderíamos ter encontrado.

Não foi surpresa alguma para mim: o outro livro do Sérgio Lopes – A Web Mobile – indico para todos os nossos clientes e uso como referência em qualquer contratação de serviços de design que realizamos na itexto. Aliás, tenho um review deste outro livro, que pode ser lida aqui.

Professional WordPress – Design and Development – Third Edition – Brad Williams, David Damstra e Hal Stern

professional-wordpress-design-and-development1-235x300

Acho muito difícil fugir do WordPress quando precisamos de um bom CMS. Em 2016 investimos bastante em seu aprendizado e sem sombra de dúvidas este foi o melhor material que encontramos a este respeito.

Este livro valeu cada centavo que pagamos nele (foi barato, US$ 35,00 aproximadamente na Amazon). É um excelente material para quem quer se aprofundar no WordPress: se você quer conhecer as entranhas da criatura, este é O livro.

Realiza bem o que se propõe fazer: você irá entender como funcionam e como escrever plugins e templates para o WordPress. Ainda mais importante: te explica como montar o ambiente de desenvolvimento, algo que na minha opinião sempre foi uma atividade feita de uma forma bem porca.

Mais do que isto, é realizada uma verdadeira dissecação do WordPress: você vai entender como seu código é organizado, como são estruturadas suas tabelas e também é feita uma descrição (um pouco rasa, é verdade) sobre o ambiente no qual este é executado (infelizmente só fala do Apache HTTP) que para os que estão iniciando é simplesmente excelente.

Bem escrito, com excelente aprofundamento, bons exemplos, muitas referências interessantes, diversas dicas práticas. Depois da sua leitura posso dizer com certeza que subimos de nível quando o assunto é WordPress: somos muito mais produtivos agora e temos uma compreensão muito maior sobre seu funcionamento. É um daqueles livros que requer dedicação, mas que terá valido cada segundo do seu esforço.

(infelizmente o restante do material que li sobre PHP se encaixa na categoria lixo)

Gerenciando Projetos Grandes e Pequenos – Coleção Harvard Business Essentials – Richard Luecke

gestao_projetos

Pouco a pouco a ideia de que sou um empresário (um programador-empresário talvez seja o mais preciso) agora está influenciando minhas leituras. Achei que seria interessante rever diversos dos conceitos de gestão de projetos tradicional (o PMBOK).

Este livro é uma boa leitura nesta direção: entenda, você não terá aprofundamento algum nesta leitura, mas como uma simples revisão é uma leitura que vale à pena. No meu caso foi bastante importante para que eu pudesse confirmar aquilo da gestão que realmente não iremos usar o que, em si, já valeria um post.

Por ter me ajudado a validar o modo como gerimos nossos projetos estou citando este livro.

O Risco de TI – Richard Hunter e George Westerman

risco-ti

Este livro me tornou um melhor arquiteto de sistemas/corporativo/software sem sombra de dúvidas. É focado em TI, mas voltado para o público que consome nossos serviços. Essencialmente ele diz aquilo que não é dito para nossos clientes: que nós, da TI, além de provermos soluções, também somos uma fonte de riscos.

Na minha experiência infelizmente a gestão de riscos é vista como tabu na esmagadora maioria dos projetos. É como se as pessoas fossem supersticiosas a este respeito: como se simplesmente tocar no assunto magicamente materializasse as ameaças.

Os autores apresentam um framework muito interessante para ser levado em consideração na gestão de riscos envolvendo TI. Nos é provido o linguajar necessário para que provedores de serviço e consumidores possam se entender bem, tornar claras as ameaças e projetar estratégias para lidar com os riscos detectados.

O impacto deste livro em nós foi muito forte: digo com certeza que além de me ter tornado um arquiteto melhor, também me tornou um gestor mais atento, pois usamos a abordagem descrita no material para lidar com as ameaças que envolvem o nosso negócio, o que nos tem feito dormir com muito mais tranquilidade.

Recomendo sua leitura: especialmente para aqueles que pensam em gestão de riscos em TI como apenas o aspecto “segurança da informação”.

The Best Software Writing I – organizado por Joel Spolsky

the_best_software_writing_1

E este foi o livro que mais gostei de ler em 2016. Infelizmente o li com 11 anos de atraso! Joel Spolsky (você já conhece o blog dele, certo??? Se não, tá aqui o link!) organizou neste volume uma série de artigos publicados até 2005 (ano de publicação) que considera serem os textos mais bem escritos sobre desenvolvimento de software.

Sem sombra de dúvidas são alguns dos melhores artigos que já li e tratam de questões que eram extremamente relevantes em 2005 e continuam hoje, 12 anos depois. Outsourcing vale à pena? Devemos forçar padronizações em nossa equipe de desenvolvimento? Como tratar bem quem trabalha conosco? O que torna você um excelente hacker? PowerPoint nos deixa estúpidos?

Artigos escritos por pessoas que você já tenha ouvido falar: Aaron Swartz, Raymond Chen, Cory Doctorow, Bruce Eckel, Paul Graham, Why the Lucky Stiff (lembra dele?), Eric Johnson… Muitos deles autores que eu lia naquela época e que pude reencontrar neste livro. Há alguns clássicos aqui, como, por exemplo, o Starbucks does not use two-fase commit.

É um livro escrito na época em que redes sociais começavam a se materializar, então você lerá alguns artigos muito interessantes, que mostram a percepção inicial do fenômeno naquela época. Claro, talvez você se interesse mais pelo que está acontecendo neste momento, mas se curtir história como eu, este livro é um prato cheio.

O tempo inteiro a sensação que tinha ao ler estas páginas era o de “puta merda, se eu tivesse lido isto antes não teria feito aquela merda!”. Está a venda na Amazon também, então compre este negócio o mais rápido possível para não demorar os 11 anos que levei para ler isto!

Sim, este livro me tornou um autor melhor, e creio que este meu post (Leitura: modo de usar) foi fortemente influenciado pelas leituras que fiz aqui.

E que venham as leituras de 2017

Durante este ano pretendo publicar aqui algumas resenhas sobre o que estou lendo. Especialmente sobre as coisas que estou detestando ler. Espero que algum destes livros que citei te inspire de alguma forma.

E no final do ano posto aqui quais foram as leituras mais importantes do ano pra vocês novamente.

4 thoughts on “Minhas boas leituras de 2016

  1. Sobre o “Código Limpo”. Acredito que a revisão da tradução tenha sido um trabalho muito ruim. O pior que já vi em minha vida. O conteúdo (e aí é importante aprender a ler de verdade) é excelente (não li ainda o outro livro que você indicou). Dele tirei a lição de que devo ser, acima de tudo, honesto quando programo. Na estruturação, no trato das variáveis, em tudo. A revisão é tão ruim que me tirava a concentração da leitura, porque os erros aparecem página após página. Me arrependi de comprar a versão em português. Pelo visto produziram o livro a toque de caixa.

    Sobre o TDD: li a versão em Ruby, da Casa do Código mesmo. É o livro que figura sozinho em minhas ‘boas leituras de 2016’. Antes mesmo de aprender Ruby, estava lendo esse livro, e foi bom ter feito isso, pois me orientou e ensinou muita coisa boa. Aprendi a fazer testes, mas ainda não me convenci a adotar TDD em sua pureza. Uma observação a mais: é um livro com forte lastro acadêmico e prático.

    Quanto aos outro livros, valeu pela lista! :)

    Responda

    Kico (Henrique Lobo Weissmann) Reply:

    Oi Paulo,
    confesso que tenho uma relação de amor e decepção com o Clean Code. Há pedaços que gosto muito, outros acho muito maçantes, e não sei até que ponto a culpa seria da tradução (que é bem ruim).

    Responda

    Pablo Dias Reply:

    Olá Kico,

    O Clean Code é tão irregular na versão original quanto na traduzida, infelizmente. Quando li ele, também não senti muito impacto, mas no meu caso foi por ter O Programador Pragmático como livro de referência (mesmo tendo lido os dois, ainda me falta ler o Code Complete…)

    Obrigado pelas dicas, me interessei principalmente pelas sugestões da Casa do Código!

    Responda

    Kico (Henrique Lobo Weissmann) Reply:

    Oi Pablo,

    estou ficando desconfiado que o primeiro livro de formação (no meu caso, Clean Code, no seu, O Programador Pragmático) acaba moldando nossa percepção dos que vêm na sequência hein? :)

    Responda

Leave a Reply

Your email address will not be published. Required fields are marked *