Mais uma vez citando Dijkstra (algum dia faco um post sobre ele, aguardem):"The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense." Nao, nao vou falar de COBOL, uma linguagem de programacao voltada a negocios com origens na decada de 50, mas sobre como o ensino pode mutilar a mente.O que sabemos, obviamente, e em boa parte resultado da educacao que temos. Pouco se fala, entretanto, da forma como pensamos, os caminhos, relacoes e raciocinios. Quando o ensino chega ao ponto de alterar a mente de forma tao profunda, pode-se dizer que ele realmente mudou aquilo que voce e.Talvez programacao exija uma "modelagem" especialmente nao natural, mas imagino que esse seja um traco comum de muitas areas, cada uma especializando o pensamento da sua forma.Nao e a toa, afinal, que e comum dizer "sou medico", "sou engenheiro", "sou programador", "sou arquiteto"... Depois de um tempo sua profissao passa lhe definir. Frase que ouvi outro dia:"Infelizmente nem todos programam como gostariamos que programassem."E inevitavel, cada um faz as coisas do proprio jeito, e quando o assunto e programacao o numero de jeitos que funcionam de uma forma ou de outra e ilimitado. Muitas vezes nao gostamos do que vemos...Macarronico, confuso, verborragico, demasiadamente complexo, tortuoso, cheio de sobreposicao de recursos que fazem a mesma coisa... sao apenas algumas das coisas que nao gostamos de ver.Mas sempre ha espaco para dialogo e aprendizado. Algumas vezes voce pode nao gostar muito do que ve em um primeiro momento, pode dar sugestoes que podem ser acatadas ou ainda serem rebatidas ate que um consenso seja atingido.Observe o trabalho dos seus colegas, seja critico, estimule o dialogo. Todos tem a aprender, do mais novo ao veterano. Estou lendo um dos livros indicados pelo Jeff Atwood como "leitura obrigatoria" para desenvolvedores: The Pragmatic Programmer.O livro tem muitas ideias interessantes, sim... mas o curioso esta no ano em que foram escritas: 1999. Muita coisa mudou em 11 anos, mas algumas coisas nunca mudam e se transformam.Ao mencionar sistemas de controle de versoes, sao mencionados sistemas hoje em notavel decadencia (CVS) e alguns que nunca tinha ouvido falar (RCS)Sao expostas ideias de desenvolvimento com uma aparente falta de nomenclatura, ou talvez uma nomenclatura incomum hoje em dia. Ja estao la ciclos curtos de desenvolvimento e entregas constantes ao usuario desde o primeiro momento. Tambem e possivel ver uma preocupacao na automacao de testes e mesmo na automacao de integracao, algo que foi desenvolvido intensamente nos ultimos 10 anos.Alguns conceitos nunca ficam velhos: a busca pela simplicidade, nao repeticao do conhecimento, desacoplamento e ortogonalidade. Sao conceitos abstratos que dificilmente tornar-se-ao obsoletos.De qualquer forma, estou achando a leitura muito produtiva. Se o assunto e atemporal, otimo! Quanto e algo obsoleto, uma excelente oportunidade de observar um pouco da historia da area que, mesmo que curta, passa por transformacoes em uma velocidade incrivel.(Em outras areas livros "de epoca" talvez tenham algumas decadas ou seculos... estranho ver algo relativamente recente parecer tao distante) Faz algum tempo que li o Clean Coder, e muito sabios sao os conselhos do