Voiko koodaamista oppia pelaamalla?

Pelillistäminen on suosittu tapa lisätä opiskelijoiden motivaatiota ja innostusta opiskelussa, mutta voisiko koodaamistakin oppia pelaamalla? Tässä kirjoituksessa tarkastelemme pelillistämistä erityisesti ohjelmoinnin opetuksen kontekstissa: Mitä hyötyjä sillä voidaan saavuttaa, mihin se perustuu, ja miten pelillistämistä voi hyödyntää arjen opetuksessa mielekkäällä ja tavoitteellisella tavalla?

TEKSTI | Jukka Matila ja Anna-Kaisa Saari
Artikkelin pysyvä osoite http://urn.fi/URN:NBN:fi-fe2025052855890

Miksi pelillistäminen voisi toimia ohjelmoinnin opetuksessa?

Pelillistämisen teho perustuu motivaatioon ja oppimisen psykologiaan. Pelillisyys hyödyntää ihmisen luontaista halua oppia leikin kautta, haastaa itsensä sekä saada palautetta suorituksestaan välittömästi ja konkreettisesti. Kun katsomme tämän päivän nuoria – ja miksei meitä vähän varttuneempiakin – nähdään että peleistä on helppo addiktoitua, nimimerkillä lähes yhdeksän vuotta Pokemon GO:ta tai yömyöhään Skyrimiä pelanneet opettajat täällä hei! Ohjelmoinnissa, jossa virheet ja uudelleen yrittäminen ovat luonnollinen osa oppimisprosessia, pelillistäminen voi merkittävästi alentaa oppimiskynnystä ja lisätä sinnikkyyttä.

Toisaalta onnistumisten palkitseminen, XP:n eli kokemuspisteiden kerääminen, uusille leveleille pääseminen ja kilpailuasetelma usein motivoi ja innostaa sekä koukuttaa pelaajia. Pelimaailman ajatus perustuu juuri pelihahmon kasvattamiseen, taitojen oppimiseen ja haasteiden voittamiseen opittujen taitojen avulla – ja tätähän oppiminenkin on. Aivan kuten pelihahmot kehittyvät kokemuspisteitä keräämällä, opiskelijatkin voivat nähdä oman edistymisensä konkreettisesti karttuvien taitojen ja osaamisen kautta. Lisäksi pelit kannustavat usein yhteistyöhön ja sosiaaliseen vuorovaikutukseen, jolloin oppiminen muuttuu yhteisölliseksi kokemukseksi. Mutta voisiko samaa koukuttamista saada aikaan ohjelmoinnin peruskurssilla? Siitä se ajatus sitten lähti.

Käytännön esimerkkejä pelillistävistä oppimisympäristöistä

Internet on täynnä erilaisia sovelluksia, joilla oppimista voidaan pelillistää; on maksullisia, on ilmaisia, on hyviä ja on huonoja. Olemme käyttäneet kursseilla jo tähän saakka esimerkiksi Kahootia, hyvällä opiskelijapalautteella. Kahoot! on varmasti monelle tuttu tietovisasovellus, jota voi käyttää missä yhteydessä tahansa. Niin kuin muissakin kursseissa, myös ohjelmoinnin opetuksessa se voi toimia tehokkaana kertaus- ja arviointivälineenä. Kahoot tuo kursseille mukaan pelillisyyttä, kilpailua ja välitöntä palautetta. Luokkatilanteessa Kahoot! aktivoi kaikki osallistumaan, lisää yhteisöllisyyttä ja auttaa opiskelijoita tarkistamaan nopeasti oman osaamisensa. Opiskelijat saavat välittömästi palautetta, mikä edistää oppimista ja auttaa havaitsemaan mahdolliset osaamisaukot nopeasti.

Tänä keväänä tutustuimme Mimo-sovellukseen, joka opettaa ohjelmointia pieninä, helposti lähestyttävinä tehtävinä, jotka sijoittuvat laajempaan tarinaan. Oppija etenee kuin pelissä: ratkaisee tehtäviä, kerää pisteitä ja avaa uusia tasoja. Mimo hyödyntää mikro-oppimista, mikä tarkoittaa tiedon pilkkomista pieniksi annoksiksi. Tämä tapa sopii erinomaisesti erityisesti mobiiliin oppimisympäristöön, jossa oppiminen tapahtuu lyhyissä sessioissa, vaikkapa bussimatkan aikana. Mimon suosio kertoo, että pelillistetty oppimisympäristö voi olla tehokas tapa saavuttaa merkittäviä oppimistuloksia. Sovelluksen löysivät opiskelijat, ja esittelivät sitä yhdellä kurssilla – osa oli jäänyt siihen koukkuun. Ja täällä taas yksi addiktoinut opettaja hei! Päivästreak on jo yli 100 päivää.-

