Como eu ensinei, e depois escrevi um manual de treinamento em Python

imagem

Durante todo o ano passado, trabalhei como professor em um dos centros de treinamento provinciais (doravante - a UC), especializado em programação de ensino. Não vou citar este centro de treinamento, apenas tentar ficar sem nomes de empresas, nomes de autores, etc.

Então, eu trabalhei como professor em Python e em Java. Esse centro de treinamento comprou materiais metodológicos para Java e eles começaram o Python quando eu vim e os ofereci isso.

Eu escrevi um manual de treinamento para estudantes (essencialmente um livro ou um manual de auto-instrução) em Python, mas o ensino de Java e os materiais de ensino que foram usados ​​tiveram um pequeno impacto.

Dizer que eles eram terríveis é não dizer nada. O modus do livro Java, fornecido por uma empresa muito conhecida na Rússia, não era ensinar a uma pessoa o básico dessa linguagem em geral e o paradigma OOP em particular, mas permitir que os pais que vieram abrir lições vissem como eles filho ou filha escreveu uma cobra ou xadrez de um livro. Por que estou dizendo desativado? Muito simples, o fato é que o livro continha folhas inteiras (A4) de código, alguns dos quais não foram explicados. Como resultado, o professor deve controlar em que ponto do código cada aluno está agora, explicando cada linha, ou tudo se transforma em trapaça.

Você dirá: "Bem, qual é o problema, deixe o professor trabalhar melhor, mas o xadrez e a cobra são realmente bons!"

Bem, tudo seria legal se o número de pessoas no grupo não tivesse menos de 15 anos, e isso já é significativo, se você seguir todos, explicando: “Mas ainda assim, o que estamos escrevendo?”

Além do número de pessoas no grupo, há outro problema associado a este manual. O código está escrito ... como dizer, simplesmente horrível. Um conjunto de antipadrões, arcaicos, já que o livro não é atualizado há muito tempo, e nosso favorito, é claro, é o estilo do guia. Portanto, mesmo que você controle todas as suas cobranças e possa explicar de maneira rápida e compreensível o que o código está anulado, o código em si é tão terrível que ele ensinará a dizer o mínimo.

Bem, e o final, literalmente destruindo este livro - desde o início, não há pelo menos uma introdução adequada que explique o que são tipos de dados, que são objetos e primitivos, que critério verifica a propriedade que gera essa dicotomia etc. No primeiro capítulo, você e seus alunos são convidados a criar (escrever fora) um programa que cria uma janela e escreve "Olá!", Mas não explica o que realmente significa esta folha de código, apenas os links para outras classes, por exemplo, "main "- o ponto de entrada, mas o próprio conceito de" ponto de entrada "nem é pronunciado.

Para resumir, esse desperdício de papel era um meme mesmo entre educadores e liderança. Ela não ensinou nada às crianças, uma vez que me deparei com um grupo estudando esses materiais por um ano, como resultado, eles nem conseguiam escrever um ciclo, observo que eram todos muito inteligentes e logo tudo não estava tão ruim. A maioria dos colegas tentou se desviar dos materiais de ensino para que o material fosse assimilado e não apenas voasse no ar, embora houvesse pessoas menos conscientes que considerassem normal que o aluno descartasse sem nenhuma explicação.

Quando ficou claro que eu deixaria a CA, e o programa Python teve que continuar de alguma forma no próximo ano, comecei a escrever meu livro. Em resumo, eu o dividi em duas partes; na primeira, expliquei tudo sobre tipos de dados, sua essência, operações com eles e instruções de linguagem. Enquanto isso, ele fez o QnA para que o futuro professor pudesse entender como o aluno aprendeu o tópico. Bem, no final, fiz uma pequena tarefa de projeto. A primeira parte explica os conceitos básicos do idioma e os mastiga, ou seja, 12 a 13 lições de 30 a 40 minutos. Na segunda parte, eu já escrevi sobre OOP, descrevi como a implementação desse paradigma no Python difere da maioria dos outros, fiz muitas referências ao guia de estilo, etc. Para resumir - tentei ser o mais diferente possível do que estava no tutorial sobre Java. Recentemente, escrevi para um professor de Python atual, pedi um feedback sobre os materiais e agora estou feliz que tudo esteja bem, que as crianças realmente entendam a programação em Python.

Que conclusão eu gostaria de tirar dessa história: meus queridos pais, se você decidir enviar seu filho para um centro de ensino, monitore cuidadosamente o que está fazendo para que seu filho não perca tempo em vão, a fim de não desencorajá-lo de programar no futuro.

UPD: Como corretamente observado no comentário, não falei quase nada sobre a apresentação do material. Direi imediatamente que acredito que deveria haver mais prática, tanto quanto possível. No final de cada lição da primeira parte, realizei 4-5 pequenas tarefas práticas sobre o tópico do capítulo. Entre os capítulos estava o QnA (lições de controle), onde também havia tarefas práticas, mas já avaliadas, e também no final da primeira parte, havia um projeto com um tema para escolher dentre os propostos. Na segunda parte, fiz uma introdução ao OOP através da criação de um minijogo de console, cujo desenvolvimento foi a segunda parte inteira e toda a introdução ao paradigma.

Source: https://habr.com/ru/post/pt486156/


All Articles