Metode gamifikacije u online sustavima učenja programiranja – osobno iskustvo

Vjeran Bušelić1, Kristijan Župan1

vbuselic@tvz.hr
1Tehničko veleučilište Zagreb, Vrbik 8, Zagreb, Hrvatska

Sažetak

Cilj rada je ukazati na najbolje prakse korištenja gamifikacije u svrhu postizanja većeg angažmana i bolje motiviranost pri učenju programiranja na online sustavima za učenje. Osnovni elementi gamifikacije potječu nešto prije sredine 20. stoljeća iz Sovjetskog Saveza. Tamo su se radnici motivirali bez oslanjanja na novac, tipičan kapitalistički poticaj, korištenjem bodova, proglašavanjem zaposlenika mjeseca i drugim elementima tipičnih u igrama. Danas svi prepoznajemo mnoge elemente gamifikacije u najrazličitijim programima vjernosti koje poznajemo već desetljećima, tako da zapanjuje da je stvarni pojam gamifikacija nastao tek u ovom tisućljeću. Prvi ga je upotrijebio Nick Pelling, britanski programer i video igre dizajner rajem 2002. godine.. Kao što je stekao brzu popularnost i masovno korištenje dogodila su se i napuhana očekivanja ili čak zloupotrebe, tako da je već 2004. godine Gartner, vodeća svjetska tvrtka za IT istraživanja i savjetovanje, odlučla razjasniti pojam redefiniranjem kao " korištenje elemenata iz igara i tehnika kojim su igre dizajnirane kako bi se ljudi motivirali da ostvare svoje ciljeve ". Gamifikacija je također vrlo popularan koncept u obrazovanju, posebno kad treba motivirati maloljetnike da izdrže u obavljanju ne-trivijalnih zadaća kao što su učenje informacijskih tehnologija i/ili programiranja. Vještine koje od samih početka imaju elemente gamifikacije u obliku u svijetu prihvaćenih industrijskih certifikata. U ovom članku osim objašnjenja osnovnih pojmova gamifikacije, te pregleda principa koji važe u modernim sustavima online učenja u području programiranja, više detalja će se posvetiti prikazu jedne od najpopularnijih platformi - Treehouse, iz perspektive mladog diplomanda, vrlo iskusnog korisnika, gamera i programera.
Ključne riječi: gamifikacija, online sustavi za učenje, programiranje

Gamification methods in online learning of programming - personal experience

Abstract

The goal of this article is to point out the best practices of using gamification to achieve greater involvement and better motivation for learning programming using online learning systems. Basic elements of gamification originates in the early to mid 20th century in Soviet Union. Workers were motivated without relying on capitalist-style monetary incentives - using points, employee of the month and other game-like elements. Today we all recognize many gamification elements in all kind of various loyalty programs we know for decades, so it really astonishes that the actual term gamification was created in the New Millennium. Nick Pelling, a British programmer and video game designer, first introduced the term in late 2002. As it gained quick popularity and mass use but also inflated expectations or even misuse, so in 2004 Gartner, the world's leading information technology research and advisory company, decided to clarify it by redefining it as “the use of game mechanics and experience design to digitally engage and motivate people to achieve their goals”. Gamification is also very popular concept in education, especially to motivate juvenile audience to endure in non-trivial tasks like learning IT related technologies and/or programming. Skills that from the very beginning had elements of gamification in form of worldwide accepted industry certifications. In this article besides explanation of main concepts of gamification, and the overview of gamification principles in modern online learning systems in the field of programming, review and more details will be given of the Treehouse - one of most popular online learning platforms, from the viewpoint of young graduate, very experienced user, gamer and programmer.
Keywords: Gamification, Online learning, Programming

1. Uvod

1. Introduction

