🇸🇰 Online učenie sa s Haskellom: Mongolská trieda roku 2020

Pripomienky v rámci usporiadaniu prvého masívneho online kurzu pre Haskell (MOOC)


(Napísal Alejandro Garcia z IOHK) - preklad @Martin.M

V tomto článku zdieľame spätnú väzbu na tohtoročného Haskell kurzu, ktorý bol prvýkrát riešený online.

Hovoriť, že pandémia Covid-19 zmenila plány celého sveta je v tomto okamihu klišé a to isté sa stalo aj nám tu na oddelení IOG’s pre edukáciu. Čo sme však nečakali boli nové príležitosti, ktoré sa nám aj v rámci globálneho lockdownu zjavili a umožnili nám dodať fantastický online bootcamp Haskellu v roku 2020.

Ak poznáte IOG, tak pravdepodobne viete, že programovací jazyk Haskell a jeho funkčný prístup k vývoju softvéru sú neoddeliteľnou súčasťou spoločnosti. Nachádza sa tam priamo v názve „Input Output“. Nie je teda prekvapením, že sme investovali značné prostriedky do zlepšenia ekosystému Haskell - od prispievania k open-source projektom až po sponzorovanie vývojárov, ale aj oveľa viac. Jednou z našich veľkých snáh je, že každý rok zorganizujeme bootcamp pre Haskell, ktorý bude zahŕňať tri mesiace intenzívneho osobného tréningu s Larsom Brünjesom - riaditeľom pre vzdelávanie a prednášky podané najlepšími vývojármi a počítačovými vedcami na svete. Doteraz existovali štyri iterácie tejto triedy: Etiópia 2019, Barbados 2018, Atény 2017 a jedna bola naplánovaná pre Mongolsko v roku 2020.

Samotný kurz trvá 10 týždňov školenia v oblasti Haskellu, kryptomien a inteligentných zmlúv, ktoré otvárajú nové príležitosti pre mladých študentov, ktorí sa tohto kurzu zúčastnia. Nie je to ľahké - témy sú ťažké, domáce úlohy ešte ťažšie a hodiny sú vyčerpávajúce. Nazvať to prácou na plný úväzok je podhodnotením, väčšina študentov tento program v minulých rokoch označila za „najťažšiu skúšku svojho života“.

Napriek všetkým týmto faktorom po 10 týždňoch študenti odchádzajú so skúsenosťami v rámci najmodernejších tém v oblasti vývoja softvéru: funkčné programovanie so silnými typmi, integrovaný dizajn DSL, testovanie založené na vlastnostiach, vývoj inteligentných zmlúv (v Plutuse a Marlowe), ako aj so silným pocitom hrdosti na to, že dosiahli niečo skutočne náročné, čo ovplyvní ich profesionálny život na ďalšie desaťročia.

Na začiatku roku 2020 bol Haskell bootcamp v Mongolsku na dobrej ceste k uskutočneniu v marci avšak potom, ako všetci vieme, sa planéta zastavila. V januári bola podstata koronavírusu relatívne neznáma, ale do marca bola jeho úmrtnosť a hlavné médiá prenosu správami na titulných stranách, lety boli zrušené a neskôr úplne zastavené. Toto znemožnilo osobne usporiadanie kurzu podľa plánu. Vďaka húževnatosti alebo môžeme povedať tvrdohlavosti Dugerdorja Davaadorja a Larsa sa táto trieda zorganizovala bez ohľadu na to, čo sa dialo. Takže sme museli triedu prispôsobiť novým realitám, ktoré priniesla pandémia. Očakávali sme, že tieto zmeny budú náročné a ako vám ktorýkoľvek učiteľ povie - je jednoduchšie poskytnúť spätnú väzbu, keď vidíte reakcie študentov a je tiež jednoduchšie poskytnúť interaktívne vzdelávanie, keď sa študenti vidia navzájom, programujú vo dvojici, alebo dokonca cvičia „swarm“ vývoj.

Neočakávali sme, že prístup MOOC sa v niektorých ohľadoch ukáže byť ešte lepším ako osobný tréning. Napríklad v nedávnom vydaní bola táto trieda vyučovaná Larsom a Andresom Löh od našich priateľov z Well-typed. Andres je veľmi uznávaným učiteľom v Haskell komunite a s jazykom pracuje už viac ako 20 rokov. V zásade platí, že ak v Haskelly nájdete zaujímavý open-source projekt, tak Andres bol do neho pravdepodobne nejakým spôsobom zapojený. Potom nás čakali hosťujúce prednášky Roba Cohena (Program Manage IOG), Joshua Millera (Project Manager IOG) a Phillipa Wadlera (jedného z pôvodných tvorcov Haskellu, ktorý má príliš veľa úspechov na to, aby sme ich tu všetky vypísali; jeho stránka Wikipedie je dobrým východiskovým bodom, ak sa chcete dozvedieť viac).

