Pimpolhos h4ck3rs
De uns tempos para cá, notei um aumento significativo em vídeos, movimentos, ferramentas e textos de incentivo ao aprendizado de programação. Fiquei em dúvida quanto a vários dos argumentos apresentados, mas ok, até aí sem muitos problemas. Fui levado a uma reflexão mais profunda sobre o assunto depois de ler esta reportagem, que mostra uma escola de Londres que incorporou programação ao seu currículo básico. Acho que, a partir do momento em que políticas educacionais começam a ser repensadas com base nisso, vale a pena uma atenção maior à questão.
É, eu sei que estou meio atrasado para comentar, mas não é algo específico à reportagem. O vídeo da Treehouse, que insiste em interromper meus vídeos
Os argumentos
Pois bem, vamos começar pelos argumentos em si. O que os defensores do ensino universal de programação costumam afirmar? Separei em quatro argumentos centrais.
- As coisas estão se tornando cada vez mais complexas e a tendência é que, no futuro, todos tenham que programar.
- É perigoso tornar-se mero consumidor do conteúdo. Agora que a tecnologia está mais presente na vida das pessoas, elas precisam tomar uma postura crítica em relação a isso para não serem controladas e/ou ludibriadas por empresas que possuem e exploram o conhecimento tecnológico.
- Programar é muito útil para adquirir habilidades de raciocínio, resolução de problemas e criatividade.
- O mercado precisa de programadores e há excelentes oportunidades de emprego e empreendimento na área. Quer encontrar o trabalho dos sonhos? Aprenda a programar!
Minha réplica
Vamos lá, começando pela lógica do primeiro argumento: mais sofisticação tecnológica = mais conhecimento técnico necessário. Isso contraria totalmente nossas experiências tecnológicas até hoje. Antes tínhamos uma tela preta amedrontadora que só respondia a instruções de linha de comando, e antes disso, cartões perfurados e válvulas. Hoje você consegue interagir com o computador e realizar tarefas complexas através de metáforas de alto nível ("pastas", "ícones", "janelas") e uma interface amigável.
Vejam este blog, por exemplo. Pelo menos no momento que escrevo, posso afirmar com segurança que precisei de conhecimentos técnicos em pouquíssimas situações, e poderiam ser facilmente adquiridos por qualquer um com um pouco de pesquisa. O Blogger cuida de tudo sozinho, e na verdade até impede o usuário de fazer algumas coisas que ele não disponibiliza através da interface (iframes estão liberados, mas tenta colocar âncoras para ver o que acontece).
Em suma, programadores existem para que outras pessoas não precisem programar e possam se concentrar em coisas relevantes a elas. E justamente porque a tecnologia está se complexificando que pessoas na área de software estão cada vez mais se focando em outras etapas do processo fora programação, como design, controle de qualidade, processos, análise de negócio etc. Programação ainda é importante, mas é só um dos estágios, e quanto mais for minimizada, melhor para todos. Daí a ênfase em reaproveitamento de módulos e outras técnicas.
Para o segundo ponto, cabe uma analogia à alimentação. Você não pode comer qualquer porcaria enlatada que vê pela frente, certo? E qual solução a esse problema de falta de consciência sobre alimentos você recomendaria a alguém: informar-se sobre os nutrientes e grupos de alimentos importantes e ler as informações nutricionais de produtos, ou aprender sobre os processos industriais por trás daquele alimento, em todas as etapas, incluindo equipamentos, sintetização de corantes, testes etc.?
Sem dúvidas, se você puder e tiver vontade de aprender tudo isso, pode agregar bastante valor à sua vida. Mas nem todo mundo tem tempo ou disposição, e nem precisa, porque tornar-se um consumidor consciente não exige que você se torne um produtor. Similarmente, você não precisa virar um político ou ter o conhecimento de um cientista político para cobrar providências do governo.
Mesmo que o objetivo seja, de fato, produzir conteúdo, lembra-se do que eu disse sobre este blog? Pois é, quase nenhuma linha de código. Há várias ferramentas para diversos tipos de problema disponíveis por aí, e tanto programadores quanto leigos não precisam reinventar a roda. O ideal é que a ferramenta tenha funcionalidades básicas acessíveis a qualquer um que possam ser estendidas por usuários avançados.
Quanto ao terceiro argumento, há quem diga que o ensino de qualquer coisa envolvendo lógica em crianças muito novas na verdade compromete a criatividade, mas não vou usar esse contra-argumento até porque eu não sei se é verídico ou não. Assumindo que a programação de fato estimule a criatividade, a engenhosidade e o raciocínio, ainda assim pergunto: e daí?
Sudoku é um bom exercício intelectual, e também o são o xadrez, os puzzles e muitas outras atividades que não fazem parte do currículo escolar comum e nem precisam. Como já discuti no caso do ensino de matemática, desenvolvimento de raciocínio/criatividade não é uma boa justificativa. Aprender a programar pode ser um bom jeito de desenvolver o raciocínio/criatividade? Sim. É o único jeito? Não. É o melhor jeito? O melhor jeito é o jeito mais divertido; se for o seu caso, ótimo.
Você pode até não acreditar, mas acho que o quarto argumento é o mais consistente pelo simples fato de que não trata de algo vago, mas sim uma necessidade econômica. Não vejo problemas em incentivar os jovens do país a seguirem uma determinada carreira, desde que não se misture ensino profissionalizante com ensino básico ao instaurar o ensino obrigatório de programação com as desculpas esfarrapadas criticadas acima.
Ah, e de preferência sem contos de fadas. A falta de regulamentação da área de T.I. no Brasil e a consequente ausência de pisos e atribuições de cargos é algo que não pode ser ignorado (mas não vai ser resolvido com o projeto de Lei 607/2007 do jeito que está), bem como a cara de pau das empresas que querem profissionais qualificados para realizar funções muito aquém da capacitação exigida e com salários muito mais baixos também.
Eu não devo aprender a programar então?
É preciso ficar bem claro que dizer "Nem todos precisam programar" não é a mesma coisa que dizer "Ninguém deve programar". Ora, se você quiser aprender, aprenda. Meu problema com os argumentos apresentados é que distorcem a verdade para atrair pessoas. Os fins nem sempre justificam os meios, principalmente quando os meios envolvem mentiras.
No meu post sobre lógica de programação, dei motivos claros para mostrar por que aprender programação pode ser de interesse ao público deste blog e ocasionalmente posto exemplos de coisas legais que podem ser feitas, como este método de calcular o número pi, uso de programação para resolver problemas de combinatória e modelagem computacional. Há vários outros motivos que eu poderia ter dado, mas no final das contas depende totalmente dos seus interesses e como você pretende usar o conhecimento.
E as "pessoas comuns"? Pode ser que elas precisem usar programação algum dia? Claro, assim como pode ser possível que você precise obter algum conhecimento para fazer uma manutenção rápida no seu carro. São ocorrências pontuais que podem ou não levar ao estudo mais profundo de programação. O importante é perceber que programação é apenas uma ferramenta: você decide se usa ou não, nem sempre é viável utilizá-la, e não há nada de místico nela.

0 comentários:
Postar um comentário