pondělí 23. listopadu 2015

Střípky z konference WiPSCE 2015

Nedávno jsem se vrátil z konference WiPSCE (Workshop in Primary and Secondary Computing Education) v Londýně. Didaktici z různých koutů světa (i když nejvíc z Evropy) tam představují svoje výsledky a pomáhají tomu, aby se učitelé v hodinách mohli rozhodovat poučeně, a nikoliv odhadovat od boku. Takže jsem si přivezl spoustu námětů a zajímavostí a o některé se podělím.


Podrobnosti o příspěvcích najdete ve sborníku. Pokud se nedaří proklikat na plné texty, zkuste Google (autoři je často vyvěsí i jinde), knihovnu (vědeckou) nebo místního akademika.

Hodnocení programátorských dovedností

Andreas Mühling představil nástroj pro testování porozumění několika základním konceptům v programování. Přínos práce není v tom, že vymyslel nějaké úlohy, úloh je hromada. On je ale validoval pomocí Raschova modelu a IRT (item-response theory). Podrobnosti jsou v článku, nám postačí, že jde o statistické nástroje, díky kterým můžeme rozpoznat různě nevhodné úlohy (příliš těžké, vzájemně závislé apod.). Výsledkem testování na několika (málo) stovkách studentů je sada ověřených úloh na sekvence, podmínky, opakování atp., o nichž víme, jak se chovají. Dlouhodobým cílem je získat katalog hodnotících nástrojů, jaký mají např. fyzikáři. Při jejich použití bude samozřejmě na místě opatrnost, např. konkrétní podmínky v jednotlivých třídách nelze zcela eliminovat.

Vedlejším efektem podobných výzkumů je leckdy překvapující pohled na obtížnost různých témat. Zde se například zdá, že úlohy s opakováním byly pro studenty snazší než úlohy s prostými podmínkami. Stojí za to zjišťovat, jestli je to vlastnost testu, důsledek konkrétní výuky, nebo opravdu vlastnost učiva v daném kontextu (něco jako robot Karel).

Čím víc studentů se do testování zapojí, tím přesnější budou výsledky. Jestli máte desítky studentů vládnoucích němčinou či angličtinou (na úrovni mateřského jazyka), nebo jste ochotni úlohy pro studenty přeložit do češtiny (je jich vždycky nanejvýš tucet), autora kontaktujte, velmi rád bude spolupracovat.

Frame-based editing

Často se objevují úvahy (ale i zkušenosti), jak přechod z blokového prostředí (Scratch, Code.org) na textové (Python) působí žákům potíže. Kolektiv autorů z Univerzity v Kentu se k tomu zkusil postavit konstruktivně a vyvinout nástroj na půli cesty. Žáci se dívají na text, který už vypadá skoro jako klasický zdroják, ale ještě nemají úplnou svobodu psát kamkoliv cokoliv a systém je drží v mantinelech správné syntaxe. Tahle základní myšlenka vlastně není nijak převratná, přínos práce vidím v tom, že autoři prvotní nápad do detailu rozpracovali a především implementovali.

Zajímavý je výčet potíží, kterým žáci při přechodu k textovým jazykům čelí (přehlednost kódu, překlepy, zavírání závorek, zapamatování klíčových slov, psaní výrazů, formátování kódu a odsazování atd.). Autoři je pak roztřídili na ty, které jejich nástroj eliminuje, a ty, které zůstávají. A učinili prima pozorování: ty potíže, které zůstávají, jsou ty, které chceme, aby zůstaly, protože jsou nějak zajímavé a souvisí s tím, co se žáci mají naučit (což fakt není hlídání středníků). Z toho plyne zajímavá myšlenka: frame-based editing by mohli a měli používat i profíci. Pohled z druhé strany dává smysl: frame-based editing je doplňování kódu a spol. dotažené asi tak na 1562 %. Pochopitelně to vyžaduje ještě dost práce (a já se těším na její výsledky).

Nástroj si můžete vyzkoušet!

SCRUM v projektové výuce