Programiranje ubrzano postaje jedna od najtraženijih vještina u svijetu i to ne samo za programere, već i za matematičare, dizajnere, te stručnjake za analizu podataka. Tvrtka ''Burning Glass'' koja se bavi analitikom i istraživanjem tržišta ljudskih resursa kaže da je 2015. godine bilo otvoreno 7 milijuna radnih mjesta koji su direktno povezani sa programiranjem, a kroz sljedećih deset godina će taj broj rasti za 8.8% godišnje [1:7]. Potreba za programerima je postala jako velika i škole i fakulteti ne mogu tolikom brzinom pripremati programere za posao. Iz tog razloga razvijeni su mnogi online sustavi za učenje programiranja gdje ljudi mogu naučiti sve potrebne programerske vještine. Samo učenje programiranja nije toliko jednostavno, pogotovo kada ga korisnici sami moraju učiti putem interneta. Zbog toga većina takvih sustava koristi brojne elemente i prednosti gamifikacije poput bodova, postignuća, različitih kvizova i izazova i na taj način olakšavajući polaznicima dolazak do cilja – da što prije postanu kvalitetni programeri, konkurentni na tržištu rada.

2. Gamifikacija

2. Gamification

Osnovni elementi gamifikacije potječu nešto prije sredine 20. stoljeća iz Sovjetskog Saveza. Tamo su se radnici motivirali bez oslanjanja na novac, tipičan kapitalistički poticaj - korištenjem bodova, proglašavanjem zaposlenika mjeseca i drugim elementima tipičnim u današnjim video igrama. Gotovo svi će prepoznati brrojne elemente gamifikacije u programima vjernosti koje također postoje već desetljećima, tako da zapanjuje da je stvarni pojam gamifikacija nastao tek u ovom tisućljeću. Prvi ga je upotrijebio Nick Pelling, britanski programer i dizajner video igara krajem 2002. godine. Termin je prvi put korišten 2003. godine, dokumentiran 2008. godine, a aktivno se počeo koristiti tek 2011. godine kada je i postao najpopularniji [2]. Uz popularnost termina porasla je i potreba za ljudima koji znaju i razumiju gamification i to za čak 293% 2011. godine [3]. Sama definicija gamifikacije postoji u više oblika, a jedan od najkorištenijih kaže da je gamifikacija korištenje elemenata iz igara i tehnika kojim su igre dizajnirane kako bi se ljudi motivirali da ostvare svoje ciljeve [4].
Jedan od glavnih ciljeva korištenja tehnika gamifikacije je poboljšanje angažiranosti/učestalosti korisnika čime se postiže lojalnost (engl. Loyalty) korisnika [5], što u konačnici generira povećani profit. Primjer su danas i kod nas rasprostranjeni programi lojalnosti poput Multiplus, DM ili Kozmo kartica. Drugi tipičan razlog za korištenje gamifikacije je povećanje produktivnosti. Jedan od primjera je aplikacija "Forest" koja korisnicima pomaže da se koncentriraju na rad. Svaki put kada korisnici krenu raditi nešto za što im je potrebna koncentracija, oni posade jedno sjeme koje za 30 minuta postaje drvo samo ako aplikacija ostane netaknuta. Ako korisnici napuste aplikaciju da bi provjerili e-mail ili društvene mreže drvo će uvenuti. Na taj način korisnici sade drveće i svoju šumu, što je jedan od odličnih načina za vizualni prikaz svoje produktivnosti kroz vrijeme [6].
Tehnikama gamifikacije vrlo se jednostavno pruža aktualna povratna informacija korištenjem grafičkih indikatora (engl. Progress bar) ili rang lista (engl. Leaderboard).
Danas je korištenje gamifikacije postalo jako popularno u sustavima za online učenje jer se pokazalo kao jako učinkovito i poželjno za korisnike. Portal „Elearningindustry" tvrdi da 80% studenata kaže da bi bili puno produktivniji ako bi njihovo sveučilište ili posao bilo sličnije igri. Također portal navodi da bi 60% studenata bilo motivirano sa rang listama, te 89% njih bi više koristilo sustav za online učenje ako bi imao neki sustav bodovanja [7].
Traci Sitzmann, profesorica sa Sveučilišta u Colorado, Denver napravila je istraživanje o tome koliko je efektivna gamifikacija u sustavima za online učenje. Uzorak je temeljila na 6476 odraslih osoba. Kroz analizu podataka otkrila je da su studenti koji su sudjelovali u gamificiranim sustavima za učenje imali 14% bolje rezultate na testovima vještina, 11% bolji rezultat na teorijskim testovima te 9% porast u pamćenju naučenog znanja [8].
Tvrtka Gartner najveća analitička tvrtka iz područja tehnologije u poslovanju prepoznaje četiri glavna čimbenika za povećanje angažiranosti korištenjem metoda gamifikacije [9]:
(1) Ubrzano dobivanje povratne informacije. U stvarnom svijetu, dobivanje povratne informacije traje sporo (npr. godišnji izvještaj o radnim performansama) s dugim razmacima između postavljenih ciljeva. Gamifikacija značajno ubrzava dobivanje povratne informacije angažiranosti djelatnika/korisnika.
(2) Jasni ciljevi i pravila. U stvarnom svijetu gdje su ciljevi nejasni i pravila se selektivno primjenjuju, gamifikacija pruža jasne ciljeve i dobro definirana pravila igre kako bi se osiguralo da igrači osjećaju da mogu postići ciljeve.
(3) Uvjerljiva priča. Dok su aktivnosti u stvarnom svijetu rijetko neodoljive, gamifikacija gradi priču koja angažira korisnike da sudjeluju i postižu ciljeve željene aktivnosti.
(4) Zadaci koji su izazovni, ali ostvarivi. Dok u realnom postoji višak ciljeva/izazova koji su uglavnom veliki i dugoročni, gamifikacijom zadaću možemo organizirati kroz nekolicinu kratkoročnih i ostvarivih ciljeva.
Vide ju nužnom u poslovnoj primjeni i preporuča njenu implementaciju u poslovanje: "Igre tradicionalno modeliraju stvarni svijet, a organizacije danas moraju iskoristiti priliku da njihov stvarni svijet oponaša igre. Poduzetnici moraju biti spremni doprinijeti formuliranju strategije gamifikacije i morali bi probati barem jednu igraću vježbu kao dio njihovog konteksta za poduzetno planiranje ove godine". [9]

