Haskell Hero
Interaktivní učebnice pro začínající Haskellisty
O učebnici
Co učebnice umí | Co učebnice bude umět |
hodnocení odstavců základní diskuze příklady k lekcím levelový systém profilové stránky uživatelů zasílání novinek emailem žebříček uživatelů |
statistiky pochopení odstavců úprava / mazání diskuzních příspěvků |
Předmět Úvod do funkcionálního programování má dlouhodobě nízkou úspěšnost. To je zapříčiněno několika faktory. Jednak jej mají zapsaný studenti prvního ročníku, kteří studium na informatice jdou jen tak zkusit, jednak jsou zde studenti, kteří si myslí, že jim bude ke zvládnutí tohoto předmětu stačít týden před zkouškou. Podle mě jsou zde další dvě skupiny studentů.
Ti první na začátku semestru přijdou na přednášku a vůbec nic z ní nepochopí. Stejně tak je to na prvních cvičeních. Otevřou skripta, jednou přečtou první dvě stránky a se slovy To se nikdy nemám šanci naučit! je odloží až do konce semestru, protože si vetknou myšlenku, že se to nikdy nemají šanci naučit.
Ti druzí si oproti prvním vezmou skripta do rukou opakovaně, ale stále dokola koukají na ty nesmyslné shluky písmen znázorňující definice funkcí a nic jim to neříká. Z vlastní zkušenosti vím, že na chápání látky tohoto předmětu je zapotřebí velká dávka abstraktního myšlení. Sám jsem po mnohanásobném čtení skript pochopil podstatu předmětu až v devátém týdnu semestru. Docílil jsem toho jednoduchým trikem – k většině funkcí a datových struktur jsem si vymyslel přirovnání k věcem z reálného života.
Řekl jsem si, že by mohlo nemalému počtu studentů zpříjemnit život, pokud bych se s nimi o tato přirovnání podělil. Několik studentů mě na podzim 2008 na fóru požádalo, zda bych jim nezkusil alespoň něco z náplně předmětu vysvětlit. A tak jsem začal učit krabičkovou metodou. Podle předmětové ankety měla docela úspěch:
„Paráda, mašinky a krabičky jsou dobrý nápad :-)“
„Líbil se mi krabičkový učební styl a vůbec celý výklad látky, byl jasný a srozumitelný.“
Fakulta informatiky má opravdu skvělé učitele a jejich přednášky bývají většinou poutavé a zábavné. Mnohdy se ale v oboru pohybují tak dlouho a tak důkladně, že některé informace považují za naprosto základní a domnívají se, že se s nimi člověk rodí. Vedle formálních skript, kde se dozvíte vše potřebné, se vám tímto dostává do ruky o něco neformálnější učební materiál, který nepředpokládá předchozí znalosti prakticky čehokoli. Kromě ovládání PC na uživatelské úrovni.
Kdo jsem
Jmenuju se Standa, je mi 21 let, původem ze severomoravské Bruntále. Funkcionálnímu programování jsem se začal věnovat v prvním semestru na FI. Mám odučeno asi 50 hodin ve čtyřech seminárních skupinách z podzimu 2009.
Levely (průběžně obměňováno/doplňováno)
Číslo | Potřebné množství xp bodů | Název levelu |
---|---|---|
1 | 0 | Registrovaný uživatel učebnice |
2 | 2 | Uživatel Hugsu |
3 | 5 | Kalkulačník (používá Hugs místo kalkulačky) |
4 | 10 | Krabičkář (chápe význam funkcí v krabičkovém modelu) |
5 | 20 | Typař (chápe a zvládá otypování) |
6 | 50 | Vláčkař (zvládá definovat funkce na seznamech) |
7 | 100 | Eta-redukcionista |
8 | 200 | Ečkař (má šanci dostat u zkoušky E) |
9 | 500 | Monad slayer |
10 | 1000 | GODLIKE! |