Pedro Vereza

pdrvereza@gmail.com

Read it in english

Programadores não sabem ensinar

Todo mundo já trabalhou em algum lugar em que alguns programadores pareciam não se importar com o código que escreviam. Trechos de código comentados, código sem indentação, variáveis x, c, d, classes e métodos com milhares de linhas são assinaturas típicas de programadores que não sabem programar.

Por muito tempo, junto com alguns colegas, fiz várias críticas ao trabalho de desenvolvedores assim. O código produzido é ruim e o indivíduo parece não ter interesse em melhorar. Mas será que a realidade é essa mesma?

Lembro-me quando comecei a programar: tudo era tão mágico e parecia que tinha descoberto um novo mundo de possibilidades - e realmente tinha. Aprendi OO, aprendi C#, aprendi muitas coisas. Mas conceitos como clean code, TDD/BDD, SOLID, DDD só me foram apresentados dois anos depois. Eu trabalhava cerca de 8 horas por dia e, durante dois anos, escrevi muito código medíocre e ruim. Muitas vezes sem perceber, já que todos programavam assim.

O que me faltava, e que muita gente não percebe a importância, era exposição. Como eu iria estudar esses conceitos se nunca tinha sido exposto a isto? Saber que existe uma sigla TDD é diferente de parear com alguém experiente e desenvolver alguma coisa utilizando a metodologia.

E é aí que o problema aparece: a maioria dos desenvolvedores experientes se restringe apenas a criticar e, em casos menos piores, refatorar o código escrito por outra pessoa. Nenhuma das duas atitudes ensina. Refazer o trabalho dos outros não beneficia ninguém, a abordagem ideal é procurar espalhar os conhecimentos para todos os membros do time. Ser o desenvolvedor cowboy que faz tudo sozinho é pedir para continuar fazendo tudo sozinho.

Experimente emprestar seu livro sobre Clean Code, compartilhe os blogs que acompanha, organize pequenos dojos, procure técnicas de pair programming que funcionem melhor para o seu time e ambiente. Com a abordagem certa, todo programador aprende a programar.

Comentários

comments powered by Disqus