Náš školiaci kurz pre Haskell sa začal v auguste a ako obvykle sa vyskytli nejaké problémy pri zoznamovaní sa študentov s vývojovým prostredím, taktiež jazykové bariérý a aj nejaké kultúrne rozdiely. Profesori v zásade povzbudzovali študentov aby sa pýtali viac, avšak v mongolskej kultúre majú študenti tendenciu pracovať potichu a pýtať sa iba otázky iba v rámci vzájomnej spolupráce. Preto bolo dobré, že všetci študenti pracovali spoločne v univerzitnom laboratóriu priamo na mieste a boli sme veľmi radi, že sme mali prístup do tohto zariadenia. Bolo skvelé vidieť, že v Mongolsku boli univerzity otvorené!

Pamätajte, že toto bol august 2020, kedy bola väčšina škôl v Európe a Amerike zatvorených - tak ako to, že boli mongolské univerzity otvorené? Ukazuje sa, že Mongolsko až do tohto bodu zaznamenalo nulové úmrtia na Covid-19! Znovu to poviem - NULA úmrtí v rámci Covid-19. Na začiatku sme tomu ani nemohli uveriť, ale ako týždne postupovali a mohli sme študentov spoznávať, pochopili sme prečo. Disciplína a dispozícia pre prácu, ktorú naši študenti preukázali na vyučovaní, boli rovnakým prístupom, ktorý umožňoval mongolským občanom izolovať sa od pandémie už 27. januára. Mongolská vláda hneď od začiatku urobila rozhodné kroky, ktoré občania presne nasledovali. Toto sme mohli vidieť aj pri práci, kde všetci nosili rúška a dodržovali odstupy. Aj keď proces učenia bol náročný, študenti pracovali na mnohých náročných cvičeniach, navzájom sa radili a spolupracovali v spontánnych tímoch a snažili sa povzbudiť všetkých zúčastnených.

Domáce úlohy pre triedu boli nasadené na platforme GitHub, čo študentom umožnilo spolupracovať na tímových projektoch tak, ako to robia profesionálni vývojári softvéru: spracovanie a riešenie problémov z rôznych odvetví v spoločnom úložisku kódu.

Využitím výhody online výučbového prostredia sme mohli prijať pár študentov z Mexika.Bolo to pre nich taktiež náročné, pretože vyučovanie sa konalo od 23:00 do 5:00 rána, čo si vyžadovalo úplnú zmenu týždenného harmonogramu pre študentov, ako aj pre mňa a recenzentov.

Nakoniec im ich odhodlanie umožnilo dokončiť tento kurz získaním skutočne cenných schopností a hrdosti za samotný úspech. Chceme poďakovať mongolskému ministerstvu školstva a ekonomiky za to, že sa to mohlo uskutočniť.

Spätná väzba, ktorú sme dostali od študentov bola veľmi pozitívna - tu je niekoľko komentárov, ktoré sme od účastníkov dostali:

“Kurz bol mojou úplne prvou skúsenosťou s funkčným programovaním. Pripadalo mi to ako úplne nový svet a skutočne mi to rozšírilo obzory a spôsob myslenia. Som veľmi rád, že moje prvé kroky boli vedené profesionálmi. Už nikdy nebudem taký, ako som bol predtým, než som nastúpil do tejto triedy. Som veľmi vďačný; Rástol som profesionálne aj osobne. Odporúčam to každému, kto si chce zvýšiť úroveň svojich programátorských schopností.”

Tuvshintsenguun

“Pri účasti na hodinách Haskell - Mongolsko som znovu zažil krásu funkčného programovania. Krása kódu umožňuje, aby vyzeral tak jednoducho. Chcem poďakovať Larsovi a Andresovi za to, že mi umožnili zúčastniť sa vaších hodín. Obdivujem vašu maximálnu profesionalitu a nadšenie zdieľať vaše vedomosti. Ste inšpiráciou pre nás všetkých, ktorí sa chcú stať lepšími inžiniermi.”

K. Chaires

“Tento kurz prekonal všetky moje očakávania. Veľmi veľa som sa toho s Larsom a Andresom naučil. Sú to skúsení programátori a ešte lepší učitelia. Ľahko vysvetlili zložité koncepty. Teraz chcem vypracovávať každý projekt v Haskelli.”

A. Ibarra

Čo sa týka nás samotných, sme veľmi spokojní s tým, ako dopadol tento experiment prevádzkovania malej triedy na diaľku, kde to bolo naše prvé použitie MOOC. Taktiež to do budúcnosti otvára vzrušujúce nové možnosti spolupráce pre náš vzdelávací tím. Samozrejme sa nemôžeme dočkať, až sa vrátime na cesty a stretneme sa s týmito, ale aj budúcimi študentmi v reálnom živote ešte raz, keď bude opäť bezpečné cestovať. Preto v roku 2021 plánujeme uskutočniť ešte jednu iteráciu triedy osobne a jeden online kurz otvorený svetu, pretože pokračujeme v našej príprave 10 000 vývojárov inteligentných zmlúv pre Cardano. Prajeme vám všetkým šťastný nový rok a tešíme sa na rok 2021!

Pôvodný článok: Online learning with Haskell: the Mongolia Class of 2020