3. Osnovni elementi gamifikacije

3. Gamification – the basic elements

U današnje vrijeme gotovo da i nema osobe koja u nekom trenutku nije zaigrala neki tip igre, bila to video igra ili stvarna društvena igra. Samo video igrice trenutno igra 1.2 bilijuna ljudi, a online igrice 700 milijuna ljudi što je 44% svjetske online populacije [10]. Iz tog razloga većini ljudi su poznate najčešći igraći elementi - pravila i komponente koje čine samu igru poput:
(1) Postignuća - koja virtualno prikazuju da je korisnik nešto postigao. Ljudi vole napredovati i pratiti pokazatelje i indikatore napretka. Postignuća mogu biti lagana ili teška, mogu biti i tajna te iznenaditi korisnika i time ga dodatno razveseliti kada određeno postignuće dobije. U postignuća najčešće ubrajamo bodove, bedževe, razine, rang liste, grafičke indikatore i certifikate koje osvajamo za kompletiranje postignuća.
(2) Nagrade - elementi koji podstiču veću aktivnost, a ako se koriste dobro i kvalitetno mogu postići veliku angažiranost korisnika i dugotrajnu motivaciju za korištenje sustava. Usko su povezane sa postignućima, a najčešći oblici nagrada su alati za bolje iskustvo korištenja sustava, raznovrsni bonusi te virtualne i fizičke vrijednosti.
(3) Društvene komponente. Igre ne bi bile popularne da u njima nema drugih igrača/natjecatelja. Ponudom postignuća i nagrada, sustav će zadržati igrača u igri neko vrijeme, dok mu ne dosadi ili dok ne ispuni određene ciljeve. Međutim ako se u igri omogući da korisnik dobije status koji drugi ljudi mogu prepoznati, tada to postaje društvena igra u kojoj ljudi postaju motivirani da duže ostanu [11]. Neki od najčešće korištenih društvenih elemenata su timovi/klanovi – grupice koje pomažu jedni drugima u ostvarenju ciljeva, vidljiv društveni status u igri te razni oblici natjecanja.