Petra Kast a Ralf Romeike zkouší vylepšit projektovou výuku prostřednictvím agilních metodik. Místo jednoho velkého cíle, plánu, termínů pro jednotlivé navazující fáze se postupuje po mnohem menších krocích. Žáci se častěji (a opakovaně) sejdou, aby vyhodnotili postup, identifikovali nedostatky dosavadního řešení a rozhodli se, které budou řešit. I z tohohle jednoduchého popisu je zřejmé, že se stráví víc času řízením práce na projektu, postup je prostě o něco strukturovanější. Na druhé straně jsou jednotlivé krůčky menší a častěji je vidět výsledek vlastní práce. Ukazuje se, že ten druhý efekt převáží a agilní pojetí projektů funguje lépe než pojetí klasické („vodopádové“). S ohledem na zkušenosti vývojářů to vlastně není překvapení.

Informatické myšlení a Bloomova taxonomie

Hutnou teoretickou práci představila Cynthia Selby ze Southamptonu. Hledala vztah informatického myšlení k různým rámcům a taxonomiím, zejména (ale nejen) Bloomově. Samozřejmě přitom narážela na limity použitých modelů. Zajímavé je pozorování, že pociťovaná obtížnost jednotlivých dovedností (podle dotazníků a rozhovorů) vychází skoro přesně naopak, než pořadí odpovídající výuky. Vnucuje se tak otázka, co je špatně. Já soudím, že že použití těch modelů, resp. interpretace výsledků výzkumu. Dekompozice či abstrakce mohou znamenat ledasco a s různou úrovní obtížnosti a má jen malý význam je vzájemně porovnávat. Ale přečtěte si článek a posuďte sami.

Roboti a jejich (ne)výhody

Tým z Lancasterské univerzity porovnal výuku informatiky pomocí Scratche, Cubeletů a Unplugged. Kromě samotného porovnání stojí za pozornost skutečnost, že se jednalo o děti ve věku 5-7 let. V návaznosti na nedávnou diskusi o informatice od první třídy představuje tenhle výzkum pěkný empirický příklad, že taková výuka možná je.

Další srovnání se týká programování počítačů, robotů a nositelné elektroniky. Zajímavé jsou mj. závěry tom, který způsob jak zaujme děvčata ve srovnání s chlapci, nebo kterým způsobem se kdo naučí víc.

Učebnice s Runestone

Já osobně jsem se nejvíc těšil na příspěvky o on-line interaktivních učebnicích (nejde o barevné blbinky, ale možnost spouštět programy přímo na stránce učebnice). Jednu totiž taky píšu. Svoje zkušenosti (a především záměry) popsal tým z Oxfordu. Mě ale zajímala především práce týmu z Georgijské techniky. Ti v rámci zavádění nového kurzu pro středoškoláky (AP Computer Science Principles) připravují zdroje pro studenty i učitele (o učitelskou verzi učebnice si napište na cslearn4u@gmail.com, jsou v ní totiž řešení úloh). A přistupují k tomu jako správní výzkumníci.

Zjistí, co o efektivních učebnicích říká literatura a svoje vlastní výsledky testují. Což je paráda, protože já pak můžu jejich poznatky použít ve vlastní práci. Takže například vím, že Runestone je z hlediska uživatelů knížky nejlepší volba pro interaktivní Python, nebo že se použití interaktivních prvků projevuje v závěrečných testech. To by blbej neřek, ovšem oproti rozšířenému názoru se ukazuje, že není nutné kód psát, aspoň ne pořád. V diskusi s Barbarou Ericson pak padly i další zkušenosti — příště prostě přijeďte taky.


Příspěvků z WiPSCE uveřejním asi ještě víc, sem jsem shromáždil spíš různé drobnosti. Příští ročník se uskuteční společně s konferencí ISSEP v Münsteru 12.—14. října 2016.


