Escreveu mas não leu

Publicado por thiago.arrais, 23.07.08

Uma boa forma de aprender é simplesmente observar quem já sabe. Muita gente sabe disso e sabe tomar proveito do trabalho de quem veio antes. Bons pintores gostam de admirar boas telas, bons músicos geralmente são apaixonados por simplesmente ouvir música. Escritores, arquitetos, engenheiros e marceneiros todos aprendem através dos trabalhos dos mestres do passado. Ora, quem quiser ser médico é até obrigado a trabalhar algum tempo observando quem já sabe.

É certo que muitas vezes os aprendizes de médico são simplesmente usados no lugar de profissionais experientes como mão de obra mais barata e que isso não é exclusivade da área deles, mas isto é assunto para outro texto. Em outro blog.

Isto certamente acontece em qualquer área do conhecimento, mas é flagrante como programadores não gostam de ler código dos outros. Nós não fomos treinados para isto. É bem possível passar quatro ou cinco anos num curso de graduação na área de computação e não ler sequer um programa escrito pelos professores. Não falo de exemplos didáticos, como a definição do QuickSort em duas linhas de Haskell, mas de programas vivos de verdade que andam e respiram. Algo como o compilador GHC.

A triste verdade é que a maioria de nós não lê código dos outros, a não ser quando somos obrigados a mantê-lo. Mais ou menos como a grande parte das pessoas não lê mais nenhum livro depois que conclui a escola e não precisa mais ler clássicos de Machado de Assis ou de José de Alencar para passar nas provas. Dada a imensa quantidade de código livre de que dispomos hoje em dia, isso é de espantar. Não é escassez de código para leitura, quer dizer que nós simplesmente não nos damos ao trabalho de ler. Ao invés disso, preferimos espernear e xingar quando precisamos ler o código de alguém, só porque a pessoa não usou a linguagem que preferimos, os padrões que preferimos, o estilo de endentação que preferimos. Só porque não escreveu como nós escreveríamos. Enfim, só porque não fomos nós que escrevemos.

Adivinha só! O código provavelmente não está tão ruim quanto pensamos, nós é que não estamos acostumados a ler código dos outros. Então, pelo bem de todos os programadores, vamos levantar nossos traseiros e começar a ler um pouco mais de código. De quebra ainda vamos aprender mais.

Tags: estudo leitura de codigo

Comentários

  1. Júlio Santos Monteiro 07.28.08 / 13PM

    Excelente artigo, Thiago.

    É verdade, nunca tinha percebido isso. Eu não tinha o costume de ler código antes de conhecer o GitHub. Só foi lá que eu comecei a me interessar por olhar o código de outras pessoas, seja para ver como eles programam, que estilo preferem, com o que se preocupam. É legal aprender como outros, por exemplo, fazem testes (como usam o Test::Unit ou o RSpec), pois assim podemos refletir se a maneira como estamos testando algo realmente é a mais legal.

    Estava agora mesmo fuçando nos FormBuilders alheios. Mas a partir de agora, depois deste artigo, vou fazer da leitura de código uma prática comum.

    Abraços, e continue a escrever artigos assim!