4. Sustavi za online učenje

4. Online Learning Systems

Sustavi za online učenje su u suštini sustavi kojima se može pristupiti putem računala ili mobitela sa bilo koje lokacije kad god su spojeni na internet. U samim počecima online učenje nije uopće bilo popularno i korisnici su bili skeptični oko njegove učinkovitosti. Jedan od osnovnih argumenata bio je gubitak ljudskog elementa – učitelja, koji nam je usađen odgojem i obrazovanjem.
Danas je online učenje jedan najpopularnijih i učinkovitijih načina učenja i ubrzano raste. Tako je tržište sustava za online učenje 2014. godine vrijedilo čak $56.2 milijarde dolara, a 2015. se udvostručilo [12].
Glavne prednosti online učenja su sljedeće:
(1) Štedi vrijeme i novac - učenje online se može raditi od kuće što znači da student ne mora putovati i trošiti svoj novac.
(2) Dostupnost od 0-24 - studenti mogu učiti onda kada imaju najviše energije i volje, a ne samo onda kada je profesor dostupan. Online materijali su dostupni bilo kada i ako student nešto propusti tokom podučavanja, lako se može vratiti na dio koji je propustio.
(3) Mobilnost - evolucijom tehnologije, učenje je danas dostupno i na mobilnim uređajima, što čini proces puno dinamičnijim i jednostavnijim.
(4) Gamifikacija - jedna od najpoželjnijih i najzabavnijih metoda koja je u potpunosti promijenila način na koji se uče nove stvari.
Američki odjel za edukaciju proveo je istraživanje na uzorku od 1857 studenata u rasponu godina od 13 do 44. Istraživanje je potvrdilo da studenti koji su učili online su također imali bolje rezultate od onih koji su gradivo pohađali uživo sa profesorom: „Cjelokupni nalaz meta analize je da sustavi za online učenje (bilo da su podučavani u potpunosti online ili miješano online/uživo) u prosjeku donosi snažnije i bolje rezultate učenja od nastave licem u lice“. [13:].

4.1. Sustavi za online učenje programiranja

4.1. Online Learning Systems for Developers

