Errado! Hoje, estou convencido de que redação deveria ser obrigatório em todos os cursos de graduação de computação. E vou ilustrar minha opinião com dois textos que recebi recentemente.
“Oba blz galera.??? Meu nome e X. Eu estou conhecendo Python agora por essas semanas e gostei bastante.. So que nao tenho muita noçao de programaçao e algo que gosto mais tenho um pouco de dificuldade, gostaria que vcs me indicase um livro bom e em portugues, que possa me ajudar . Estou conhecendo python na faculdade onde estudo, tem um maluco la que manja bastante Nome dele e Y..Alguem ja ouviu falar dele. Ate mais espero fica bom em progrmaçao com vcs.”
“bom eu fiz uma pagina com iframe bem no meio dela mais antes do iframe no lugar dele eu queria colocar ums textos umas fotos se a pessoa quando clica no menu da certim o iframe mais quando eu coloco os textos e as fotos em div os textos ficam na frente do iframe tem como fazer o div sumir quando o iframe for ativado??”
(O primeiro foi extraído de uma lista de discussão de Python, e o segundo foi um comentário/pergunta enviado para este blog).
E porque a minha preocupação a respeito deste tema? Basicamente, por dois motivos.
O primeiro tem a ver com o email enviado para a lista de discussões. Não espero que computeiros escrevam textos inspirados no estilo de Machado de Assis. Mas hoje, em tempos de internet, comunidades de desenvolvimento globais, projetos open source, fóruns e listas de discussão, a comunicação escrita se tornou uma ferramenta importantíssima: textos mal escritos ou confusos tornam a troca de idéias confusas.
O segundo motivo é mais grave, e tem a ver com o comentário/pergunta feito no meu blog. Eu confesso que ja reli esta pergunta algumas vezes e não tenho ainda certeza de ter entendido o que o leitor quer saber. E para não dizerem que eu tenho má vontade, enviei esta pergunta para algumas pessoas, e nenhuma delas entendeu. Daí eu pergunto: qual a essência, o ponto fundamental, da atividade de programação? Descrever de uma forma lógica e estruturada um conjunto de instruções utilizando uma linguagem formal que permitam que um computador execute uma tarefa. Certo? OK. E chegamos portanto no ponto crucial: como esperar que um programador consiga escrever programas corretos e estruturados em C/Java/Perl/Python/Whatever se este tem dificuldades para se expressar de forma clara e estruturada em português?
Gramática e lógica são definitivamente duas ferramentas que deveriam fazer parte da “caixinha de maldades” de cada desenvolvedor.