6 de set de 2007

Ensinamento importantes para a vida (e programadores)

Trechos interessantes retirado de um artigo muito legal, esse.


Se interesse por programação, e faça porque é legal. Tenha certeza que isso continue a ser legal para você dedicar dez anos nisso.
Programe. O melhor tipo de aprendizado é aprender fazendo.

Colocando de uma forma mais técnica, “o nível máximo de performace individual em um domínio é não é alcançado automaticamente em função de uma experiência extendida, mas sim aumentado mesmo por indivíduos extramente experientes por um esforço deliberativo de melhorar.” (p. 366) e “o aprendizado mais efetivo requer uma tarefa bem definida com uma dificuldade apropriada para o indivíduo em particular, dado que exista um retorno sobre a experiência e oportunidades de repetição e correções de erros.” (p. 20-21) do livro
Cognition in Practice: Mind, Mathematics, and Culture in Everyday Life
, que é uma referência interessante deste ponto de vista

Se você quiser, gaste quatro anos em uma universidade (ou mais em uma pós-graduação). Isso lhe dará acesso a alguns empregos que requerem alguma formação e um grande entendimento do campo de trabalho, mas se você não gosta muito de ir para escolha, você pode (com alguma dedicação) conseguir alguma experiência similiar sobre esse tipo de trabalho. Em qualquer caso, apenas ler livros não será suficiente.
“Educação em ciências da computação não faz de ninguém um gênio em programação tanto quanto estudar pincéis e pigmentos não fazem um bom pintor.” diz Eric Raymond, autor de The New Hacker’s Dictionary. Um dos melhores programadores que eu já contratei tinha apenas o segundo grau, e ele produziu vários softwares incríveis, tem seu próprio grupo de discussão,
e fez dinheiro suficiente em ações para comprar seu próprio clube nortuno.
Trabalhe em projetos com outros programadores. Seja o melhor programador em alguns projetos, seja o pior em outros. Quando você é o melhor você testa suas habilidades para liderar um projeto, e para inspirar outros com a sua visão. Quando você é o pior aprende o que os mestres ensinam e o que não gostam de fazer (porque eles fazem você fazer por eles).
Trabalhe em projetos após outros programadores. Esteja envolvido em entender um programa
escrito por outro. Veja o que é preciso para entender e consertar quando o programador original não esta por perto. Pense em como desenvolver seus programas para que seja fácil para quem for mante-lós após você.
Se envolva no esforço de padronização de uma linguagem. Pode ser o comite ANSI C++, ou na padronização de programação na sua empresa, se utilizaram identação com 2 ou 4 espaços. Em qualquer caso, você aprende o que outras pessoas gostam em uma linguagem, o quanto eles gostam e talvez um pouco do porque eles gostam.
Tenha o bom senso de cair fora desse processo de padronização tão rápido quanto possível.