Mnogi pojedinci ulaze u svijet programiranja zato što ih zanimaju računala i žele graditi karijere razvijajući web i mobilne aplikacije. Kako bi savladali osnovna, ali i napredna znanja na raspolaganje im stoje knjige, tečajevi i sve više online sustavi. Većina ljudi koji tek ulaze u svijet programiranja i ne znaju zašto točno žele naučiti programirati, nerijetko ni koje tehnologije a možda je naježe odabrati početnu točku. Učenje programiranja nije jednostavno, i dosta često se zna dogoditi da novi programeri vrlo brzo zapnu u nekom problemu i ne znaju je li to znak da programiranje nije za njih i okreću se drugim sustavima ili čak mijenjaju područje sve dok na kraju ne odustanu.
Stoga je većina današnjih sustava kao rješenje za motivaciju uvela gamifikacijske tehnike i tako održavaju i potiču korisnike. Njome se u sustave obavezno ubacuju sustavi praćenja napretka što novome programeru uvijek govori koliko je napredovao i motivira ga da se razvija dalje. Također u većinu sustava je ubačena neka društvena komponenta preko koje studenti mogu međusobno komunicirati i međusobno si pomagati.
Najpopularniji sustavi broje i više milijuna korisnika pa tako CodeAcademy ima više od 25 milijuna korisnika, a Codeschool preko 2 milijuna.
Codeacademy studenti vole je zato što je pristupačan za početnike i postepeno ih uvodi u programski jezik. Jako je cijenjen i zbog gamifikacije sustava. Nudi različite bedževe i postignuća i što više lekcija korisnici završe, više bedževa će dobiti. Premda se na njemu mogu pronaći različite teme od najobičnijeg HTML i CSS pa do izrade kompliciranih serverskih sustava, namijenjen je uglavnom apsolutnim početnicima.
Codeschool je gamificirani sustav za online učenje programiranja koji podučava studente informacijskim tehnologijama kroz zabavan sadržaj. Vješto kombinira mehaniku igara sa video sadržajem i različitim izazovima i zadacima koji čini cijelo iskustvo učenja zabavno i učinkovito. Glavna metoda kojom Codeschool podučava svoje studente je sa praktičnim zadacima gdje studenti nakon svakog modula predavanja mogu izraditi vlastiti stvarni projekt. Koristi bedževe, bodove i postignuća kako bi motivirali svoje korisnike. Jedna od bitnih stvari kod ovog sustava je da je on povezan sa „Open Badges" sustavom što korisnicima omogućuje da lakše pokažu svoje bedževe i znanja potencijalnim zaposlenicima.
Sustav za učenje programiranja Codecombat je drukčiji od prethodno navedenih. Dok ostali gamificirani sustavi koriste bedževe, bodove i postignuća, CodeCombat je zapravo osmišljen tako da korisnici uče programirati pravu igru koja je cijelo vrijeme vidljiva u dijelu ekrana. Cilj igre je prolaziti kroz misije i ubijati neprijatelje sa svojom vojskom, te time raditi što manje poteza(smanjivanje koda). Kroz misije se skupljaju različiti dijamanti te različite vrste stvari, poput odjeće, obuće, oružja. Grafički su misije dizajnirane tako da podsjećaju na RPG(Role playing games) igre. Ekran je podijeljen na dva dijela od kojih je jedan editor za pisanje koda, a drugi simulacija igre koja se može kontrolirati sa naredbama u editoru za programiranje. Svaka greška u kodu oduzima energiju korisnikovom avataru i ako korisnik napravi previše grešaka njegov avatar može čak i umrijeti. Cijeli način učenja započinje od jednostavnih igara i misija, pa do jako kompliciranih. U CodeCombatu postoje misije gdje se borite protiv stvarnih ljudi i način na koji možete pobijediti je da prije njih završit cijeli kod i postavite svoju mapu. Namijenjen je uglavnom apsolutnim početnicima i djeci, te se u njemu neće steći znanja potrebna jednom programeru.
Dungeons and developers sustav za učenje programiranja nije bogat funkcionalnostima kao i ostali, već je napravljen izrazito jednostavno. Međutim za razliku od ostalih koristi drukčije metode gamifikacije i princip podučavanja. Osmišljen je tako da je podijeljen na različite vještine koje su prikazane kao stablo vještina gdje studenti moraju naučiti određene lekcije da bi mogli otključati sljedeću vještinu. Također svaki student ima svoj avatar u kojemu pišu njegovi podaci, razina koju je dostigao i različite karakteristike koje ga opisuju. Svaka vještina ima nekoliko materijala koje student mora naučiti kako bi mogao napredovati dalje. Nedostatak ovoga sustava je to što nema nikakve provjere jeli student stvarno stekao potrebna znanja, već si oni sami potvrđuju savladavanje vještine.

5. Treehouse