Ohjelmoinnin perusteet VAMK:lla – tarinallinen oppimisseikkailu

Mutta sitten varsinaiseen aiheeseen. Tänä keväänä Tietotekniikan opettajat osallistuivat VAMK Flippaa -valmennukseen. Siellä aloitettiin toteuttamaan flipattua Johdatus ohjelmointiin -kurssia, joka vie oppimisen ihan uudelle tasolle ja vieläpä pelkästään Moodlen ominaisuuksia hyödyntämällä! Ensi syksystä alkaen Johdatus ohjelmointiin kurssi opetetaan C-kielellä, joka ei ole kovin mediaseksikäs ohjelmointikieli. C on yli 50 vuotta vanha ohjelmointikieli, edelleen toki eniten käytetty sulautettujen järjestelmien ohjelmointikielenä.  Kurssitoteutukselle ohjelmoinnin opetus rakennettiin pelilliseksi tarinaksi, jossa opiskelijat etenevät ratkaisemalla tehtäviä ja keräämällä kokemuspisteitä. Jokainen moduuli on osa suurempaa ohjelmointiseikkailua, jossa opiskelijat nousevat tasoja ja saavat palautetta etenemisestään. Kuvassa 1 on tekoälyllä generoitu kuva ensimmäisen moduulin sisällöstä.

Huppupukuinen henkilö istuu pöydän ääressä kirjojen ja hehkuvien symbolien ympäröimänä. Kuvassa on myös tekstiä, joka viittaa ohjelmoinnin opintomoduuliin.
Kuva 1. Kuva ensimmäisestä modulista

Periaatteessa pelillistäminen Moodlessa tarkoittaa pitkälti ajatusmaailman muuttamista. Moni opettaja käyttää jo nyt Moodlen pakotettua etenemistä moduleista moduleihin, tenttejä, kirjoja, oppitunteja tai wikiä. Mutta nimeämällä ne toisin, rakentamalla niiden ympärille peli, muuttuu käyttö ihan toiseksi. Jos oppitunti onkin Book of Knowlede, wiki Field Guide ja tenteistä saa pisteiden ja arvosanojen sijaan kokemuspisteitä. Kurssin aihealueen suorittamisen jälkeen voi ansaita osaamismerkkejä, eli badgeja, pelitermeillä tasonnousuja. Ensimmäinen ansaittavissa oleva badge on esitetty kuvassa 2.

Hahmo, jolla on viitta ja miekka selässään. Hahmon kasvot on sumennettu, ja hänen päänsä ympärillä on ympyränmuotoinen tausta, jossa on riimukirjoituksia. Kuvan alareunassa lukee teksti "UNMARKED WANDERER", eli suomeksi esimerkiksi "Merkitsemätön vaeltaja".
Kuva 2. Kurssin ensimmäinen osaamismerkki, eli tason nousu.

Kurssitoteutuksella on käytetty tai ainakin kokeiltu varmasti kaikkia Moodlen ominaisuuksia. H5P-moduli on osoittautunut erittäin monipuoliseksi työkaluksi. H5P on Moodleen integroitava avoimen lähdekoodin työkalu, jolla opettajat voivat luoda vuorovaikutteisia oppimateriaaleja helposti ja monipuolisesti. H5P tukee monenlaisia sisältötyyppejä, kuten interaktiivisia videoita, monivalintakysymyksiä, aukkotehtäviä ja visuaalisia aikajanoja, jotka tekevät opiskelusta aktiivisempaa ja osallistavampaa. H5P-modulilla voi tehdä esimerkiksi sanaruudukkoja, kuten kuvasta 3 näkyy.

sanaristikko nimeltä "S1 Mini Game: Programming: Crosswords (10 XP)", joka liittyy ohjelmointiin. Tarkoituksena on täyttää ristikko oikein saadakseen kokemuspisteitä (XP) ja päästäkseen seuraavaan harjoitukseen.
Kuva 3. Sanaruudukko ohjelmoinnin konsepteista.

Ohjelmointitehtävien toteuttamisessa kurssilla on käytetty myös H5P:n Drag and Drop -moduulia, jossa opiskelijat ratkaisevat pieniä ohjelmointitehtäviä interaktiivisesti. Kuvassa 4 opiskelijan tulee määrittää pelissä vihollisen ja suojakilven arvot siten, että ohjelmakoodi tunnistaa tilanteen oikein ja tulostaa oikean tuloksen. Tehtävän avulla opiskelijat eivät pelkästään harjoittele ohjelmoinnin syntaksia, vaan saavat myös välitöntä palautetta ratkaisuistaan pelin kontekstissa. Tämä lisää motivaatiota, vahvistaa oppimista ja auttaa hahmottamaan, miten ohjelmointilogiikka toimii käytännön tasolla.