3 komentáře:

  1. Díky za zajímavé odkazy. Překvapivě se tématicky strefují do oblastí, které mě již dlouho zajímají.

    Pár postřehů:
    Hodnocení programátorských technik by mohlo být součástí například online Scratche, kdy by vyhodnocovalo programy uživatele.
    Statická analýza kódu by mohla odhalit i jiná problematická místa a dát zpětnou vazbu nejen uživatelům, ale i autorům.

    Frame-based editing:
    Přechod bych rád viděl více jako práci se skutečným jazykem a na základy svých zkušeností vyzdvihuji Python. Líbilo by se mi propojení ve stylu, postupného přechodu. V prvním přechodovém kroce by žáci skládali bloky podobně jako ve Scratchi a hned vedle by viděli kód. Do bloků by však nemohli psát, a hodnoty proměnných by psali do kódu. V dalších krocích by se jim postupně začali vypínat jednotlivé bloky a získali by je tím, že by je zapsali do kódu. V předposledním kroce už by byla bloková část jen jako vizuální pomůcka bez možnosti interakce. Tomu říkám přechod :)

    SCRUM:
    Rád propojuji své znalosti a zkušenosti do praxe. Jako vystudovaný a aktivně působící softwarový inženýr samovolně přidávám do výuky některé techniky z agilního vývoje SW. Pojmenovat to a více se zaměřit na některou techniku je zajímavá myšlenka. Promyslím a vyzkouším.

    Bloomova taxonomie:
    Mě osobně velmi pomohl utřídit pohled, stále platný, článek pana Brdičky:
    Bloomova taxonomie v digitálním světě:
    http://www.spomocnik.cz/index.php?id_document=2230
    Cítím však potřebu, vést žáky dál za dál za tuto taxonomii. Propojování nástrojů, navazování a propojování svých výtvorů, pomoc ostatním, propojování práce s ostatními, podílení se na řízení skupiny, podílení se na řízení výuky, hodnocení vzdělávacího procesu s ohledem na ostatní účastníky....

    Roboti ve vzdělávání:
    Nevýhod je celá řada: Mnohdy vysoká pořizovací cena a z toho vyplývající omezené množství. Když už se podaří zajistit dostatečné množství, aby měl žák robota víc než jen 5 minut z hodiny, tak přibývají starosti s přepravou, skladováním, nabíjením, servisováním. Také samotný cyklus, naprogramovat -> otestovat je řádově pomalejší, než když žáci řídí, každý svého virtuálního robota.
    Přesto však má onen přesah programování s výslednou akcí v reálném světě své kouzlo v podobě jiného pohledu na oblast programování a nutnosti přibrat při programování další oblasti, které se u virtuálního robota nemusí zohledňovat.

    Interaktivní učebnice:
    A interaktivní vzdělávání vůbec. Tady vidím velké rezervy o kterých by se daly psát stovky stran textů. Za mnohé zmíním exemplární případ. Výuka matematiky metodou Hejného. Fajn věc, dá se říci, ale to rozkouskované .PDF v prohlížeči FlexiReader, které nakladatelství Fraus prodává jako interaktivní učebnici je výsměch slovu interaktivní. Proč k něčemu, s čím pracuje třetina základních škol dosud nevznikla skutečná interaktivní učebnice?

    Děkuji tedy za report z WiPSCE, zase notná porce témat nad kterými stojí za to se zamyslet.

    Filip Vaculík

    OdpovědětVymazat
    Odpovědi
    1. Teď jsem skoro dojatý, že příspěvek někomu takhle sednul. K těm postřehům:

      Automatické hodnocení Scratche je tady: http://drscratch.programamos.es/
      Já sebou vždycky cuknu, když se někde objeví, že to hodnotí informatické myšlení. Když jsem se díval naposled, tak se to "prostě" dívalo, jestli jsou třeba použité cykly nebo rozhodování a podle toho to uživatele zařadilo na nějakou úroveň. Ale když tomu nebudeme připisovat nepatřičný význam, může jít o užitečnou pomůcku. Myslím, že to u nás zkoušela Hanka Šandová.

      Roboti:
      Kromě už řečeného vidím přínos i v posunutí principů. Zatímco "uvnitř" počítače nám přesně fungují všelijaké algoritmy, zatočit s robotem o 90° může dopadnout všelijak, když třeba proklouzne. Všelijaké "divné stavy", které musíme řešit v obvyklých programech, jsou celkem dobře předem definované (dělení nulou, málo paměti atp.). Roboti fungují v mnohem bohatším světě a dobře tak ukazují na omezení abstraktního světa "uvnitř". Pojmy jako "správnost algoritmu" je najednou potřeba posuzovat dost jinak.

      Interaktivní učebnice - to je přece taková, co je na nějakém displeji, co by kdo chtěl víc? :-)

      Vymazat
  2. Některé prezentace se objevily online:
    http://www.wipsce.org/2015/presentations.php

    OdpovědětVymazat