Misija kompanije Trihouse glasi: „Treehouse daje pristupačnu edukacijsku tehnologiju ljudima sa svih strana svijeta kako bi im pomogli da ostvare svoje snove i promijene svijet." [14].
Iskustvo autora te proučavanje recenzija o pojedinim sustavima online učenja programiranja pozicionira Treehouse sustav iznad popularnijih CodeAcademy ili Codeschoola. Treehouse sustav koristi možda najviše elemenata gamifikacije te ih koristi efikasnije od drugih. Osim općenitih elementa poput postignuća (bedževi, bodovi), Treehouse također pruža i kvizove i izazove, gdje korisnici odmah mogu primijeniti naučeno znanje te tako steći samopouzdanje koje im je potrebno za nastavak učenja. Glavni zadatak koji Treehouse želi ispuniti za svoje korisnike je da pruži korisnicima pomoć da lakše pokažu potencijalnim zaposlenicima svoje vještine kada se korisnici prijave za neki posao.
Namijenjen je i za početnike i napredne programere. Uz tečajeve programiranja nudi i lekcije iz poslovanja i marketinga koje pomažu pri stjecanju osnovnih znanja koja su korisnicima potrebna da bi svoje programerske vještine mogli pretvoriti u neku novčanu zaradu, bilo to stvaranjem njihove vlastite tvrtke ili pronalaženjem programerske pozicije u nekoj drugoj tvrtki. Treehouse nije besplatan kao CodeAcademy, i ima tri paketa - 'Osnovni,' gdje korisnici imaju pristup određenim bibliotekama, stazama i društvenoj zajednici, Pro, gdje korisnici uz sve iz osnovnog dobivaju i pristup bonus materijalima i konferencijama te Techdegree' paket gdje korisnici dobivaju pristup posebnim tečajevima.
Svaki korisnik kada odabere neki tečaj ili lekciju koje želi učiti prvo što mora proći su video materijali koji im daju osnovna teorijska znanja koja su potrebna za savladavanje gradiva. Uz svaki video materijal ponuđeni su dodatni materijali uz koje korisnik može dobiti uvid u detalje i širi spektar ponuđenog znanja. Treehouse redovito nadopunjuje svoj sadržaj i održava ga u toku sa novim tehnologijama i najboljim praksama.
Nakon što se prođu video materijali i usvoje osnovna znanja korisnik mora rješavati kvizove koji ga ispituju i provjeravaju ono što je naučio. Tek kada skupi određeni broj točnih odgovora može krenuti dalje sa gradivom. Također uz kvizove, kroz učenje lekcija pojavljuju se razni interaktivni kodni izazovi gdje korisnik mora programiranjem riješiti zadani problem. Na taj način Treehouse pomaže korisnicima da lakše zapamte ono što su naučili gledanjem video materijala, te da kasnije mogu to znanje iskoristiti na svojim vlastitim projektima. Ukoliko korisnici zapnu pri rješavanju problema, jednostavno se mogu obratiti društvenoj zajednici Treehousea jednostavnim klikom na „Start discussion" gdje se može zatražiti pomoć ili pokrenuti rasprava ako se korisnik ne slaže s određenim načinom na koji Treehouse zahtjeva da se problem riješi.
Za završavanje lekcija i tečajeva korisnici su nagrađeni bodovima i bedževima koji su prikazani na njihovom vlastitom profilu koji se može javno dijeliti. Ti bedževi pokazuju koja znanja i vještine studenti posjeduju. Sustav Treehouse organiziran je kroz tri osnovne kategorije: biblioteke, staze i društvena zajednica.
(1) Biblioteke u kojima se pojedinačno nalaze sve lekcije i tečajevi za sve kategorije i programske jezike. Klasičan tečaj ima puno teorijskog i malo praktičnog dijela. Služi kao uvod u neku tehnologiju ili za objašnjavanje neke arhitekture ili najbolje prakse za pisanje koda. Radionica je viši oblik, u kojoj se uglavnom rješavaju praktični primjeri iz stvarnog života. One su najkorisnije za učenje programiranja jer uz njih studenti rade na nekom stvarnom projektu. Za korisnike Pro inačice postoje brojni video materijali sa važnih programerskih konferencija, i bonus materijali u kojima se uglavnom opisuje neki novi trend u programiranju ili se pokazuju neke nove mogućnosti u novim verzijama tehnologija. Kvizovi se pojavljuju nakon što je student prešao određeni broj video materijala. Ispituju studenta o nekim osnovnim znanjima te mu na taj način pomažu da lakše zapamti i prisjeti se onoga što je u videu naučio. Kodni izazovi su interaktivni način pisanja koda nakon neke naučene lekcije. Zadaci nisu komplicirani i daju studentu mogućnost da u praksi iskoristi naučeno znanje. Treehouse ima svoj vlastiti sustav u kojemu studenti mogu pisati kod i odmah vidjeti rezultat napisanog koda. Ako je nešto u kodu pogrešno napisano sustav mu javi gdje bi mogla biti greška i daje mu neke natuknice kako bi mu pomogao riješiti zadatak. Također, ako studentu ni ponuđene natuknice ne pomognu da riješi zadatak, klikom na gumb „Get Help" može se obratiti društvenoj zajednici sa problemom koji će mu netko uvijek pomoći riješiti.
(2) Staze koje su napravljene zato da bi se korisnicima olakšao izbor lekcija i tečajeva kroz koje će prolaziti. Staze su u suštini grupe pojedinačnih lekcija koje imaju svrhu pokriti određeno područje. Npr. to mogu biti lekcije za Java programski jezik, lekcije iz web dizajna, itd. Za svaku stazu dan je kratak opis i procjena trajanja tečaja. Za svaku tehnologiju (stazu) objavljeni su i veliki korisnici koji tu tehnologiju koriste, a može se vidjeti kolika je prosječna plaća za zaposlenika koji ju koriste.
(3) Društvena zajednica je mjesto gdje studenti mogu međusobno komunicirati i tako efikasnije rješavati postavljene zadatke. U društvenoj zajednici ubačeni su elementi gamifikacije, kroz rang liste gdje korisnici mogu vidjeti koliko su bodova skupili u odnosu na druge studente, te mogu vidjeti svoj percentil za tehnologije u kojima su najviše naučili.

