
Kogu eelneva aasta töötasin õpetajana ühes provintsi õppekeskkonnas (edaspidi – ÕK), mis spetsialiseerus programmeerimise õpetamisele. Ma ei hakka seda õppekeskkonda nimetama, püüan üldiselt vältida ettevõtete nimesid, autorite nimesid jne.
Nii et töötasin Python ja Java õpetajana. See ÕK ostis metoodilisi materjale Java jaoks, kuid Python käivitati alles siis, kui ma sinna tulin ja selle ettepaneku tegin.
Õpilaste metoodika (sisuliselt õpik või iseseisev õppematerjal) kirjutasin Pythonis, kuid mitte väikest mõju avaldas Java õpetamine ja seal kasutatud metoodilised materjalid.
Öelda, et nad olid kohutavad — ei ütleks midagi. Ühe Venemaal tuntud ettevõtte Java õpik ei keskendunud sellele, et õpetada inimesi selle keele põhialuseid ja OOP paradigmaid, vaid sellele, et vanemad, kes tulid avatud tundidesse, näeksid, kuidas nende pojad või tütred kopeerivad raamatust madusid või malet. Miks ma ütlen kopeerimine? Sangast on lihtne, et õpik sisaldas terveid lehti (A4) koodi, mille mõningaid osi ei seletatud. Lõppkokkuvõttes peab õpetaja kas jälgima, kus kohas koodis iga õpilane on, seletades iga rida, või kõik libiseb kopeerimiseks.
Sa ütled: «Mis siis, las õpetaja parem töötab, ja malet ja madusid mängida on üldse äge!»
Tõepoolest, kõik oleks äge, kui grupis ei oleks peaaegu 15 inimest, mis muudab asja palju keerulisemaks, kui plaanite jälgida kõiki, seletades: «Aga ikkagi, mida me sellist kirjutame?»
Lisaks grupi liikmete arvule on selle metoodikaga seotud veel üks probleem. Kood on kirjutatud… noh, kuidas öelda, lihtsalt kohutavalt. Antipatternide kogum, arhaismid, kuna õpik ei ole ammu uuendatud, ja meie lemmik — stiilijuhendid. Seetõttu, isegi kui suudate kõiki oma aluste kontrollida ja selgitada neile kiiresti ja arusaadavalt, mida tähendab kogutud kood, on kood ise nii kohutav, et õpetab, õrnalt öeldes, vale asju.
Ja viimane punkt, mis kägistab tõeliselt seda õpikuid — algusest peale puudub vähemalt mingigi mõistlik sissejuhatus, mis seletaks, mis on andme tüübid, et need on objekti- ja primitiivsed, milline kriteerium kontrollib omadust, mis tekitab selle dikotoomia jne. Esimeses peatükis palutakse teil ja teie õpilastel kirjutada programm, mis loob akna ja kirjutab sinna "Tere!", aga seal ei selgitata, mida see kood actually tähendab, vaid ainult viidatakse edasistele tundidele, näiteks main'i — sisendpunkti mainimist, kuid isegi mõistet "sisendpunkt" ei selgitatud.
Kokkuvõttes oli see materjal isegi õpetajate ja juhtide seas nali. See ei õpetanud lastele praktiliselt midagi. Kord kohtasin gruppi, kes õppis neid materjale juba aasta, ning lõpuks ei osanud nad isegi tsüklit kirjutada, kuigi kõik nad olid väga nutikad ja peagi ei olnud enam nii halb. Enamik kolleege püüdis kaldu minna meetodilistest materjalidest, et materjal omandataks, mitte lihtsalt ei lendaks õhku, kuigi leidus ka vähem kohusetundlikke inimesi, kes pidasid normaalseks, et nende õpilane kopeerib ilma igasuguste selgitusteta.
Kui sai selgeks, et lahkun UCe-st ja et Pythoni programmi tuleb järgmisel aastal kuidagi jätkata, hakkasin kirjutama oma õpikuid. Lühidalt öeldes jagasin selle kaheks osaks. Esimeses osas selgitasin kõike andmetüüpide, nende olemuse, neid puudutavate toimingute ja keele juhiste kohta. Teemade vahel tegin QnA, et tulevane õpetaja näeks, kuidas õpilane teemat mõistab. Lõppu lisasin väikese projektitöö. Esimene osa selgitab seega keele aluseid ja arutab neid, mis moodustab umbes 12–13 tundi, igaüks 30–40 minuti. Teises osas käsitlesin juba OOP-d, kirjeldades, kuidas selle paradigma rakendamine Pythonis erineb enamiku teiste puhul, tegin palju viiteid stiili juhendile jne. Kokkuvõttes – püüdsin olla maksimaalselt erinev sellest, mis oli Java õpikutes. Hiljuti kirjutasin oma praegusele Python'i õpetajale, küsisin tagasisidet materjalide kohta ja nüüd olen rõõmus, et kõik on hästi, ja et lapsed mõistavad tõeliselt Pythonis programmeerimist.
Milline järeldus ma selle loo põhjal teeksin: kallid vanemad, kui otsustate oma laps anda õpikodadesse, jälgige hoolikalt, mida nad teevad, et teie lapse aeg ei läheks raisku ning et tulevikus ei kaotaks ta soovi programmeerida.
UPD: Como õigesti märgiti kommentaaris, ei öelnud ma peaaegu midagi sisu esitamisest. Ütlen kohe, et arvan, et praktikat peaks olema rohkem, võimalikult palju. Iga esimese osa tunni lõpus tegin 4-5 väikest praktilist ülesannet peatüki teema kohaselt. Peatükide vahel olid QnA (kontrolltunnid), kus oli samuti praktika, kuid juba hinnatud ülesanded. Samuti oli esimese osa lõpus projekt koos valitud teemaga. Teises osas tegin sissejuhatuse OOP-sse, luues konsoolimängu, mille arendus oli kogu teise osa fookus ja sissejuhatus paradigmasse.
Ainult registreeritud kasutajad saavad küsitluses osaleda. , palun.
Kas teie laps õpib programmeerimist õpikojas?
4,6%Jah3
95,4%Ei62
Hääletanud 65 kasutajat. 27 kasutajat jäi erapooletuks.
Allikas: habr.com
