Gamifikáció a saját gyakorlatomban. Játékos programozásoktatás*
TASNÁDI ILDIKÓ
„Kerüljük a kényszert, s hagyjuk,
hogy a kisgyermek örömmel tanuljon.
A gyerekek játékok révén okosodnak,
a kényszeres okítás nem jut el a lelkükig.”
(Platón)
Gamification, gamifikáció, játékosítás − ezek a fogalmak manapság nagyon sokat használt kulcsszavak egy-egy szakmai konferencián vagy tanulmányban. Pedig nem is olyan új keletű ez a módszer. Maga a szó talán igen. A gyakorló pedagógus, aki folyamatosan képes megújulni, aki a saját hibáiból is képes tanulni, aki meri mások bevált módszereit kipróbálni és alkalmazni, az előbb utóbb eljut arra a felismerésre, hogy lehet és érdemes játékos formában is tanítani. Felfedezheti, hogy a tanulás terén is milyen örömet tud okozni a játékosság, élvezheti, hogy a játék során megszerzett tudás mennyivel hatékonyabb, mennyivel könnyebben beépül a tanulók tudástárába, és nem utolsó sorban a diákok számára is örömtelibbé varázsolja a „nagyon-nem-szeretem-tanulást”.
Korábbi gyakorlataim
A játékos informatikaoktatással még főiskolás koromban találkoztam, jó harminc évvel ezelőtt. Tanárom, Farkas Károly, a hazai logo-oktatás úttörőjének segítségével ismerkedtem meg a logikus gondolkodás fejlesztését szolgáló programozással. Ebben az időben nagyon ritka volt, hogy egy-egy iskola, vagy egy osztály számítógéppel legyen felszerelve. A tanár rákényszerült, hogy minél leleményesebben tudja átadni az elsajátíttatni kívánt tananyagrészt a diákok számára. Amíg két-három gyereket le tudott ültetni az egyetlen számítógép elé, addig a többi tanulónak is le kellett kötni a figyelmét. Ilyenkor a számítógépes feladatokat (1. kép) más-más formában kellett a diákoknak odaadni.
Lássunk egy példát:
A cél, hogy valakit vagy valamit A pontból eljuttassuk B pontba (egy ábra körberajzolása, a legrövidebb útvonal keresése, a programozott kisállat élelemgyűjtése stb.). Ez a diák szempontjából lehet probléma-, de lehet feladatmegoldás is, attól függően, hogy milyen előismeretekkel rendelkezik, hogy minden szükséges tudásnak a birtokában van-e; vagy tudunk-e számára elegendő időt biztosítani a kísérletezésre, a tapasztalatgyűjtésre.
Játékos módszerek (Farkas 2011: 11), amiket bevethetünk a számítógép mellett:
- Teknőc kertje (itt vörösbegy) vagy Labirintus feladatlapok (2. kép);
- Játszunk robotot – egymás programozása;
- ROAMER padlóteknőc, Compurobot vagy más egyéb eszköz programozása.
Természetesen nem csak a programozást lehet játékos formában tanítani. Vannak olyan tananyagrészek, amelyeket nehezebben sajátítanak el a diákok, több elmélet van benne, mint gyakorlat, ezért szintén meg kell küzdenünk az ismeretek átadásával. Néhány évig egy művészeti szakközépiskola informatikatanára voltam, ahol a diákokat az informatika csak annyiban érdekelt, hogy hol és hogyan jelennek meg az internet világában; kivel és miként osztják meg az önmagukról készített szelfiket. Ilyen környezetben is meg kell találni azt a módszert, amivel a tananyag elsajátíttatható. Eszköztárunk bővítéséhez az internet nagyon sok segítséget nyújt a tudatosan keresgélő tanár számára.
Az előbb említett „nem-szeretem” témákhoz tartozik a hardver- és szoftverismeret. Igyekeztem minél egyszerűbb, sok képet tartalmazó prezentációkat összeállítani az új anyag ismertetésénél, de a gyakorláshoz, az elmélyítéshez már egy játékos formát, a Fling the Teacher (1) kvízjátékot választottam, amihez egy motiváló funkciót is párosítottam. Ha valakinek sikerült a tanórán hibátlanul megoldania a tesztsort, akkor órai ötöst kapott. Többször is lehetett próbálkozni.
A teszt lényege röviden az, hogy 15 kérdésre hibátlanul kell válaszolni, hogy a játékos környezetbe ültetett kvíz végén a diák megkaphassa fáradozása (gyakorlása) eredményét: láthatja katapultból kiröptetni az általa megtervezett tanárt. A játékosságnak nagyon nagy motiváló ereje volt, hiszen a diákok önmaguktól hajlandók voltak újra és újra nekilendülni a tesztsornak, mert szerették volna megkapni a jutalmat, ami a feladatsor végén csak nekik járt. A sokszori nekifutással folyamatosan gyakorolták a tananyagot, és észrevétlenül, fáradtság és kényszer nélkül tanulták meg a leckét.