Treehouse sustav je bogat različitim elementima gamfikacije i ono što ga čini boljim u odnosu na druge je to da su u Treehouseu ti elementi kvalitetno postavljeni i osmišljeni. Bodovi se mogu dobiti gledanjem video materijal, završavanjem lekcija, rješavanjem kvizova i kodnih izazova te pomaganjem drugim studentima putem društvene zajednice. Podijeljeni po područjima, te se za svaku tehnologiju/područje mogu vidjeti zasebno zarađeni bodovi a služe i za poredak na rang listama koje se nalaze u društvenoj zajednici. Postignuća se dobivaju samo kada se završi jedna kompletna cjelina i ona daju studentima uvid u znanje koje su dobili. Prikazuju se na osobnom profilu i mogu se pokazati svima koji imaju pristup internetu (potencijalnim poslodavcima, prijateljima, i dr.). Staze omogućuju studentima lakše snalaženje i biranje lekcija. Pošto u stazama postoji samo jedan put, studenti moraju završiti svaki pojedinačni tečaj prije nego mogu pristupiti sljedećem. To ih na neki način može motivirati da napreduju dalje, jer ih na kraju staze očekuje poseban bedž / postignuće koje potvrđuje da su studenti prošli kroz cijelu stazu. Grafički indikatori se u Treehouse sustavu koriste da bi studentu dali do znanja gdje se nalazi i koliko još ima do završetka započetog tečaja, lekcije ili staze. Nakon završetka svake lekcije na grafičkom indikatoru se pojavljuje indikator završetka. Rang liste se mogu pronaći na društvenoj zajednici. Postoje dvije rang liste na kojima se mogu vidjeti odnosi studenata po broju bodova i po broju postignuća. Također rang liste postoje za trenutni tjedan, trenutni mjesec i rang liste od samog početka Treehousea. Uz top 10 najboljih studenata može se vidjeti korisnikova trenutna pozicija, kolika je razlika između njega i studenta nakon njega, te koliko je bodova studentu potrebno da bi prestigao studenta ispred. Nekim studentima takav izazov može biti dodatna motivacija, pogotovo ako se natječu sa prijateljima iz stvarnog života.
Već nakon samo par sati učenja na Treehouseu studenti su spremni za razvoj neke osnovne aplikacije ili web stranice. Uz to, cijela aplikacija je strukturirana tako da je sve lako dostupno i ne mora se gubiti vrijeme i energija na traženje materijala ili lekcije na kojoj je student stao tokom učenja.
Jedna od prednosti u odnosu na sve druge sustave je to da uz podučavanje osnovnima znanjima, Treehouse studente uči načinu razmišljanja koje im je potrebno za pristupanje problemima i postavljanju samih temelja aplikacije na kojoj rade. To čini kroz poseban program Techdegree koji studentima uči vještinama koje su im potrebne kako bi mogli naći odgovarajuće programerske poslove. Većina gradiva je preuzeta iz standardnih tečajeva i lekcija koje su dostupne svima na Treehouseu, međutim tečajevi traju 4-5 puta duže od standardnih a  korisnici rade na stvarnim projektima koje na kraju pregledavaju i ocjenjuju vrhunski stručnjaci iz područja. Tijekom rada otvorena im je komunikacija s tim istim stručnjacima u stvarnom vremenu.