hjelmointitehtävä, jossa oven avaamiseksi tulee valita oikea avain arvoon 42 perustuvan ehtolauseen perusteella. Käyttäjä on valinnut oikein ja suorittanut tehtävän onnistuneesti.
Kuva 4. Drag and Drop -tehtävä vihollisen ja suojakilven arvon asettamisesta pelissä.

Yksi H5P:n erityisen kiinnostavista ominaisuuksista on pelillinen sisältötyyppi nimeltä Course Presentation tai erityisesti Branching Scenario, jonka avulla voidaan luoda visuaalisia, pelimäisiä oppimiskokemuksia. Näissä opiskelijat voivat edetä omien valintojensa ja suorittamiensa tehtävien mukaan interaktiivisella ”pelipöydällä”. Tämä tekee oppimiskokemuksesta mukaansatempaavan ja motivoi opiskelijaa edistymään opinnoissa. Johdatus ohjelmointiin -kurssilla käytetään juuri tällaista H5P:n pelimoduulia. Opiskelija liikkuu tehtävästä toiseen suorittamalla ohjelmointiin liittyviä haasteita, kerää pisteitä ja avaa uusia alueita pelipöydällä. Kuvassa 6 on esimerkki kurssilla käytetystä pelipöydästä, jossa jokainen piste kuvaa ohjelmointitehtävää, jonka opiskelijan on suoritettava päästäkseen etenemään pelissä ja oppimisessaan.

Labyrinttimäinen kartta, jossa on useita huoneita ja symboleja, kuten kysymysmerkkejä, tähtiä ja sydämiä. Kartassa näkyy muun muassa "Mirror Puzzle", "Guard Post", "Secret Stchamber" ja "Door of Judgment", joihin johtaa polkuja ja vihjeitä sisältäviä reittejä.
Kuva 5. Pelipöytä

Miten lähteä liikkeelle pelillistämisessä?

Pelillistäminen ei siis aina edellytä monimutkaisia teknisiä ratkaisuja, vaan enemmänkin uudenlaista oivallusta pelaamisen ja oppimisen yhtäläisyydestä. Totta kai kurssin tekeminen peliksi on työlästä, ei se synny itsestään. Samalla se on kuitenkin koukuttavaa ja innostavaa. Eikä pelillistäminen vain pelillistämisen vuoksi ole järkevää. Sen sijaan on mietittävä pedagoginen tarkoitus ja tavoitteet: mitä halutaan saavuttaa ja miksi pelillistäminen olisi juuri tässä yhteydessä hyödyllistä?

Pelillistämisen voi aloittaa pienilläkin tavoilla. Lisää kurssitoteutukselle esimerkiksi pisteytys tai etenemispalkit tehtävien suorittamisesta. Tai keksi kurssille mukaansatempaava tarina, johon kurssin sisällöt nivoutuvat. Jos jopa C-ohjelmoinnista voi kehittää tarinan, niin mille tahansa aiheelle voi! Tai hyödynnä visailuja, turnauksia tai pieniä palkintoja motivoimaan oppijoita. Esimerkiksi Kahooteilla on helppo aloittaa. Ja muista, kaikkea ei tarvitse tehdä yksin. Tekoäly on tässäkin huikea ja erityisesti väsymätön apulainen. Kollegat voivat välillä olla väsyneitä, mutta kokemuksesta, innostus on hyvin usein tarttuvaa!

Yhteenvetona

Pelillistäminen ei ole pelkkää opetuksen viihdyttämistä, vaan pedagoginen valinta, jolla luodaan merkityksellisempää ja syvällisempää oppimista. Me uskomme, että tämä kurssitoteutus saa opiskelijat aktiivisesti osallistumaan, kokeilemaan ja ylittämään itsensä. Ohjelmoinnin opetuksessa, missä virheet ja bugit ovat normaali osa arkea, pelillistäminen voi olla ratkaiseva tekijä onnistuneeseen oppimiskokemukseen.

Ensi syksynä nähdään, mitä kokemuksia ja palautetta Skyrim-pelistä inspiraationsa saanut Johdatus ohjelmointiin -kurssitoteutus saa aikaan. Toteutusta on jo esitelty eri vuosikurssien opiskelijoille, jotka ovat olleet innoissaan ja jopa harmissaan, että eivät enää voi osallistua kurssille. Toteutusta on esitelty myös opettajille, jotka olivat erityisen vaikuttuneita ja innostuneita Moodlen eri mahdollisuuksista.

Aiheeseen liittyvää