Skip to main content
Skip to Main Content
Skip to main content
Navegação

Usando Blocos para Ensinar Codificação a Novatos de Qualquer Idade

By Aimee DeFoe Nov 8, 2023

O uso de ambientes de codificação baseados em blocos, como o VEXcode, é uma maneira eficaz de ensinar ciência da computação a codificadores iniciantes de qualquer idade1. Embora muitas pessoas vejam a programação baseada em blocos como apropriada apenas para jovens estudantes ou ambientes informais de aprendizagem, a codificação baseada em blocos na verdade ajuda estudantes de todas as idades a aprender a codificar.

Na Conferência de Educadores VEX de 2023, o Dr. David Weintrop compartilhou uma visão geral de sua pesquisa apoiando o uso de codificação baseada em blocos para estudantes iniciantes de ciência da computação em sua apresentação “Pesquisa em Ciência da Computação em Salas de Aula K-12”2. O trabalho do Dr. Weintrop mostra como a codificação baseada em blocos é uma ferramenta poderosa para ensinar cientistas da computação iniciantes, pois reduz as cargas cognitivas dos alunos, aumenta o engajamento e a motivação e promove a compreensão conceitual dos alunos sobre conceitos de ciência da computação.

Em sua apresentação, o Dr. Weintrop descreveu um estudo no qual trabalhou com alunos que faziam um curso introdutório de Ciência da Computação em uma grande escola pública urbana. Os alunos, em três turmas diferentes da mesma turma, chegaram com o mesmo nível mínimo de conhecimento prévio, e foram ministrados com o mesmo currículo, pelo mesmo professor, e utilizando o mesmo ambiente de codificação. A única diferença foi que cada grupo usou um método de codificação diferente - baseado em texto, baseado em bloco ou um híbrido dos dois. Após a conclusão do currículo de cinco semanas, os alunos que aprenderam usando a codificação baseada em blocos obtiveram uma pontuação estatisticamente maior do que os dos outros grupos.

Resultado de Aprendizagem por Gráfico de Linha de Condição

Menor carga cognitiva para iniciantes

Uma razão pela qual o uso de codificação baseada em blocos com codificadores iniciantes é tão eficaz é que ele reduz a carga cognitiva, permitindo que eles se concentrem nos conceitos de ciência da computação que os professores desejam que eles internalizem. Ao iniciar os alunos a aprender a codificar usando texto, eles devem se concentrar em uma infinidade de detalhes de sintaxe apenas para obter os comandos mais simples para serem executados corretamente. Isso é ilustrado pela imagem abaixo de um projeto VEXcode VR Python muito simples para um robô avançar 200 milímetros e depois virar à direita. Nesse projeto simples, os alunos devem ter certeza de que parênteses, dois pontos e sublinhados estão no lugar correto, que os parâmetros são inseridos na ordem correta, que todos os recuos estão corretos e que não há erros ortográficos! Um erro com qualquer um desses detalhes faria com que o projeto não fosse executado. 

Visualizador de código VEXcode VR

A codificação com blocos, por outro lado, elimina a necessidade de se concentrar em tais detalhes desde o início. Com os blocos, os alunos estão escolhendo entre uma caixa de ferramentas de opções de comando, em vez de recuperar comandos da memória e digitá-los perfeitamente. Os blocos são fáceis de ler – são muito mais parecidos com a linguagem falada e podem ser lidos da esquerda para a direita, de cima para baixo. Os blocos se empilham para que os alunos não precisem se preocupar com a indentação e saibam que o projeto fluirá como pretendido. 

A imagem abaixo é de um projeto em que o robô se comporta como o projeto Python acima, mas um programador iniciante pode facilmente arrastar blocos, empilhá-los juntos, alterar parâmetros conforme necessário e se concentrar em entender o sequenciamento envolvido.

Blocos VEXcode VR

