Hoe ik lesgaf en daarna de handleiding voor Python schreef

Hoe ik lesgaf en daarna de handleiding voor Python schreef
Het afgelopen jaar heb ik als docent gewerkt bij een van de provinciale onderwijscentra (hierna - OC) die gespecialiseerd zijn in programmeren. Ik zal dit onderwijscentrum niet bij naam noemen en verder proberen zonder merknamen, auteursnamen, enzovoorts te blijven.

Dus, ik werkte als docent voor Python en Java. Dit OC kocht methodische materialen voor Java, en Python lanceerden ze pas toen ik kwam en het aanbood.

De handleiding voor studenten (in feite een leerboek of zelfstudie) heb ik geschreven voor Python, maar de lessen in Java en de gebruikte methodische materialen hebben ook een aanzienlijke invloed gehad.

Zeggen dat ze vreselijk waren, is niets zeggen. De modus van het Java-leerboek dat door een zeer bekend bedrijf in Rusland wordt geleverd, was niet om mensen de basis van deze taal en het OOP-paradigma te leren, maar om ervoor te zorgen dat de ouders, die naar open lessen kwamen, zagen hoe hun zoon of dochter een slang of schaken van het boek overschreef. Waarom zeg ik overschrijven? Heel simpel, het probleem was dat het boek hele pagina's (A4) code bevatte, waarvan sommige delen niet werden uitgelegd. Uiteindelijk moest de docent ofwel controleren op welk punt in de code elke student zich momenteel bevond, en elke regel uitleggen, of alles liep eruit op overschrijven.

Je zou zeggen: "En wat is daar zo erg aan? Laat de docent gewoon beter zijn werk doen, en schaken en de slang zijn toch echt leuk!"

Nou, het zou geweldig zijn als het aantal personen in de groep niet rond de 15 was, en dat maakt het aanzienlijk moeilijker als je iedereen moet volgen en uitleggen: "Maar wat schrijven we eigenlijk?"

Naast het aantal mensen in de groep is er nog een ander probleem met deze handleiding. De code is geschreven... hoe zal ik het zeggen, gewoon verschrikkelijk. Een verzameling van antipatronen, verouderde praktijken, aangezien het boek al lang niet meer is bijgewerkt, en natuurlijk onze favoriete stijlrichtlijnen. Dus, zelfs als je al je pupillen onder controle houdt en ze snel en duidelijk kunt uitleggen wat de overschreven code betekent, is de code zelf zo slecht dat het, zachtjes gezegd, niet leert wat het zou moeten.

En dit is het einde dat letterlijk dit leerboek afbreekt - vanaf het begin ontbreekt het aan enige adequate inleiding die uitlegt wat datatypes zijn, dat ze object- en primitieve typen omvatten, welk criterium de eigenschap controleert die deze dichotomie voortbrengt, enzovoorts. In het eerste hoofdstuk wordt u en uw leerlingen gevraagd om een programma te maken (na te schrijven) dat een venster opent en daar 'Hallo!' in schrijft, maar het wordt niet uitgelegd wat deze code precies betekent, alleen verwijzingen naar toekomstige lessen, zoals de vermelding van 'main' - het instappunt, maar zelfs het begrip 'instappunt' wordt niet besproken.

Samenvattend, dit papier was zelfs een meme onder docenten en leidinggevenden. Het leerde kinderen helemaal niets, eens kreeg ik een groep die al een jaar met dit materiaal werkte, maar ze konden nog steeds geen lus schrijven. Opmerking: ze waren allemaal erg slim en het ging snel beter. De meeste collega's probeerden zich te distantiƫren van de methodische materialen, zodat de stof werd begrepen en niet gewoon in de lucht verdween, hoewel er ook minder zorgvuldige mensen waren die het normaal vonden dat hun leerling zonder enige uitleg overschreef.

Toen het duidelijk werd dat ik de cursus ging verlaten en ik het Python-programma volgend jaar op de een of andere manier moest voortzetten, begon ik mijn eigen leerboek te schrijven. Kort samengevat, ik heb het in twee delen verdeeld; in het eerste deel legde ik alles uit over datatypes, hun essentie, bewerkingen ermee en instructies van de taal. Tussen de onderwerpen maakte ik Q&A's, zodat de toekomstige docent kon begrijpen hoe de leerling het onderwerp had begrepen. Aan het einde maakte ik een kleine projectopdracht. Het eerste deel legt op die manier de basisprincipes van de taal uit en behandelt deze, wat ongeveer 12-13 lessen van 30-40 minuten omvat. In het tweede deel schreef ik al over OOP, beschreef ik hoe de implementatie van dit paradigma in Python verschilt van de meeste andere, en maakte ik veel verwijzingen naar de style guide, enzovoorts. Om het samen te vatten - ik probeerde zo weinig mogelijk op de inhoud van het Java-leerboek te lijken. Onlangs heb ik de huidige Python-docent geschreven en vroeg ik om feedback op het materiaal en ik ben nu blij dat alles goed gaat, dat de kinderen echt begrijpen wat programmeren in Python is.

Welke conclusie wil ik uit dit verhaal trekken: mijn beste ouders, als u overweegt uw kind naar een opleidingscentrum te sturen, let dan goed op wat ze doen, zodat uw kind zijn tijd niet onnodig verspilt en in de toekomst zijn zin om te programmeren niet verliest.

UPD: Zoals terecht opgemerkt in de comments, heb ik bijna niets gezegd over de presentatie van het materiaal. Ik zeg meteen dat er meer praktijkervaring zou moeten zijn, zoveel mogelijk. Aan het einde van elk les in het eerste deel deed ik 4-5 kleine praktische opdrachten over het onderwerp van het hoofdstuk. Tussen de hoofdstukken waren er QnA-sessies (controlelessen), waar ook praktische, maar al beoordelde opdrachten waren, en aan het einde van het eerste deel was er een project met een onderwerp naar keuze van de voorgestelde. In het tweede deel heb ik een inleiding in OOP gegeven door een console mini-game te maken, waarvan de ontwikkeling het hele tweede deel en de hele inleiding in de paradigma was.

Alleen geregistreerde gebruikers kunnen deelnemen aan de enquĆŖte. Log in, alstublieft.

Lernt uw kind programmeren in een opleidingscentrum?

  • 4,6%Ja3

  • 95,4%Nee62

65 gebruikers hebben gestemd. 27 gebruikers hebben zich onthouden.

Bron: habr.com

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster