12. detsember 2019

Plokid ehk alamprogramm Scratchis (õppematerjal)

Kuna otsustasin sel õppeaastal viiendale klassile õpetada Scratchis alamprogrammide teemat, siis koostasin selleks otstarbeks õppematerjali: kaks videojuhendit. Lisaks kirjalik juhend, milles koostatakse programm, mis on videoõpetuste aluseks.

Varasemates Scratchi versioonides oli alamprogrammi (ehk funktsiooni ehk protseduuri) koostamiseks defineeri plokid. Scratchis 3.0 saab ise luua ilusaid roosasid plokke, mida siis oma koodis kasutada.

Alamprogrammide teema ei ole kindlasti üks kõige lihtsam, mida õpetada. Nii nagu tekstilise programmeerimiskeele õpetamisel algajatele võetakse selle teema juures appi joonistamine (kilpkonnagraafika), siis kasutasin Scratchi puhul sama lähenemist.

Õppematerjal


Kirjalikus juhendis joonistatakse hulknurk. Selleks alamprogrammi ei kasutata.

Videojuhendi 1. osas kasutatakse hulknurga joonistamiseks juba alamprogrammi.

Videojuhendi 2. osas luuakse veel üks alamprogramm ning kasutatakse alamprogrammi alamprogrammi sees, et joonistada lilleõis.

Vabandan, et videote kvaliteet ei ole suurepärane.

Ülesanded

Olen seda varemgi rõhutanud, et õpetamisel ei piisa sellest, kui õpilane programmeerib ainult juhendi järgi. See on alles esimene etapp. Järgmisena tulevad ülesanded, kus õpilane peab iseseisvalt (st juhendi abita) programmeerima. Siin on kaks ülesannet, mida võib Scratchis alamprogrammi teema õpetamisel kasutada.

Ülesanne 1. Projekt "Lillepeenar". Täienda oma olemasolevat programmi nii, et joonistatakse lillepeenar, kus kasvab mitu lille ning päike, mille kiirteks on kolmnurgad. Näide valmis joonistusest:
Lillepeenar_Scratch_alamprogramm: plokid_Kristi_Proge_blog
Kuvatõmmis
Sellise pildi joonistamiseks luuakse uued plokid vars, lillepeenarkolmnurk ja päike.

Ülesanne 2. Tööta paarilisega. Mõlge ise välja üks pilt, milles joonistatakse geomeetrilistest kujunditest objekte. (Objektideks on näiteks lill ja päike eelmises programmis.)

Alloleval pildil on objektideks kuusk, maja ja lumehelves. Kuuskede joonistamiseks on kasutatud kolmnurki, maja jaoks ruutu ja kolmnurka ning lumehelveste jaoks sirgjoont.
Talv_Scratch_alamprogramm_Kristi_Proge_blog
Kuvatõmmis

Vihje: Selle ülesande juures on väga soovitav paluda õpilastel pilt enne paberile joonistada ja õpetajale ette näidata. Õpetaja annab tagasisidet ja laseb õpilastel selgitada lühidalt, kuidas nad selle pildi Scratchis programmeerivad (Millised alamprogrammid koostavad.). Õpetaja oskab ette näha, millised raskused võivad pildi programmeerimisel tekkida - neid ei pruugi kogenematu silm märgata - ja seeläbi programmeerimisel tekkivaid probleeme ennetada.

Mõlemad ülesanded nõuavad õpilaselt abstraktset mõtlemist ja Bloomi taksonoomia tipupoolses osas asuvate oskuste rakendamist. Õpetaja peab kindlasti olema valmis õpilasi selle ülesande juures juhendama.


Kui soovid Scratchis joonistamise õpetamise kohta veel lugeda, siis olen sellel teemal kirjutanud ka siin.

Jälgi KristiProget ka Facebookis.

5. detsember 2019

TedEd "Mõtle nagu programmeerija" episoodid 1-3

ThinkLikeACode_Kristi_Proge_Blog
Foto: blog.ted.ed.com

Selle kooliaasta alguses tuli TED Education välja animeeritud seriaaliga "Think Like A Coder", mille eesmärk on õpetada programeerimise põhikontseptsioone. Kokku on seriaalis 10 osa, millest praegu on avaldatud esimesed kolm.

Seriaali peategelane on tüdruk Ethic ja tema kaaslane robot Hedge, kes elavad robotite poolt kontrollitud maailmas. Maailma päästmiseks peavad nad lahendama mitmeid probleeme (ülesandeid, missioone) ning lahenduseni aitab jõuda programmeerija moodi mõtlemine.

Iga umbes 6-minutiline episood keskendub ühele programmeerimise põhioskusele.

Esimeses episoodis õpitakse põgenemismissiooni käigus tsüklite kohta, täpsemalt for-tsüklit ja while-tsüklit kasutama, et lukustatud ruumist ja robotite poolt valvatud ehitisest välja pääseda.

Teises episoodis otsitakse vastupanuliikumise juhti, kelle abiga maailm päästa. Juhi leidmiseks kasutatakse valiklausete ehk tingimuslausete ja tõeväärtuse abi (välistamine).

Kolmanda episoodi missiooniks on vabastada inimesed Furnance bottide ikke alt. Selleks tuleb ulmefilmidele omaselt tuvastada kõikide robotite ema (n-ö nullpatsient). Tuvastatamiseks võetakse appi muutujad.

Mulle meeldib TedEd seriaali "Think Like A Coder" idee ja igas episoodis lahendamist vajavad probleemid pakuvad vaatajale põnevust ning on kenasti loo ja programmeerimisega seotud.

Seriaalist üksi jääb siiski väheseks. Tore oleks, kui iga episoodi kohta jäetaks vaatajale nuputamiseks mõned probleemid, mille lahendamiseks peab ta kasutama episoodis tutvustatud lahenduskäiku. Interaktiivsed ülesanded oleks veel eriti hea.

Minul tekkis TedEd animatsiooni vaadates mitu ideed, mida (põhikooli) tundides programmeerimise õpetamiseks kasutada. Täpsemalt arvutivaba /seadmeta tegevuste jaoks.

Seriaal on inglisekeelne. Eestikeelseid subtiitreid pole.




Jälgi KristiProget ka Facebookis.