Vissza a blogra

Ebben mesterkedünk: programozó képzés avagy mastery-based learning a gyakorlatban – 1. rész

Miért úgy indul nálunk a nap, hogy el kell mesélned, mi a legfurább kaja, amit valaha ettél? Miért van a Codecoolban is próbaidő? Miért otthon kell tanulni és a suliban házit csinálni? Képzésünk sokban különbözik attól, amit máshol megszokhattál.

Ezek közül az egyik legfontosabb a mastery-based learning (mesterfokú tanítás-tanulás) módszertan, amire az egész programozó képzés épül. És amiről a legtöbb kérdést is kapjuk tőletek. A legújabb cikksorozatunkban ezért arról kérdezzük a Codecool mentorait, elsőként Törzsök Árpádot, hogy milyen feladatokra, napirendre és kihívásokra számíthattok a képzés különböző szobáiban.

Mit tanulnak meg a diákok az első szobában?

A programozó képzés első szobájának neve „A programozás alapjai”. Az alapok lerakásához a Python-nyelvet használjuk, mert az összes programnyelv közül ez áll legközelebb az emberi nyelvhez és viszonylag kevés nyelvspecifikus dolog van benne. Alapok alatt az alapvető változótípusokat, vezérlési szerkezeteket és függvényeket értjük. Plusz a csapatmunkát, ami szerintünk a legfontosabb soft skill. 

Ezt a legjobban persze úgy lehet elsajátítani, hogy az ember sokat dolgozik csapatban, de azért van egy csomó tipp és trükk is, amiket workshopok keretében szoktunk gyakorolni. Ebben a szobában négy ilyen van: Időgazdálkodás, Értő figyelem, Párprogramozás és Fejlődési szemlélet. Ezenkívül nagy hangsúlyt fektetünk arra is, hogy gyakoroljuk a visszajelzésadást és a visszajelzés-fogadást is. 

Az első szoba tananyagát hat darab hétpárra alakítottuk ki, de ez nem jelenti azt, hogy mindenki ennyi idő alatt végzi el. Ha valaki gyorsabban halad, ugorhat egy hetet, vagy ha arról van szó, maradhat plusz két hétpárt. Itt az elején különösen fontosnak tartjuk, hogy az elméleti  alapok minél szilárdabbak legyenek és ne építkezzünk lyukakra. Ezért mindenkinek azt szoktuk tanácsolni, hogy pont annyi időt szánjon erre, amennyire szüksége van.

Hogyan képzeljük el az első napokat?

Az első hét lényege, hogy alakítsuk a csapatmunkát. A cél, hogy a diákok beleszokjanak az új közegbe és elkezdjék benne otthonosan érezni magukat. Az első heti projekt ezért mindig egy vicces, ismerkedős feladat, nem annyira programozás. Utána felváltva következnek az otthoni és a csapatmunka-hetek. A Codecoolban az úgynevezett flipped classroom-módszerben hiszünk: otthon kell az elméleti tudást elsajátítani, és ami máshol házi feladat lenne, azt mi a suliban csináljuk meg, mert itt van hozzá segítség. Csapatban kell dolgozni, és az egész egy valódi munkakörnyezethez hasonlít: van egy projekt, van egy csapat és van egy határidő. A fő különbség az, hogy nálunk igazából nem az a lényeg, hogy a feladat elkészüljön és tökéletes legyen, hanem az, hogy mindenki komolyan vegye és mindenki tanuljon belőle.

Az otthoni hét úgy néz ki, hogy mindenkinek rendelkezésére áll a tananyag, ami heti tennivalókra van felosztva. Ebben van egy csomó elmélet és gyakorlat is, azaz programot is kell írni. Mindezt úgy méretezzük, hogy 30-40 órában teljesíthető legyen. Tipikus hiba szokott lenni, főleg azoknál, akik még keveset programoztak, hogy el akarják olvasni és meg akarják érteni az összes elméleti anyagot mielőtt nekiállnak a feladatoknak. Ez általában nem jó stratégia, mert ezt a gondolkodásmódot olvasgatással nem lehet elsajátítani. A legjobb, ha belevágsz a kódolásba és mindig a feladathoz keresed a megoldásokat a tananyagban. Így sokkal jobban meg fog maradni az elmélet és rögtön gyakorlatot is szerzel.

A csapatokban mindenki ugyanazon a szinten van?

programozo kepzes

Nem, és erre nagyon büszkék vagyunk. Egyrészt különböző háttérrel jönnek ide emberek: van, akinek eleve sokkal nagyobb affinitása van a programozáshoz, vagy akár már tanult is ilyesmit, esetleg korábban dolgozott már hasonló területen, vagy egyébként is egész nap a számítógép előtt ül. Ezek a különbségek az első perctől szépen ki szoktak jönni, és utána nagyon gyorsan olvadnak is. A csapatmunka sokat segít ebben, mert a diákok egymásnak magyarázzák a dolgokat. Aki gyorsabban halad vagy előrébb tart egy témában, az a csapatmunka során némileg rá is kényszerül, hogy segítsen a többieknek. 

Másrészt úgy is tekinthet erre, hogy lehetősége van segíteni a többieknek. A Codecool-módszernek ugyanis ez is a része. Hiszünk abban, hogy a legtöbbet abból tanul valaki, ha saját maga próbál valamit elmagyarázni valaki másnak. Sőt, ha valaki elmagyarázza azt, amit ő ért, azzal valójában többet tanul, mint az, akinek elmagyarázza. Akinek meg elmagyarázza, az tanul annyit, hogy érdemben részt tudjon venni a projektben. A cél, hogy a diákok ne a mentoroktól hallják a megoldást, hanem egymástól, mert ha olyasvalaki magyarázza el nekik, aki ugyanazokon a buktatókon megy keresztül, amin ők is, az sokkal hatékonyabb. 

