Kao što sam učio, a zatim napisao priručnik o Pythonu

Kao što sam učio, a zatim napisao priručnik o Pythonu
Celu prošlu godinu radio sam kao nastavnik u jednom od pokrajinskih centara za obuku (u daljem tekstu – TC), specijalizovan za nastavu programiranja. Neću imenovati ovaj centar za obuku, a pokušaću i bez imena firmi, imena autora itd.

Dakle, radio sam kao predavač Pythona i Jave. Ovaj CA je kupovao metodološke materijale za Javu, a oni su pokrenuli Python kada sam došao i ponudio im ga.

Napisao sam priručnik za studente (u suštini udžbenik ili tutorijal) na Pythonu, ali podučavanje Jave i metodološki materijali koji su tamo korišćeni imali su značajan uticaj.

Reći da su bili strašni je malo reći. Način rada udžbenika Java, koji isporučuje jedna veoma poznata kompanija u Rusiji, nije bio da nauči osobu osnovama ovog jezika uopšte i posebno OOP paradigmi, već da roditelji koji dolaze na otvorene lekcije mogu da vide kako su sin ili ćerka otpisali zmiju ili šah iz udžbenika. Zašto kažem otpisan? Vrlo je jednostavno, činjenica je da je udžbenik sadržavao čitave listove (A4) koda, čije neke tačke nisu objašnjene. Kao rezultat toga, nastavnik ili mora kontrolisati u kojoj se tački koda nalazi svaki učenik, objašnjavajući svaki red, ili se sve pretvara u varanje.

Reći ćete: „Pa šta, neka učitelj radi bolje, a šah i zmija konačno mogu biti kul!”

Pa, sve bi bilo super da broj ljudi u grupi nije ispod 15, a to je već značajno ako ćete pratiti sve, objašnjavajući: “Ali zašto ovo pišemo?”

Osim broja ljudi u grupi, postoji još jedan problem povezan s ovim priručnikom. Šifra je napisana... kako da kažeš, samo grozno. Skup anti-šablona, ​​arhaičan, budući da tutorijal dugo nije ažuriran, a naš omiljeni, naravno, je vodič za stil. Stoga, čak i ako kontrolišete sve svoje štićenike i možete im brzo i jasno objasniti šta znači šifra koja se otpisuje, sama šifra je toliko strašna da će vas, najblaže rečeno, naučiti pogrešnom.

Pa, poslednja stvar, koja doslovno uništava ovaj tutorijal - od samog početka nema barem donekle adekvatnog uvoda koji objašnjava šta su tipovi podataka, šta su objektni i primitivni, koji kriterijum provjerava svojstvo koje generiše ovu dihotomiju, itd. U samom prvom poglavlju, vi i vaši učenici ste pozvani da napravite (otpišete) program koji pravi prozor i piše “Halo!” Tamo, međutim, ne objašnjava šta ovaj kodni list zapravo znači, već samo povezuje sa daljim časovima , na primjer, “main” je ulazna tačka, ali sam koncept “ulazne tačke” nije ni spomenut.

Ukratko, ovaj otpadni papir bio je mem čak i među nastavnicima i menadžmentom. Djecu nije naučila apsolutno ničemu, jednom sam naišao na grupu koja je godinu dana učila koristeći ove materijale, kao rezultat nisu mogli ni ciklus napisati, napominjem da su svi bili jako pametni i ubrzo sve nije bilo tako loše . Većina kolega se trudila da odstupi od metodičkih materijala kako bi se gradivo asimiliralo, a ne samo letjelo u zrak, iako je bilo i manje savjesnih ljudi koji su smatrali normalnim da njihov učenik prepisuje bez ikakvog objašnjenja.

Kada je postalo jasno da ću napustiti UC, a Python program se mora nekako nastaviti sljedeće godine, počeo sam pisati svoj udžbenik. Ukratko, podijelio sam ga na dva dijela, u prvom sam objasnio sve o tipovima podataka, njihovoj suštini, operacijama s njima i jezičnim uputstvima. Između tema sam radio QnA kako bi budući nastavnik mogao razumjeti kako je učenik naučio temu. Pa, na kraju sam napravio mali zadatak-projekat. Prvi dio tako objašnjava osnove jezika i žvače ih, što je otprilike 12-13 lekcija od 30-40 minuta. U drugom dijelu sam već pisao o OOP-u, opisao kako se implementacija ove paradigme u Python-u razlikuje od većine drugih, napravio mnogo linkova na vodič za stilove itd. Da rezimiramo - pokušao sam da budem što je moguće drugačiji od onoga što je bilo u Java tutorijalu. Nedavno sam pisao svom sadašnjem učitelju Pythona, tražeći povratnu informaciju o materijalima, i sada mi je drago da je sve u redu, da djeca zaista razumiju Python programiranje.

Kakav zaključak bih izvukao iz ove priče: dragi moji roditelji, ako odlučite da pošaljete svoje dijete na UC, onda pažljivo pratite šta rade, da vaše dijete ne gubi vrijeme uzalud, pa da ubuduće to činite nemojte ga obeshrabriti od programiranja.

UPD: Kao što ste ispravno primijetili u komentaru, nisam rekao gotovo ništa o prezentaciji materijala. Odmah ću reći da smatram da treba više prakse, koliko god je to moguće. Na kraju svake sesije u prvom dijelu radio sam 4-5 malih vježbi na temu poglavlja. Između poglavlja nalazili su se QnA (kontrolne lekcije), gdje su se nalazili i praktični, ali već procijenjeni zadaci, a na kraju prvog dijela bio je projekat sa temom za izbor. U drugom dijelu sam napravio uvod u OOP kroz kreiranje konzolne mini-igre, čiji je razvoj bio cijeli drugi dio i cijeli uvod u paradigmu.

Samo registrovani korisnici mogu učestvovati u anketi. Prijavite semolim.

Da li vaše dijete uči programirati u centru za učenje?

  • 4,6%Da3

  • 95,4%No62

Glasalo je 65 korisnika. Uzdržano je bilo 27 korisnika.

izvor: www.habr.com

Dodajte komentar