3. kép Képernyőképek a kvízjátékból
Egy év tapasztalatai az ELTE Radnóti Gyakorlóiskolában
Tavaly ősszel kezdtem tanítani a gimnáziumban informatikatanárként. Tudom, hogy az első alkalom igazán fontos, ilyenkor kell valami érdekes, maradandó ötlettel előállni, hogy a diákokat „meg tudjam fogni”. A játékossághoz folyamodtam ebben a helyzetben is. Némi töprengés után úgy döntöttem, hogy az értékelésbe csempészem be a játékosságot. Elhatároztam, hogy az órai munka értékelésében, egy-egy ügyes megszólalásnál jutalomkártyákat (4. kép) fogok osztogatni. Ebből ötöt összegyűjtve kerülhet a naplóba az ötös érdemjegy. Elmondtam a diákoknak, hogy a kártyákat el is ajándékozhatják egymásnak. Így a diákok szociális és empátiakészségét is fejleszthettem. Még egy dologgal kiegészítettem az értékelési rendszert. Karácsony, húsvét és évzárás előtt a diákok kaptak még egy ötös jegyszerzési lehetőséget. Mindenki, akinek legalább egy kiskártyája volt, az ezen alkalmakkor szerencsekártyát húzhatott a kiskártyájáért.
4. kép Jutalom és szerencsekártyák
Ezt az értékelési rendszert elsősorban az ötödikeseknek találtam ki, de végül az összes csoportomnak felkínáltam a lehetőséget. A nagyobbak talán egy kicsit megmosolyogtak, de az év végi tanárértékelő kérdőívben náluk jelent meg visszajelzésként, hogy „Több pontosztogatás lehetett volna, tetszett a zsákbamacskás ötlet.” (11. c osztályos tanuló) Számomra ez egy olyan pozitív visszacsatolás volt, ami arra biztat, hogy bátran alkalmazzam nagyobbak esetében is ezt a játékos, kicsit infantilis értékelést is.
Programozzunk!
Bizonyára nem vagyok egyedül azzal a jelenséggel, hogy léteznek olyan tananyagrészek, amit a diákok nagyon nem szeretnek; amikor egy ilyen, új témakörhöz érve a diákok, mielőtt bármit is tudnának a tanár terveiről, már eleve negatív módon állnak a soron következő ismeretanyaghoz. Informatikában ez a „mumus” a programozás. A diákok, ha meghallják azt, hogy a következő tananyag a programozás lesz, ami együtt jár azzal, hogy gondolkodni is kell, akkor első reakciójuk általában az, hogy „Ugye, nem logozunk?”, vagy „Nem szeretem a programozást. Nem is lesz rá szükségem, minek tanuljam akkor?”, és természetesen a merev elutasítás, hogy „Nem akarok megtanulni programozni.”. Ebből kiindulva arra gondoltam, hogy új oldaláról fogom megközelíteni a tananyag bevezetését, annak átadását. Míg kollégám a hagyományos módszert választva: alaputasítások, eljárások, paraméterezés fogalmát és gyakorlatát tanította az osztály egyik felének, addig én a csoportjaimban egy problémát, egy megoldandó feladatot állítottam a diákok elé. Játékprogramot készítettünk. Mindezt természetesen olyan játékos formában, ami gyors sikerélményhez juttathatja a diákokat, miközben észrevétlenül, játékosan sajátíthatják el a programozás alapjait. A megvalósításhoz a Scratch programozási környezetet választottam, ahol az utasítások blokkszerűen építhetők be a programkódba egy meglévő listából. A diákoknak lehetőségük van arra, hogy megtapasztalják, kikísérletezzék a saját elgondolásuk helyességét. Megtanulhatják a szekvencia, a szelekció és az iteráció elméletét és gyakorlatát anélkül, hogy ezeket a fogalmakat megemlíteném vagy számon kérném tőlük.
Ebben az oktatási szakaszban nagymértékben támaszkodtam a heurisztikára, a heurisztikus problémamegoldásra, aminek a segítségével a téma bevezetésében fel tudtam térképezni a diákok meglévő, előzetes tudását; ugyanakkor használtam a motiváló erejét is, hiszen játék közben gond nélkül lehet kísérletezni, nem számít, ha hibáznak, és játszani mindenki szeret; valamint rögtön a tananyag elején alkotó munkára késztettem őket, amit egészen a tananyag befejezéséig meg is tudtam tartani.
Ide kívánkozik Pólya György (1971: 143) gondolata, mely szerint: „»Heurisztikus« mint melléknév, annyit jelent, mint »felfedezést szolgáló«. Heurisztikus okoskodás olyan okoskodás, amely nem végleges és szigorú, hanem csak átmeneti…; és célja a kitűzött feladat megoldása.”
Ez az idézet a tananyag elsajátíttatásának a lényegére tapint rá. A diákoknak játékosan, kreatívan, a saját ötleteiket megalkotva kellett egy új ismeretanyaggal megismerkedni, mindezt olyan keretek között, amiben a tanár és diák egyaránt jól érezte magát. Minden diákom (négy ötödikes és három nyolcadikos csoport, összesen 126 fő) kivétel nélkül lelkesen dolgozott, hogy elkészítse a célként meghatározott, saját játékprogramját.
A gamifikáció alkalmazása játékprogram készítésekor
A gamifikáció hazai kutatója, Fromann Richárd (2012) szerint, ha sikeresen alkalmazzuk a játékoknál jól bevált sikerélményt adó mechanizmusokat az élet egyéb területein, például az oktatásban, akkor a tanulást is élvezetessé tudjuk tenni. Felmérései alapján három tényezőt emelt ki a játék sikerreceptjéhez. Ezek a következők:
- optimális terhelés: „a játék okozta kihívások, feladatok tökéletes egyensúlyban vannak a játékos képességeivel, kompetenciáival és a játék adta eszköztárral, mozgástérrel”. Ezt a gondolatot úgy fogalmaztam át a saját gyakorlatom alapján, hogy a probléma okozta kihívások, feladatok tökéletes egyensúlyban vannak a tanulók képességeivel, kompetenciáival és a keretprogram (Scratch) adta eszköztárral, mozgástérrel.
- ideális beszintezés: „minden komoly játéknak van egy elérendő, végső Nagy Célja, amelyet a játékos mindvégig szem előtt tart, és ez hajtja őt minden nehézségen át.” A mi esetünkben ez a saját játékprogram elkészítése, megvalósítása. Ahhoz, hogy ez a végső cél ne tűnjön nagyon távolinak, elérhetetlennek, kisebb célokat is ki kell tűznünk. A folyamaton belül ezek az újabb és újabb programelemekkel, utasításokkal való ismerkedést és kísérletezgetést jelentik, amit majd a saját játékban is fel lehet majd használni.
- ideális jutalom-rendszer: „Ez azt jelenti, hogy minden apró teljesítés után, minden esetben pozitív visszacsatolás, vagyis jutalmazás történik, és mindig ″azonnal″, vagyis rögtön a teljesítést követően.” A diákok programkészítése közben folyamatosan élvezhetik saját munkájuk eredményét, amit sikerként, jutalomként élnek meg.
Mindezeket és a problémamegoldó gondolkodás fejlesztését szem előtt tartva igyekeztem mindig csak annyi információval ellátni tanítványaimat, amennyi ahhoz szükséges, hogy önállóan tudjanak dolgozni, továbbhaladni. A Scratch programkörnyezet különösen alkalmas erre, hiszen az egész program olyan felületen található, amit könnyen át lehet látni, könnyen felfedezhetők az elemek, amiket bátran kipróbálhatnak. A munkájuk eredménye pedig azonnal lemérhető.
A problémaalapú programozás megvalósítása
A témát az alábbi egyszerűsített tematikus terv (5. osztály) szerint valósítottam meg:
|
Óra |
Az óra témája |
Elsődleges didaktikai feladat |
|
1. |
A kódolás órája | Motiváció |
|
2. |
Ismerkedés a Scratch programozási környezettel | Célkitűzés: saját játékprogram készítése |
|
3. |
Vezérlő utasítások | Új ismeret átadása; Gyakorlás |
|
4. |
Eseménykezelés (egyszerű feltétel vizsgálata) | |
|
5. |
Gyakorlás Változók használata (kiegészítő anyag) |
|
|
6. |
Saját játékprogram készítése | A tanultak önálló alkalmazása; Ellenőrzés, értékelés |
1. táblázat 5. osztályos tematikus terv
A programozás témáját egy interneten fellelhető weboldallal indítottam. A Kódolás órája (3) elnevezésű mozgalom világméretű megmozdulás azzal a céllal, hogy az informatikát, azon belül is a programozást minél több tanulóhoz közelebb hozzák, és azt játékos és élvezetes formában ismertessék meg, hogy a diákok pozitív élményeket szerezzenek a programozásról.
A felületen nagyon ötletes, több korosztály számára készült, egy órás feladatsorokat találhatunk, amik képesek a diákok figyelmét kortól függetlenül hosszú távon is lekötni. Ezek a feladatok egymásra épülve, lépésenként tanítják meg a diákoknak a programozás legalapvetőbb utasításait, illetve vezetnek rá a logikusan felépített kódolásra. Szinte mindegyik csoportomban volt olyan diák, aki már ismerte a felületet, de ez nem okozott problémát az óra menetében, hiszen mindegyiküknek pozitív élménye volt, és nem bánták az ismerős feladatokkal való munkát. Az elmúlt években szépen bővítették az oldalt, és több, hasonló projekt közül is lehet választani, így alternatív megoldásként lehetőséget biztosítottam azoknak a tanulóknak, akiknek ez nem volt újdonság, hogy egy nehezebb szintű feladatsorral próbálkozzanak.
Az oldal használatát azért is találtam hasznosnak, mert nem sok tanári instrukciót kellett adni a diákoknak, így ők a saját tempójukban haladva fedezhették fel a programozást. Mindezt tették úgy, hogy megtapasztalhatták a felfedezés örömét, és minden szint helyes megoldását sikerélményként élhették meg. Ugyanakkor, amikor hibáztak és nem sikerült jól megoldani egy-egy feladatot, akkor sem keseredtek el és nem adták fel a megoldást, hanem újra és újra próbálkoztak, kísérleteztek a lehetőségekkel, amíg végül is eljutottak a jó végeredményhez.
A weboldalon lévő feladatok előkészítették az általam választott programkörnyezettel való ismerkedést is, hiszen az Angry Birds projektet egy Scratch környezethez hasonló felületen kellett megoldani. A Scratch egy olyan vizuális programozási nyelv, ahol az utasításokat Legószerűen (Farkas 2011: 5), építőkockaként kell egymáshoz kötni. Maga a kód, amit a diákok összeállítanak, folyamatosan tesztelhető, futási időben is változtatható, és ami a legfontosabb talán, hogy saját munkájuk eredményét azonnal látják.
A 2–5. órák felépítése a következőképpen alakult:
- Tanári példa motivációként (egy nagyon egyszerű program)
- Az új ismeretek (utasítások) megbeszélése, felfedezése
- Reprodukció egyéni, illetve páros munkával – szükség esetén tanári irányítással
- Önálló kísérletezés a tanultak felhasználásával, szem előtt tartva, hogy a korábbi utasításokat is beépítsék a programkódba
Az 5. óra kiegészítő témája azért került be a tematikába, mert a csoportjaim haladási tempója eltérő volt, és az ügyesebbeknek kellett egy nagyobb kihívást igénylő feladatot is kitalálni. Ezért a 8. osztályos tematikából átemeltem ezt a részt ide is, hogy a jó képességű, motivált tanulók továbbra is megtarthassák az érdeklődésüket. Így az ő játékprogramjuk már igazi játékhoz hasonlíthatott, hiszen lehetett pontokat gyűjteni, illetve életeket elveszíteni, amikhez kellett a változó(k) bevezetése.
A 6. órán pedig kiélhették az összes kreativitásukat, ötletüket a diákok a saját program készítésével.
Nyolcadikos diákjaim iskolai keretek között még addig nem tanultak informatikát, így módomban állt kipróbálni, hogy az idősebb korosztály mennyire befogadó az ilyen jellegű tananyagra, illetve módszerre. Nagy örömömre szolgált, hogy semmilyen ellenállásba nem ütköztem a játékosítás módszerének a bevezetésével, sőt kizárólag csak pozitív visszajelzéseket kaptam ettől az évfolyamtól is. Náluk is az ötödikes tanmenetet alkalmaztam kisebb módosításokkal, 4*2 tanórára lebontva. Az eseménykezelésnél az egyszerű feltétel vizsgálata mellett megjelent már az összetett feltételek alkalmazása is, illetve a változók bevezetése már elvárt követelmény volt mindenki számára.
Értékelés
Az értékelésnél a kompetenciaalapú értékelést szem előtt tartva a diákok előre megismerték az értékelésem szempontjait. Az általuk készített játékprogramoknak a következő kritériumoknak kellett eleget tenniük:
- válasszon egy beépített hátteret vagy rajzoljon egy sajátot;
- valósítson meg mozgásvezérlést (nyilakkal vagy egyéb billentyűkkel);
- legyen benne érzékelés (szín vagy másik szereplő érzékelése);
- az érzékelés hatására legalább egy esemény történjen (párbeszéd megjelenítése és/vagy a másik szereplő mozgásra késztetése).
A tehetségesebbeknek további, egyénileg választható feltételt is megadtam, így biztosítva a differenciálást is:
- állítson be kezdőértékeket, kezdőpozíciókat (inicializálás);
- használjon változókat.
Ízelítő a diákok munkáiból
A hat tanóra igen rövid idő ahhoz, hogy teljesen átfogó képet nyújthassunk a diákoknak egy-egy témakörből. Ez az idő arra volt elegendő, hogy bepillantást nyerhessenek a programozás világába, felkelthessem az érdeklődésüket, és elegendő motivációt nyújtsak arra, hogy szívesen foglalkozzanak a témával önállóan is. Az alábbi képeket ötödikes diákok munkáiból válogattam. A feliratoknál vastag betűvel kiemelt programelemek azt jelzik, hogy azt a rész a diák önállóan, autodidakta módon fedezte fel, és építette be a játékába.
Labirintusvariációk:
5. kép Képernyőképek a diákok munkáiból 1.
Két játékost igénylő program:
6. kép Képernyőképek a diákok munkáiból 2.
Időmérős (váltózó használata), hátteret változtató program, amely egérrel működik:
7. kép Képernyőképek a diákok munkáiból 3.
Problémaalapú programozás folyamata
A tananyag feldolgozásakor egy-egy problémát nem feltétlenül csak egyféleképpen lehet megoldani. Mindenkinek másképp jár az agya, másképp gondolkodik, tehát a problémát is másképp fogja megoldani. Az elsődleges célom az volt, hogy a gyerekek értsék meg a probléma lényegét, a megoldáshoz adjak egy útmutatást, de semmi esetre sem vártam el, hogy ugyanazon a módon valósítsák meg a saját ötleteiket. Teret engedtem a saját kreativitásuknak. Ennek következtében sokszor adódott olyan helyzet, hogy megoldás közben akadályba ütköztek. Ilyenkor fordultak hozzám segítségért vagy ötletért a továbbhaladáshoz. Ez számomra egy állandó készenlétet teremtett a hibakeresésre, hibajavításra, vagy a probléma egy új oldalról való megközelítésének felvázolására. Ez tulajdonképpen a problémaalapú programozás folyamatának állandó körforgása (5. kép), ami egészen addig a pillanatig fennáll, amíg a program el nem készül.
8. kép A problémaalapú programozás folyamata
Ez az önmagát generáló folyamat kiváló eszköz a logikus és konstruktív gondolkodás fejlesztésére, amely egyszerre motiváló mind a diák, mind a tanár számára.
A végeredmény pedig minden várakozásomat felülmúlta. Olyan diákom is lelkesen dolgozott a programján, akit addig nem igazán tudtam aktivitásra serkenteni. Illetve volt egy tanítványom, aki folyamatosan személyes harcot folytat a számítógépek ellen, még őt is sikerült lelkes munkára ösztönöznöm ezzel a módszerrel. Utolsó idézetem is Pólyától (1971: 11) származik: „Lehet, hogy a feladat, amelyen gondolkozol, egyszerű; de ha felkelti érdeklődésedet, mozgósítja találékonyságodat és végül, ha sikerül önállóan megoldanod, átéled a felfedezés izgalmát és diadalát.”
Távolabbi célok
A Radnóti Gimnázium gyakorlóiskolaként egy olyan innovatív környezet, ahol a pedagógusok folyamatosan késztetve érzik magukat az újdonságok kipróbálására, ahol szívesen veszik a kezdeményezéseket. Itt a diákok intellektuálisan partnerei a tanároknak akár tanulásról, akár játékról van szó. Játékos tanulásban pedig feltétlen számíthatunk az aktív közreműködésükre. Ezért tervezem, hogy az ötödikes és nyolcadikos osztályok mellett a tizedikes osztályokban is kipróbálom a Scratch programozási környezetben való algoritmizálást, továbbgondolva a játékkészítést, annak újabb eszközökkel való bővítését, vagy egy összetettebb, például oktatóprogram készítését célul tűzve ki a diákoknak. Programelemként felhasználva a listákat, a véletlenszám generálását, a klónozást vagy az eljárás készítését, szem előtt tartva már a hatékonyságot is.
Továbbá szeretném az általam kipróbált és a későbbiek folyamán kipróbálásra kerülő tananyagot jó gyakorlatként bemutatni a hozzánk kerülő tanárjelöltek számára is, hiszen ezen a téren is volt egy nagyszerű sikerélményem. Vezetőtanár kollégám hallgatói nálam is rendszeresen hospitáltak, és a következő benyomásokkal távoztak, amit hospitálási naplójában így rögzített B. Gábor informatika szakos hallgató: „A másik szaktanár óráin általában kisebb gyerekek óráit látogattam, akiket modern, színes és kreatív programok használatával nagyon eredményesen le lehetett kötni. Az órák során én is csináltam a feladatokat a gyerekekkel együtt, és majdnem minden alkalommal magával tudott ragadni még engem is az informatikaóra, annyira újszerűen és izgalmasan voltak megfogalmazva a teendők. Ha egy gimnáziumi informatikatanár le tud kötni egy diplomáját megszerezni készülő hallgatót, akinek a tudása friss, sok mindent látott már és tájékozott a modern lehetőségekről, az azt mondom, hogy óriási eredmény és nagyon nagy bóknak venném, ha 20–30 év múlva én is képes lennék ilyesmire.” Számomra pedig ez volt az a nagy bók.
Zárásképpen
Kívánom, hogy minden kolléga megtapasztalja azt a sok örömet magával hozó élményoktatást, amely egyszerre motivál és továbbvisz ezen a hálás, sok munkával járó és nem éppen könnyű pályán, amit nekem volt szerencsém az elmúlt tanévben megtapasztalnom a diákjaim körében.
IRODALOM
Code.org [https://code.org/ – 2105. 07. 27.]
Farkas Károly 2011: Játékos teknőcgeometria. Bicske: Szak.
Fromann Richárd 2012: Gamification jelentősége és működési mechanizmusa
[http://digitalisidentitas.blog.hu/2012/06/04/fromann_richard_gamification_jelentosege_es_mukodesi_mechanizmusa – 2105. 07. 27.]
Kvízjáték-generátor weblapjai [http://www.contentgenerator.net/fling/ – 2105. 07. 27.]
[http://www.contentgenerator.net/fling/ – 2105. 07. 27.]
Pólya György 1971: A gondolkodás iskolája. Budapest: Gondolat.
Tasnádi Ildikó: [http://www.nemessuli.hu/informatika/ – 2105. 07. 27.]