Em sua apresentação, o Dr. Weintrop descreveu outro estudo no qual analisou os alunos que faziam cursos de Princípios de Ciência da Computação da AP, para ver se o uso de instruções e avaliações baseadas em blocos afetava seu desempenho no exame da AP3. Ele descobriu que todos os alunos tiveram melhor desempenho nas perguntas do exame baseado em blocos e que os alunos de populações historicamente excluídas do ensino de ciência da computação, como estudantes de minorias e mulheres, encontraram benefícios ainda maiores com o ensino e as avaliações baseadas em blocos.

Gráfico de barras de princípios de ciência da computação AP

Gráfico de Barras de Princípios de Ciência da Computação AP - Perguntas Baseadas em

Aumentar a motivação e o envolvimento

Além disso, a codificação com blocos pode aumentar a motivação dos alunos e o envolvimento contínuo com a ciência da computação4. Com os blocos, um ciclo de feedback visual rápido, como assistir ao comportamento de um robô virtual no VEXcode VR, juntamente com a facilidade de modificar projetos de blocos, permite que os alunos tenham experiências de codificação bem-sucedidas que validam seu aprendizado. 

Ao codificar com texto, os novatos geralmente enfrentam erros de compilação mistificadores devido à sintaxe incorreta ou erros ortográficos. Um pequeno erro pode fazer com que um problema não seja executado, o que pode ser esmagador e frustrante. Essas frustrações podem se acumular rapidamente, e o feedback que os alunos podem internalizar é que a ciência da computação é muito difícil e, portanto, não é para eles.

Mensagem de erro VEXcode VR

A codificação baseada em blocos foi projetada para evitar isso. Como as formas de bloco se encaixam apenas de maneiras específicas, é impossível cometer um erro de compilação. Por exemplo, ao codificar em blocos, é impossível colocar um bloco repórter de forma oval como uma condição no bloco hexagonal [Espere até]. Apenas um bloco hexagonal será aceito. (veja a imagem abaixo), porque eles não se encaixam. Embora um projeto de codificação baseado em blocos possa não se comportar como pretendido, os alunos são capazes de solucionar facilmente a lógica de seu projeto, em vez de lutar com a sintaxe.

VEXcode VR três blocos

Promover a compreensão conceitual de CS

Quando os alunos aprendem a codificar usando blocos, projetos complexos de ciência da computação são mais facilmente compreendidos. Uma compreensão conceitual de loops, condicionais, algoritmos e variáveis pode ser desenvolvida em um ambiente baseado em blocos, porque a codificação com blocos reduz a barreira para esses conceitos quando a carga cognitiva é reduzida e a motivação e persistência dos alunos são aumentadas. Na apresentação, o Dr. Weintrop compartilhou como as percepções dos alunos sobre a programação baseada em blocos confirmam isso, conforme mostrado abaixo.

Percepções da Programação Baseada em Blocos

Conforme explicado na apresentação, a codificação baseada em blocos é uma ferramenta poderosa que permite que alunos de todas as idades aprendam ciência da computação introdutória. A ideia de que alunos do ensino médio ou mais velhos devem começar a codificar em texto faz um desserviço aos alunos. Afinal, se um aluno do ensino médio estivesse apenas começando a aprender a tocar piano, você não os iniciaria insistindo que eles tocassem sonatas de Beethoven porque são peças de piano “reais”. Eles aprenderiam usando as ferramentas de escalas, arpejos e livros de músicas introdutórios – andaimes muito "reais" necessários para tocar piano com sucesso - por que não dar aos alunos de ciência da computação a mesma oportunidade de usar a ferramenta certa para o trabalho!

Para ver a apresentação e saber mais sobre o trabalho do Dr. Weintrop, veja este vídeo da Conferência de Educadores VEX 2023 na Biblioteca de Vídeos PD+. Quer saber mais sobre como ensinar com o VEXcode VR e por que iniciar os alunos com a codificação baseada em blocos é tão poderoso? Confira a nova Masterclass de PD+ Aproveitando ao máximo o ensino com o VEXcode VR. E, se você quiser conversar com um especialista do VEX sobre qualquer coisa neste artigo, inscreva-se para uma sessão individual ou publique sua pergunta na comunidade PD+.