Testissä Grasshopper – Voiko mobiilipelin avulla oppia ohjelmoimaan?

24.07.2018 21:00 | Ilari Hauhia

Grasshopper on Googlen kehittämä mobiilipeli, jonka on tarkoituksena opettaa ohjelmoinnin alkeita pelinomaisella ja hauskalla tavalla. Testasimme, kuinka pitkälle Grasshopperin kanssa voi todellisuudessa edetä.


Julkaisupäivä: julkaistu / Tekijä: Google / Julkaisija: Google / Saatavilla: Android & iOS/ Testattu: Android – Nokia 8 / Pelaajia: 1 / Peliä pelattu arvostelua varten: noin kuukausi, ~5-20 minuuttia per päivä


Google lanseerasi muutama kuukausi sitten mobiililaitteille Grasshopper-nimisen opetuspelin. Sen tarkoituksena on opettaa JavaScript-ohjelmointia hauskalla ja pelinomaisella tavalla. Opiskelu on paloiteltu pieniin, parin minuutin mittaisiin paloihin samalla tavalla kuin esimerkiksi kieliä opettavan Duolingon tapauksessa. Tarkoituksena on, että Grasshopperia voi pelata hyvinkin pienissä erissä pidemmän aikavälin aikana. Pienistä puroista muodostuu iso joki ja 10 minuutin ohjelmointiharjoittelu päivässä johtaa yli tunnin opiskeluun viikossa.

Grasshopper opettaakin koodaamisen alkeita lähes huomaamatta. Koukuttavia pähkinöitä voi ratkaista vaikkapa sohvalla levätessä tai bussissa istuessa, eikä opiskeluun tarvitse varata erikseen aikaa. Parhaimmillaan Grasshopperin tarjoamat koodauspulmat kutittavat älynystyröitä juuri sopivasti, jolloin onnistuneen ratkaisun keksiminen tuottaa todellista riemua.

Aivan Grasshopperin alussa kysytään, onko pelaajalla minkäänlaista aiempaa kokemusta ohjelmoinnista. Vaikka kysymykseen vastaisi myöntävästi, aloitetaan JavaScriptin harjoittelu silti hyvin yksinkertaisista perusteista.

Grasshopper antaa pelaajalle aina tietyn tehtävän, mikä omalla koodilla tulee suorittaa. Yleensä tarjolla on myös esimerkkiratkaisu sekä valmis koodipohja, jota muokkaamalla lopputulokseen tulisi päätyä. Ohjelmointia helpottaa se, ettei komentoja tarvitse kirjoittaa itse, vaan peli tarjoaa pelaajalle vain tehtävän kannalta tarpeelliset komennot valmiissa ”ohjelmointinäppäimistössä”. Mikäli pähkinä ei tunnu millään ratkeavan, tarjoaa peli lisävinkkejä sekä mahdollisuuden pyytää apua muilta pelaajilta tukifoorumeiden kautta.

Ensimmäisessä ohjelmointipähkinässä pelaajalle annetaan tehtäväksi ”piirtää” Ranskan lippu drawBox()-komentoja käyttämällä. Seuraavaksi samaa lipputehtävää sovelletaan uudestaan, mutta erillisten drawBox()-komentojen sijasta koodia yksinkertaistetaan, jotta se voidaan kirjoittaa yhdelle riville.

Funktioiden, merkkijonojen, muuttujien sekä taulukkojen jälkeen Grasshopper opettaa pelaajalleen if-komentojen käyttöä. Grasshopperin tehtävissä rakennetaan uutta jo jo opitun päälle, joten tehtävissä voi joutua käyttämään myös aiemmin opittuja taitoja – if-komennot liittyvät olennaisesti esimerkiksi silmukoiden käyttämiseen.

Ohjelmoinnin perusteiden viimeisessä vaiheessa ”kiivetään vuorelle”. Tällöin peli ei enää anna pelaajalle valmista koodia muokattavaksi, vaan sopiva ratkaisu täytyy keksiä kokonaan itse. Kun viimeinenkin tehtävä on suoritettu, onnittelee Grasshopper pelaajaa kurssin läpäisemisestä ja ohjaa tämän internetistä löytyvien muiden osapuolien, kuten Courseran, jatkokurssien pariin.

Pelkän ohjelmoinnin lisäksi Grasshopper tarjoaa kahden kurssin verran animoinnin perusteita. Kursseilla perehdytään muun muassa D3-kirjaston käyttöön, SVG-grafiikkoihin sekä JavaScriptin graafiseen käyttämiseen.

Mikäli Grasshopperia pelaa noin 10 minuuttia päivässä, kuluu ensimmäisen peruskurssin läpäisemiseen vajaat pari viikkoa. Ensimmäinen peruskurssi ei kuitenkaan opeta vielä kovinkaan syvällisiä ohjelmointitaitoja, sillä Grasshopperin tarkoituksena on ennemminkin herättää ihmisten kiinnostus ohjelmointia kohtaan kuin luoda valmiita koodareita. Pelin läpäisemisen jälkeen harrastusta kannattaakin jatkaa muiden oppimateriaalien parissa, mikäli ura ohjelmoinnin parissa kiinnostaa.

Grasshopper on kuitenkin jatkuvan kehityksen alla ja kehittäjien tarkoituksena on lisätä Grasshopperiin ajan myötä lisää sisältöä. Jokin aika sitten peliin päivitettiin lyhyt ohjelmoinnin perusteiden jatkokurssi, joka jatkaa siitä, mihin ensimmäinen kurssi jäi. Jatkokurssilla perehdytään muun muassa merkkijonojen muunteluun.

Kokonaisuudessaan Grasshopper on oiva tapa ottaa ensiaskel ohjelmoinnin pariin. Pelin tarjoama rima on riittävän matalalla, joten ohjelmointipähkinöiden ratkaiseminen ei ole liian vaikeaa edes täydellisille noviiseille. Kokeneemmille ja ohjelmointia jo valmiiksi harrastaville pelaajille Grasshopper on kuitenkin todennäköisesti liian helppo kokemus.

Grasshopper

”Grasshopper on oiva tapa ottaa ensiaskeleet ohjelmointiharrastuksen pariin.”