5. Zaključak

5. Conclusion

U današnje vrijeme kad dolaze generacije mladih ljudi koji odrastaju na igranju igrica, sustavi koji koriste te iste elemente bit će im puno privlačniji za rad ili učenje. Implementiranjem gamifikacije u sustave za online učenje dobivaju se ne samo sustavi koji motiviraju korisnika na učenje, već mu cijeli taj proces čine i puno zanimljivijim. Ako se u sve to još uključi i društvena komponenta gdje se ljudi sličnih interesa i svjetonazora mogu spojiti, dobivamo atmosferu za kvalitetno i efikasno učenje. Radi povećanje potražnje za programerima sve je više online sustava koji ih mogu podučiti znanjima koja su im potrebna da u brzo i efikasno mogu postati punopravni članovi profesionalne programerske zajednice [15].

Reference

[1] Burning Glass: „The expanding demand for coding skills",http://burning-glass.com/wp-content/uploads/Beyond Point Click final.pdf, str 7, lipanj, 2016.
[2] Zac Fitz-Walter: „A brief history of gamification", http://zefcan.com/2013/01/a-brief-history-of-gamification/ , 24.1.2013.
[3] Ivan Kuo: Demand for Gamification Skills Are Up 293% From 2011, http://www.gamification.co/2012/11/13/demand-for-gamification-skills-are-up-293-percent-from-2011/, 13.11.2012.
[4] Brian Burke: „Gartner redefines gamification", http://blogs.gartner.com/brian burke/2014/04/04/gartner-redefines-gamification/, 4.4.2014.
[5] Justin Ferriman: „4 Reasons to use gamification", https://www.learndash.com/4-reasons-to-use-gamification/, 16.2.2014.
[6] Jim Pedicone: „Could you gamify productivity in your business", http://designpickle.com/gamify-productivity-business/, 25.10.2016.
[7] John Laskaris: „30 facts about gamification in eLearning", https://elearningindustry.com/30-facts-gamification-in-elearning, 30.07.2014.
[8] Traci Sitzmann: „A Meta-Analytic Examination of the Effectiveness of Computer-Based Simulation Games" https://scholar.google.com/citations7view op=view citation&hl=en&user=zfT 2LY AAAAJ&citation for view=zfT 2LYAAAAJ:2osOgNQ5qMEC , 1.6.2011.
[9] Gartner, Gartner says by 2015, more than 50 percent of organizations that manage innovation processes will gamify those processes, http://www.gartner.com/newsroom/id/1629214, 12.4.2011.
[10] Dean Takashi: „More than 1.2 billion people are playing games" http://venturebeat.com/2013/11/25/more-than-1-2-billion-people-are-playing-games/, 25.11.2013.
[11] Learning solutions magazine „What FarmVille can teach us about social gamification", https://www.learningsolutionsmag.com/articles/1592/what-farmville-can-teach-us-about-social-gamification/page2, 21.12.2014.
[12] Training mag, „2014 training industry report" https://trainingmag.com/sites/default/files/magazines/2014 11/2014-Industry-Report.pdf?utm campaign=elearningindustry.com&utm source=%2Felearning-statistics-and-facts-for-2015&utm medium=link , studeni/prosinac 2014
[13] U.S. Depatment of Education: „Evaluation of Evidence-based practices in online learning", https://www2.ed.gov/rschstat/eval/tech/evidence-based-practices/finalreport.pdf, 9.2010.
[14] Treehouse: „Treehouse mission" https://teamtreehouse.com/about
[15] Kristijan Župan: Metode gamifikacije u sustavima učenja programiranja / diplomski rad, Zagreb: Tehničko veleučilište u Zagrebu, veljača 2017.