Úvodní pokusy
Popsat nějaký pracovní postup opravdu přesně a jednoznačně je překvapivě obtížné.
První pokusy provedeme na lidech. Předně je třeba porozumět tomu, že vytvořit jednoznačný popis pracovního postupuTedy takový, který lze provést i bez složitého uvažování a vlastního rozhodování, co dělat. je složitější, než si leckdo myslí.
Vyber si jednoduchý úkol:
- Poskládat z listu papíru čepici, loď, vlaštovku, …
- Uvázat kličku na botách, osmičkovou smyčku, liščí smyčku, …
- Kdo to chce mít praktické: Složit vyžehlené triko, košili, …
- Nebo jiný podobný úkol.
Vytvoř (slovní) pracovní postup, který zaručeně vede k vytyčenému cíli. Pracujte ve dvojicích. Jeden bude mít roli zadavatele instrukcí, jeden roli jejich vykonavatele. Zodpovědnost za výsledek leží na zadavateli, protože vykonavatel jen přesně a doslovně plní instrukce. Nemůžeme ho tedy vinit z toho, že máme místo papírové čepice třeba lopatku. Vykonavatel neví, k jakému výsledku zadavatel míří, prostě plní instrukci za instrukcí. Poslouchá zadavatele na slovo. Pokud se zadavatel nevyjádří jednoznačně, vykonavatel si škodolibě zvolí, který z možných výkladů se mu líbí.
- Vykonavatel má zavázané oči. Instrukce tedy musí být o to přesnější a důslednější.
- Zadavatel zadává instrukce dvěma či více vykonavatelům zároveň. Nejednoznačné instrukce si samozřejmě každý vykonavatel vykládá po svém. Skvělá zkušenost.
Začneme postupně.
- Zadavatel postupně zadává jednotlivé instrukce vykonavateli, ten je průběžně provádí. Zní to jednoduše? Mnohé z vás to přivede na hranice duševní pohody. Nezapomeňte se vystřídat.
- Zkuste totéž, ale zadavatel se nebude dívat, co vykonavatel dělá. Nebude tedy mít možnost se opravit.
- Totéž, ale vykonavatel nebude nic říkat. Nemůže se zeptat „Jak přesně to myslíš, přehnout papír na polovinu?“ Nemůže protestovat „Papír ve tvaru trojúhelníku ale přece nemůžu přehnout podél nejdelší úhlopříčky!“ Buď je nějaká možnost pokračovat, pak pokračujeme, nebo není, a postup selhal.
- Postupně přerušujeme komunikaci. Asi jste poznali, že teď už jsme vlastně blízko té skvělé možnosti: Zadavatel napíše postup na papír, vykonavatel ho vykoná. Zadavatel má přestávku. Právě proto je ta možnost skvělá. Napsaný postup můžeme libovolně zkopírovat a znásobit tak výrobu papírových čepic, a zadavatel už přitom může přemýšlet nad něčím úplně jiným.
Žáci hru často pojmou dost vážně, někdy až osobně. V takové situaci nemá smysl rovnou řešit algoritmy. Je nutno uvolnit, co žáky nejvíc tlačí, např. pomocí otázek:
- Jak jste se během práce cítili? Proč?
- Která role komu (ne)vyhovovala? Proč?
- Co bylo příčinou obtíží? (Nikoliv „kdo“, odpověď na takovou otázku k ničemu není.)
Co se během aktivity ukázalo? Přemýšlej:
- Jak se výsledek vykonavatele liší od záměru zadavatele?
- Co bylo těžké, co bylo lehké? Proč?
- Které postupy se osvědčily? Které obraty a formulace se osvědčily?
- Mluvíme všichni stejnou češtinou?
- Čím se (ne)liší výsledky ostatních dvojic, proč?
- Na co se vůbec můžu při komunikaci s druhým spolehnout, a na co ne? Která vyjádření jsou spolehlivá, která naopak ne?
- Co dělat, když má nějaká instrukce víc možných výsledků?
- Co dělat, když vykonavatel „neposlouchá“?
- Jaké podmínky musí splňovat popis pracovního postupu, aby byl spolehlivě proveditelný bez přemýšlení?
U těchto úkolů nebylo tak těžké vymyslet postup, obtížné bylo ho popsat. To je úplně první krok k ovládnutí algoritmizace. Obvykle je situace o to složitější, že není hned jasný ani postup, který bychom měli uplatnit (natož dobrý postup, ale o tom až později.
Cílová situace: člověk si zapamatuje tvůj návod, vezme do ruky provaz, třeba někde uprostřed, postaví se ke kůlu, zavře oči… a pak už záleží na tom, jak dobře je napsaný ten návod.
- Bude se vázat kolem pevného kůlu (např. stromu). Uzel tedy nelze umotat a navléct, je třeba ho opravdu uvázat.
- Předpokládej, že máš kůl dost tenký a není třeba obcházet, že máš dostatek provazu a můžeš použít dvě ruce.
- Na konci by nikdo neměl skončit přivázaný ke kůlu.
- Na variantě lodní smyčky (shora zdola, zprava, zleva...) nezáleží.
- Kdo neumí vázat lodní smyčku, na chvíli se zastydí, a pak si to zjistí.
- Zkus si to aspoň s provázkem a nohou stolu a při psaní průběžně ověřuj, jak ti návod funguje.
- Vyměňte si ve dvojici návod na lodní smyčku.
- Získaný návod podrobně prozkoumej a otestuj.
- Zhodnoť, jestli lze návod opravdu spolehlivě a bezmyšlenkovitě realizovat nebo ne, a vysvětli proč tomu tak je. Jak by šlo návod vylepšit?
- Podívej se na další návody a zkus zobecnit: Čím se odlišují lepší a horší návody?
Osvědčilo se vzájemné hodnocení zorganizovat poněkud sofistikovaněji, jako dvojitě slepé recenzní řízení. Každý hodnotí tři práce, nikdo (kromě učitele) neví čí, a nikdo neví, kým je hodnocena jeho práce. Předání prací probíhá elektronicky prostřednictvím školního LMS (odevzdat, pojmenovat soubory, rozdělit mezi hodnotitele, shromáždit hodnocení, poskytnout správná hodnocení správným autorům návodům). Příště zkusíme využít nástroj [CrowdGrader], který jsme objevili až později.
Vzniklá hodnocení posloužila jako podklad pro skutečné hodnocení žáků. Za tímto účelem (a také jako ulehčení práce hodnotitelům) je vhodné stanovit kritéria a jejich bodové hodnocení. Žáci tato kritéria a způsob hodnocení (např. se jejich známka se bude odvíjet od průměru hodnocení tří spolužáků) znají předem. Kritéria odpovídají úkolu a znalostem žáků (vč. zkušeností získaných předchozí aktivitou). Na začátku tedy posuzují, jestli je postup srozumitelný, jestli vůbec vede k výsledku atp. Pokud podobný způsob vzájemného hodnocení použijeme i na pozdější práce, kde kritéria přibudou (splnění vlastností algoritmu, splnění pravidel pro slovní popis pracovního postupu).
Na pečlivé zhodnocení tři postupů je potřeba dostatek času, velmi se hodí práci nechat jako domácí. Získáme tím trochu času na přípravu celého procesu hodnocení a další hodina na hodnocení postupů vhodně navazuje. V rámci zadání takového domácího úkolu je na místě předvést hodnocení na příkladu (především konkrétní formulace a identifikace problémových míst).
Náměty na další úkoly
Následující náměty slouží k inspiraci a procvičování tvorby postupů (není nutné udělat všechno!). Nejlepší je zkusit z každé oblasti něco. Pokud pracuješ ve skupině, práci si rozdělte, ať se můžeš podívat na řešení více úloh.
- Papírových skládanek (origami) či uzlů k vázání je samozřejmě celá řada. S vázáním souvisí i splétání copánků (a pomlázek), drhání (macramé) a odtud už je jen kousek k háčkování a pletení. Takže: jaký je postup?
- Náměty nabízí běžný život:
- Jak nasadíš spadlý řetěz, jak vyměníš prasklou duši jízdního kola? Jaké předpoklady musí být splněny před započetím práce, jaké potřebuješ vybavení? Liší se situace u předního a zadního kola, nebo lze návod napsat obecně? Pro jaká kola nebode fungovat vůbec a bude třeba jej přizpůsobit?
- Klasickou oblastí je příprava jídel podle receptu. Co umíš uvařit?
- Návodů je plná první pomoc. Které z nich dovedeš správně zformulovat? Proč jsou návody v první pomoci tak důležité?
- Návody slouží ke správě (a opravám) digitální techniky. Jak se připojit ke školní wifi? Jak aktualizovat operační systém? Jak nainstalovat?
- Připomeň si naše předchozí témata:
- Napiš návod na hádání čísel, na hádání data narození s nerovnoměrným rozložením
- Zkus návod na převádění mezi číselnými soustavami — desítkovou, dvojkovou, šestnáctkovou, osmičkovou… pak můžeš zkusit postup zobecnit (zadáním je zápis čísla a výchozí a cílová soustava), přidat „desetinná“V ostatních soustavách čárka neodděluje desetiny, nýbrž poloviny, šestnáctiny atd. Kdo chce mluvit obecně a zároveň přesně, říká „řádová čárka“. místa.
- Mezi další klasické informatické úlohy patří:
- Hledání největšího čísla v posloupnosti čísel
- Řazení posloupnosti čísel podle velikosti
- Množinové operace s posloupnostmi čísel (průnik, sjednocení…)
- Hledání slova ve slovníku (seřazeném seznamu slov)
- Obrovské množství námětů poskytuje matematika. Výhoda je, že se při snaze správně zformulovat postupy můžeš použité matematice lépe porozumět.
- Dostaneš číslo napsané v desítkové soustavě. Jakým postupem získáš číslo o jedničku vyšší? Co (jednoduššího) je k tomu nutno znát či umět?
- Zamysli se i nad dalšími zdánlivě jednoduchými úkony, o kterých si myslíš, že je dokonale znáš: Ověření rovnosti dvou čísel, porovnání velikosti dvou čísel, základní matematické operace…
- Písemné počítání: sčítání, odčítání, násobení, dělení.
- Zjištění dělitelnosti čísla jiným číslem. Rozklad na prvočinitele. Nalezení všech dělitelů. Nalezení největšího společného dělitele, nejmenšího společného násobku. Zjištění, jestli je dané číslo prvočíslem.
- Počítání s mnohočleny, zlomky, vektory, komplexními číslyJestli ti to nic neříká, tak teprve budete probírat. Těš se, naučíš se odmocňovat záporná čísla!…
- Cokoliv z předchozího, ale ve dvojkové soustavě. Nebo jiné soustavě. Nebo libovolné soustavě.
- Vyhodnocení aritmetického výrazu — to také jistě dobře zvládáš, tak nebude těžké popsat, jak to vlastně děláš, že?
- Nezapomeň na geometrii: Sestrojení osy úsečky a úhlu, kolmice, rovnoběžky, trojúhelníku o daných délkách stran, výšek či těžnic, kružnice vepsané a ostatních, jiné mnohoúhelníky…
- Měli už jste stereometrii? Šel by napsat návod na sestrojení řezu krychle?
- Zkus se poohlédnout i po jiných školních předmětech. Které úlohy lze řešit algoritmicky, tedy pomocí jednoznačného postupu? Vyčíslení chemické rovnice? Určování oxidačních čísel? Převody chemických názvů na vzorce a zpět? Převody jednotek? Zjištění pravděpodobné zemědělské a průmyslové výroby dané oblasti s pomocí atlasu? Interpretace literárního díla? Větný rozbor? Pravopis, např. kontrola správnosti diktátu? Které úkoly si myslíš, že jdou, a které ne, a proč? Jaký je mezi nimi rozdíl? Těmito otázkami se budeme zabývat v následujících kapitolách. Jsou důležité, protože pokud je něco algoritmicky neřešitelné, bude to nakonec vždy muset řešit živý člověk, a nikdy nebude jisté, jestli to vyřeší.
Kromě slovního návodu můžeš vyzkoušet také tvorbu návodu s pomocí obrázků, fotografií či tvorbu videonávodu. Taková práce jde snáz ve dvou.