Arról nem is beszélve, hogy valószínűleg később a munkahelyen is kerülnek majd egy csapatba különböző tudásszinten lévő kollégákkal, így fontos, hogy már a programozó képzés során találkozzanak az ebből fakadó problémákkal és megtanulják kezelni ezeket. 

Hogy néz ki egy nap ebben a szobában?

Minden egyes napot egy névsorolvasás-szerű dologgal kezdünk, de nem azt kérdezzük meg, hogy ki van itt, hanem mindenkinek egy vicces vagy éppen elgondolkodtató kérdésre kell válaszolnia. Például, hogy melyik a legfurább kaja, amit valaha evett vagy mi az, amiben szerinte a világon mindenki egyetért. Ezt napi rendszeres tréninggyakorlatnak tekintjük: gyakoroljuk az egymásra figyelést és azt, hogy nagyobb társaságban is tudjunk kommunikálni.   Ezután a nap első órája azzal telik, hogy függetlenül attól, ki milyen határidővel küzd éppen és milyen feladatnak kellene a végére érnie, hatvan percet arra szán, hogy a tudását fejlessze. Van egy külön platformunk, ahol mindenki kereshet a saját szintjének megfelelő feladatokat. Természetesen ott vannak a mentorok, hogy segítsenek, ha valaki elakad, de itt alapvetően az önálló feladatmegoldás a lényeg. Az sem baj, ha nem érsz a feladat végére. A rászánt idő az, amit igazán fontosnak tartunk. Ha ennek vége, kezdődhet a projektmunka. Itt mindenki a saját időbeosztása és vérmérséklete szerint, de a csapat többi tagjához igazodva dolgozik a projektjén.

A projektmunka négyfős csoportokban zajlik, mert az ennél nagyobb csapatokban sokszor romlik a kohézió és kiszorulnak az emberek a munkából. De a fokozatosság kedvéért az elején kétfős csapatokra osztjuk a diákokat, és általában valamilyen játékos feladatot kapnak, például sudoku vagy tic-tac-toe. Négyfős csapatokban már komolyabb feladat vár rájuk, például egy vállalatirányítási rendszer egyszerű változatát kell leprogramozniuk. Azt szoktuk javasolni, hogy egyórás ebédszünetet tartsanak, de ettől függetlenül mindenki szabadon követheti a saját időbeosztását. Mindig lesz, aki hamarabb visszajön majd, mert lelkes és szeretné folytatni, de azért egy óra mindenkinek kell a felfrissüléshez. Ezután lehet a mentoroktól segítséget kérni, majd háromkor lefújjuk a munkát. Néhány csapat annyira belemelegszik, hogy akár estig is itt marad. A hétfők és a péntekek kicsit mások. Hétfőn azzal szoktunk kezdeni, hogy elővesszük az otthoni hét tanulságait és nehézségeit, és átbeszéljük őket. Pénteken pedig mindig demónap van, vagyis minden csapat bemutatja, hogy mire jutott a héten. Szóval a projektmunkára nettó három nap jut.

Azoknak, akik még soha nem programoztak előtte, hogy szokott menni ez a szoba?

Mi azt tapasztaljuk, hogy elég sok olyan ember van, aki soha nem kódolt előtte és itt kap rá az ízére. Sokszor annyira megtetszik nekik, hogy nem is tudják elképzelni, hogyan élték le az eddigi életüket programozás nélkül. De olyat is sokszor látunk, hogy valaki borzasztó nehezen indul és még a félidőnél is azt látjuk, hogy valószínűleg nem fog neki menni a programozó képzés. Aztán egyszer csak valami kikristályosodik és onnantól kezdve hasít. És vannak olyanok is, akik az egészet teljesen természetes tanulási folyamatként élik meg, mintha észre sem vennék, hogy tanultak valamit, hanem csak egyre jobban megy nekik. De persze van olyan is, aki félidőnél rájön, hogy nem tud elég energiát beletenni a tanfolyamba vagy nem érzi jól magát a gép előtt, és neki ez az egész tulajdonképpen nem való.

Hogy méritek, hogy ki hol tart?

Van egy bejáratott rendszerünk: a modul végén minden diák leül egy mentorral és mint egy konzultáción, közösen megoldanak egy feladatot. A mentornak így van alkalma megfigyelni, hogyan tudja a diák alkalmazni mindazt, amit megtanult. Amellett, hogy ne építkezzünk lyukakra, van még egy fontos dolog: az első szobát próbaidőnek tekintjük. A mi szempontunkból is és a diákok szempontjából is. Ha nem sikerül megtalálnunk a közös hangot, és nyolc hétpár alatt sem sikerül elsajátítani azt, ami szerintünk ahhoz kell, hogy valaki továbbmenjen, akkor felmondhat. Ebben az esetben semmilyen tandíjat nem kell fizetnie, csak az adminisztrációs díjat, ami a felvételi eljárás költségeit fedezi. Ha egy későbbi szobában derül ki, hogy mégsem való neki a programozó képzés, akkor egy csomó pénzt és időt vesztegetett el, és ezt semmiképpen nem szeretnénk. Úgyhogy csak olyan embereket engedünk tovább, akikről meg vagyunk győződve, hogy végig tudják csinálni a kurzust.

***

Úgy érzed, ez a programozó képzés az, amit keresel? Kurzusaink kéthetente indulnak, szóval nálunk szinte bármikor elkezdheted a tanulást. Jelentkezz most!

 

 

Megosztás