Pedro Silva Ferreira
24 de Junho, 2022
Existem benefícios na introdução de crianças e jovens a formas simplificadas de programação? Procurou-se evidência na investigação científica quanto aos méritos do caminho que se está a desbravar para a alfabetização digital, em particular, para o desenvolvimento do chamado Cidadão Programador – Citizen Developer – 1, uma realidade em que todos os cidadãos, mesmo sem formação especializada nesta área, têm acesso à capacidade completa de desenvolvimento de software.
Pouco-Código
Um contributo que é já hoje em dia anunciado como um importante passo neste sentido, em particular pela indústria que o comercializa, é o Pouco-Código (Low-Code). O Pouco-Código é a mais recente camada na pilha de linguagens de programação que se tem acumulado sobre a de base, a dos zeros e uns – a que as máquinas entendem –, para a aproximar sucessivamente das linguagens humanas e diminuir o esforço de tradução por parte do programador.
Esta última camada constitui uma categoria de linguagens/ambientes de programação que limitam a quantidade de instruções de texto requeridas ao programador, substituindo-as por representações gráficas, como blocos e conectores. À semelhança de um puzzle, ao apresentar peças que apenas encaixam de uma certa forma limitam-se os erros de sintaxe que mais dificultam a programação por parte de utilizadores menos experientes – mas, sendo estas peças pré-definidas, limitam-se também vários graus de liberdade no desenvolvimento das soluções pretendidas.
Há dois distintos méritos que se atribuem ao Pouco-Código para o desenvolvimento do Cidadão Programador: um mérito produtivo – capacidade imediata de desenvolvimento de software, principalmente afeto às implementações desenhadas para adultos –, e um educativo – capacidade de servir de introdução ao desenvolvimento de software, mais declarado nas implementações destinadas a crianças e jovens.
Mérito produtivo
Existe um conflito na perceção do mérito produtivo do Pouco-Código entre os especialistas em informática, em particular das suas implementações atuais. Se por um lado há quem o veja já como um contributo efetivo para desenvolver o Cidadão Programador, há também quem o descredibilize para este fim, considerando que apenas pode ajudar programadores experientes a acelerar o desenvolvimento (quando não é atrapalhado pelo constrangimento nos graus de liberdade), e que nunca dispensa conhecimento mais profundo sobre o código convencional e lógica de programação da camada anterior sobre a qual está assente para que possa ser usado para produzir soluções reais.
Esta visão menos otimista pode, no entanto, estar a ser poluída, consciente ou inconscientemente, por um certo fetichismo pelo código e pela figura do programador, que se evidencia transversalmente na nossa sociedade. Disso é exemplo a atual tendência de associação de termos como “ninja”, “mago” ou “herói” a funções de trabalho relacionadas com desenvolvimento de software.
Mérito educativo
Quanto ao mérito educativo do Pouco-Código, a investigação centra-se no ambiente de desenvolvimento Scratch, atualmente o mais popular dos dedicados a crianças e jovens. Lançado em 2007 a partir do Media Lab do MIT, dedicado a crianças entre os 8 e os 16 anos, o Scratch introduz uma plataforma colorida que facilita a criação de animações, jogos, e histórias interativas através de instruções de programação representadas por blocos que se encaixam entre si, permitindo a posterior partilha destas criações com a comunidade.
Há dois benefícios argumentados para a introdução das crianças à programação através de Pouco-Código – aprender a programar, e programar para aprender.
Programar para aprender
Quanto ao recurso a esta forma de programação para a aprendizagem de outras matérias que não da computação, a investigação sustenta o seu valor para o desenvolvimento de várias capacidades (de ordem superior, inferior e pessoais) e assimilação de conhecimento por parte das crianças, assente nas teorias construtivistas – que valorizam o colocar de mãos na massa, aprender por experimentação.
Aprender a programar
No que toca a aprender a programar há também duas justificações para o seu recurso – desconstruir o preconceito de inacessibilidade da programação e facilitar a assimilação da lógica de programação. Para o primeiro ponto encontra-se evidência na avaliação positiva das crianças a esta primeira experiência de programação, que é tida como divertida e não frustrante, considerando-se que tal será um incentivo para futuros investimentos nesta forma de literacia.
Mas a investigação aponta também para um contributo mais direto. O Scratch distingue-se por ter sido desenhado com este propósito educativo – a lógica de programação, o raciocínio fundamental exigido ao programador convencional, mantém-se presente na linguagem e é evidenciada graficamente.
Um conjunto de estudos empíricos apresenta desenvolvimentos significativos dos alunos na capacidade de compreensão de conceitos e práticas fundamentais da programação depois da experiência com Scratch ou implementações semelhantes. Testes feitos à capacidade de programação convencional de alunos iniciantes, entre 10 e 11 anos de idade, com e sem experiência prévia em Scratch, revelaram que apesar de percentagens equivalentes de erros de sintaxe, os alunos com experiência prévia em Scratch demonstram melhores resultados globais e um menor número de erros estruturais.
Não apenas para crianças
Estes resultados revelam-se também entre estudantes iniciantes de programação em idade adulta. Num outro estudo, o Scratch foi avaliado por uma maioria de estudantes de um curso de verão da Universidade de Harvard como tendo sido uma introdução positiva ao código convencional.
Parece assim existir um maior consenso quanto ao mérito educativo do Pouco-Código para desenvolver o Cidadão Programador, o que recomenda um maior enfoque neste mérito nas futuras implementações destinadas a utilizadores adultos.
A resposta à pergunta lançada no início deste artigo é, portanto, sim – há, de facto, evidência para os benefícios da introdução de crianças e jovens a formas simplificadas de programação.
Nota:
- Para simplificar a leitura deste texto, recorreu-se ao termo Cidadão Programador como neutro de género.
Sobre o Autor
A sua pesquisa entre os domínios da informática e educação visa criar uma plataforma para a gestão da aprendizagem informal infantil articulada com os recursos domésticos e objectivos formais de desenvolvimento de cada criança.
Ver arquivo →