Zoran Hercigonja
Sažetak
Programiranje u nastavi informatike u smislu usvajanja osnovnih programskih struktura, zanimljivije je kada se doda stvarni kontekst. Konkretizacija znanja i vještina učenika postiže se kroz realni kontekst u kojem je moguće izraditi program to jest algoritam s jasnim i opipljivim rezultatom. Učenici dodatne nastave informatike pomoću micro:bit tehnologije, odlučili su se za programiranje povijesnog digitalnog uređaja vrlo atraktivnog 90-ih godina prošlog stoljeća. Radi se o Tamagotchi uređaju koji se zbog svoje popularnosti zadržao sve do 2000. godine. Animirani pokreti i primitivna umjetna inteligencija digitalnih kućnih ljubimaca učenicima se svidjela kao ideja za kreiranje vlastitih digitalnih ljubimaca sa željenim pokretima i ponašanjima. Tako se krenulo u izradu vlastitog Tamagotchi kućnog ljubimca preko micro:bit uređaja koji je u ovome dobio ulogu digitalnog uređaja nalik Tamagotchi uređaju.
Ključne riječi: Tamagotchi uređaj, digitalni kućni ljubimac, programske rutine.
1. Uvod
Kako su učenici na samom početku učenja programiranja i usvajanja osnovnih programskih koncepata iskazali izniman interes i oduševljenje učenjem preko micro:bit-a rodila se ideja da se u nastavu programiranja uključi i ponešto noviji povijesni kontekst programiranja digitalnih uređaja koji su se u počecima razvoja igara kroz samostalne igrače konzole razvijali i preko popularnog uređaja Tamagotchi. Tamagotchi je bio vrlo popularan uređaj 90-ih godina koji je predstavljao programiranog ručnog kućnog ljubimca poput psa, zeca, mačke o kojem je trebalo brinuti koristeći se s nekoliko tipki na samom uređaju. Njegovim utemeljiteljima smatraju se Akihiro Yokoi iz WiZ-a i Aki Maita iz Bandaija. Bandai ga je objavio 23. studenog 1996. u Japanu i 1. svibnja 1997. u ostatku svijeta, ubrzo postajući jedan od najvećih igračaka za zabavu s kraja 1990-ih i početka 2000-ih.
Slika 1. Primjer klasičnog Tamagotchi uređaja s crno bijelim monitorom (preuzeto)
Tamagotchi nije bio samo hit u smislu novog uređaja nego i programiranih rutina koje su digitalnog kućnog ljubimca pretvarale u inteligentno biće koje je u određenim vremenskim razmacima odrađivalo neke radnje. Tako je tog digitalnog ljubimca bilo moguće dresirati, voditi u šetnju, hraniti, liječiti jednom riječju brinuti o njemu kao o pravom kućnom ljubimcu.
Ova ideja u nastavi programiranja učenike je zainteresirala prije svega iz istraživačkog aspekta jer su prije samog programiranja rutina ponašanja digitalnog kućnog ljubimca trebali istražiti Tamagotchi uređaj i njegove rutine. To je metodički bilo opravdano jer su učenici učili i usvojili osnovne programske strukture, njihovu funkcionalnost i zadaće. Stoga su ih mogli identificirati na temelju naučene funkcionalnosti. Tako su učenici pretraživali Internet u potrazi za objašnjenjima.
Pregledavali su slike, a ponajviše video materijale iz kojih su mogli uočiti osnovne programske strukture na temelju rutina ponašanja digitalnih kućnih ljubimaca.
Zajedno s učiteljem informatike učenici su na dodatnoj nastavi informatike identificirali neke od osnovnih programskih struktura i detaljno raspravili algoritme ponašanja digitalnih kućnih ljubimaca. Nakon toga su utvrdili nekoliko najjednostavnijih algoritama ponašanja digitalnih kućnih ljubimaca koje će isprogramirati pomoću micro:bit aplikacije koristeći se gotovim programskim blokovima.
2. Programiranje vlastitog Tamagotchi digitalnog kućnog ljubimca
Na dodatnoj nastavi informatike, dogovoreno je nekoliko ključnih elemenata koji su predstavljali smjernice u izradi i programiranju vlastitog Tamagotchi digitalnog kućnog ljubimca.
Ponajprije učenici su trebali odlučiti kojeg će kućnog ljubimca izraditi pomoću matrice dioda samog micro:bit uređaja. Zbog jednostavnijeg digitalnog prikaza učenici su odabirali za digitalnog kućnog ljubimca psa ili žirafu jer je na taj način pomoću matrice led dioda bilo moguće stvoriti efekt pokreta tijela digitalnog ljubimca.
Učenici su trebali konstruirati dva algoritma ponašanja odabranog kućnog ljubimca koristeći se osnovnim programskim strukturama (programskim petljama, programskim odlukama i programskim slijedom). Kada bi na micro:bit uređaju odabrali tipku A pokrenuo bi se jedan algoritam ponašanja; odabirom tipke B aktivirao bi se drugi algoritam ponašanja kućnog ljubimca znatno različit od prvog.
Za izradu algoritama ponašanja, učenici su imali četiri školska sata. Algoritme su razvijali samostalno uz mogućnost konzultacija s učiteljem informatike. Većina učenika se odlučila za psa kao digitalnog kućnog ljubimca i razvoj algoritama za ponašanje psa. No prije same izrade algoritama i programiranja učenici su temeljem matrice dioda micro:bit uređaja na papiru izradili presliku te matrice da bi mogli nacrtati likove digitalnog ljubimca psa u pokretu. Također u bilježnicama su razradili i dijagram tijeka njihovog programa. Učenici su morali odrediti početni položaj svojeg digitalnog kućnog ljubimca da bi se nakon toga mogla vidjeti razlika prilikom primjene odnosno aktivacije algoritama pokreta. Jedan od boljih primjera programiranog micro:bit digitalnog kućnog ljubimca je pas koji laje prilikom pritiska na tipku A i odlazi prilikom pritiska na tipku B.
Slika 2. Početni položaj digitalnog kućnog ljubimca psa (prikaz u simulatoru)
Početni položaj psa sa slike 2 je sjedeći položaj koji se pojavljuje svaki puta kada nije pritisnuta ni jedna tipka. Drugim riječima početni položaj ostaje tako dugo dok se pomoću tipke A ili B na samom micro:bit uređaju fizički ne aktiviraju programske rutine. Dakle micro:bit uređaj sada predstavlja Tamagotchi digitalni uređaj koji u ovom slučaju ima dvije tipke: A i B za pokretanje programskih rutina.
Slika 3. Aktivirana programska rutina odabirom tipke A na micro:bit uređaju
Položaj psa se mijenja pritiskom tipke A na micro:bit uređaju. Stvara se dojam pokreta psa koji laje, a čije se čeljusti miču tako dugo dok je tipka A aktivirana.
Slika 4. Aktivirana programska rutina odabirom tipke B na micro:bit uređaju
Druga programska rutina predstavlja algoritam odlaska psa do potpunog iščeznuća s matrice led dioda micro:bit uređaja. Na slici 4 prikazano je početno kretanje psa prema lijevoj strani matrice led dioda micro:bit uređaja. Cijelo vrijeme kako je uključena tipka B na uređaju, pas odlazi na lijevu stranu uređaja dok potpuno ne iščezne čime se stvara dojam pokreta. Naravno to nisu precizni pokreti jer je uređaj micro:bit ograničen led diodama koje ne daju prevelike mogućnosti animiranja pokreta.
Slika 5. Oznaka završetka programske rutine
Kada završi algoritam aktiviran tipkom B uključuju se četiri diode kojima je označen odlazak psa. Naravno tako dugo dok je tipka B uključena, rutina se iznova i iznova ponavlja u zatvorenoj petlji.
Slika 6. Prikaz početnog stanja i aktivacija programskih rutina na fizičkom micro:bit uređaju
Programski kod sastavljen od gotovih blokova čini se prilično jednostavan jer se koristi samo while petlja u kombinaciji sa if-else odlukom i simulacijskom pločom dioda na kojima se mogu kreirati likovi. No slijed naredbi je nešto kompleksniji jer je trebalo razmišljati o redoslijedu izvršavanja naredbi i o uvjetima koji se postavljaju da bi određeni blokovi mogli biti aktivirani.
Slika 7. Programske rutine u gotovim programskim blokovima
Tako je trebalo za postavljanje logičkih uvjeta odabirati i neke dosad nepoznate gotove blokove poput button pressed. Naravno ovdje je trebalo razmišljati i o intenzitetu pokreta. Na primjer pas koji laje treba imati nekoliko položaja koje je potrebno izraditi pomoću simulacijske ploče dioda i odrediti redoslijed. Primjerice prvi položaj kada su usta psa zatvorena i položaj kada su usta otvorena. U algoritam je trebalo uključiti oba položaja i odrediti im redoslijed izvršavanja. Kod kretanja digitalnog ljubimca psa prema lijevom rubu micro:bit uređaja bilo je potrebno preko simulacijske pločice izraditi nekoliko položaja kako bi se stvorio dojam pokreta.
Sami učenici bili su zadovoljni postignutim jer su samostalno uspjeli kreirati programsku rutinu odnosno algoritme koji oponašaju vrlo primitivnu umjetnu inteligenciju.
3. Zaključak
Primjenom micro:bit uređaja učenici su programirali zadani scenarij u nekom stvarnom kontekstu što je još više pojačalo dojam i doživljaj programiranja. Učenici su na zabavan i zanimljiv način osvijestili funkcionalnosti temeljnih programskih struktura. Ovakav način rada je pokazao dosta velik interes učenika za još ponekim realnim kontekstom u kojem je potrebno izraditi algoritam. Ono što se učenicima jako svidjelo je sama ideja da će sami moći izraditi uređaj koji simulira kućnog ljubimca nalik Tamagotchi digitalnom uređaju što predstavlja konkretizaciju njihovog znanja, vještine i logičkog razmišljanja. Programiranje kao radnja, kao aktivnost im je kroz ovu ideju dalo određenu svrhu i krajnje opipljiv rezultat.