scieee AI-readable full text Open interactive document viewer

Hodnotící zpráva předmětu Základy algoritmizace 2023 – 2025

Radek Matoušek

Abstract

Seminář s novým harmonogramem vznikl v roce 2023 s cílem připravit studenty pro zvládnutí navazujících předmětů. Průběžné výsledky byly vyhodnocovány, a mohly tak posloužit k sestavení závěrečné hodnotící zprávy. Zpráva ukazuje způsob vedení výuky, který byl aplikován, a předkládá závěry plynoucí z analýzy, které by měly vést ke zlepšení standardu výuky.

Full text

Hodnotící zpráva předmětu Základy algoritmizace 2023 – 2025 Radek Matoušek (vyučující) 10.11.2025 Abstrakt Motivací k sepsání práce nebylo nic jiného, než úvaha nad tím, kam až je možné se snižováním nároků na studenty zajít, a co se s tím dá dělat. V úvahách byly použity teorie z didaktiky, jako je revidovaná Bloomova taxonomie, procedurální dovednosti a konceptuální porozumění. Po zavedení zmíněných pojmů byla tříletá výuka předmětu podrobena strukturovanému analytickému zkoumání s cílem najít příčiny problémů, které se objevily. Po analýze byla stanovena řešení, která by mohla kvalitu výuky zlepšit. Prolog Nejsem sice vystudovaný pedagog, intenzivně se ale v této oblasti vzdělávám po celou dobu co učím. Tato práce je druhá, kterou píši (a publikuji) po té, která byla potřeba ke splnění pedagogického minima – práce kterou jsem napsal s názvem Neurodiverzita na střední škole pojednávala o odlišném způsobu myšlení neurodivergentních lidí. Většinou píši na toto téma jen tehdy, pokud cítím nějakou potřebu něco sdělit. Myslím, že je fér to na začátek uvést, protože existuje řada větších odborníků, kteří by mohli na toto téma psát fundovanější práce. Nicméně si uvědomuji, že se jedná o multioborovou záležitost a odborníků, kteří by se odvážili nebývá mnoho. Vedle výuky na střední škole mám zkušenost s výukou i na škole vysoké, kde v současné době učím první ročníky. Mám také mnoho let praxe v komerční sféře s řadou realizovaných mezinárodních projektů v oblasti vývoje a vytváření finálních prototypů. Díky tomu bych měl být schopen posoudit, co je vhodné učit, a co se učí jen proto, že se to dobře zkouší. Vím leccos o zranitelnosti současné generace Z a na školách jsem se také konečně naučil, co se má učit, aby si studenti moc nestěžovali (dále vyplývá ze zprávy). Při výuce mám vždy na paměti vrcholy takového trojúhelníka a snažím se držet vhodnou rovnováhu. Jakmile vyvstala potřeba učit předmět Základy algoritmizace inovativněji, chvíli jsem váhal, ale pak jsem tuto nabídku přijal jako výzvu. Uvědomoval jsem si, že ve větší míře než uplatnění odborných znalostí, bude potřeba pedagogiky, ve které jsem předchozí roky získal dobrou průpravu na střední škole.1 1Zároveň jsem měl i zkušenost z výuky algoritmizace na jiné vysoké škole před tím. 2 Obsah 1Nezbytnáteorievkostce....................................4 2Rok2023............................................5 3Vstupnídotazník .......................................5 4Modelvýuky..........................................6 5Systémtvorbytestovýchotázek................................7 6Harmonogram .........................................8 7Úvoddoprvnípolovinysemestru...............................9 8Úvoddodruhépolovinysemestru...............................9 8.1 Ukázka průběhu první hodiny z druhé poloviny semestru . . . . . . . . . . . . . . . 10 9Hodnocení průběhu semináře studenty . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 10 Výsledkyzápočtovýchtestů.................................15 11 Zkouška............................................17 11.1 Slovníúlohy........................................17 12 Úspěšnostzvládnutípředmětu ...............................20 13 Hodnocení předmětu studenty po zkouškovém období . . . . . . . . . . . . . . . . . . . 20 14 Hledánípříčinapokusonápravu..............................20 15 Diskuse............................................21 15.1 Přednáškaacvičení....................................21 15.2 SeminářZákladyalgoritmizace..............................22 15.3 Středoškolskávýuka ...................................23 15.4 Sociálníklimaškoly....................................23 16 Závěr.............................................24 17 Literatura ..........................................25 3 1 Nezbytná teorie v kostce Revidovaná Bloomova taxonomie rozšiřuje osu kognitivních procesů2o druhou osu, která se nazývá dimenze znalostí. Kognitivní procesy totiž fungují integrovaným a dynamickým způsobem, často vědomě i nevědomě, aby umožnily cílené chování a přizpůsobení se novým situacím. Zkratkou lze popsat tři druhy znalostí podle zapamatování (uložení informací) krátce jako co,proč ajak. Čtvrtý typ je nazýván myšlení o myšlení a představuje sebeuvědomění procesů, které k zapamatování vedou, například pokud si je student vědom, jaké způsoby učení mu nejvíce vyhovují a posouvají ho dále. Někdy se tato osa označuje šipkou od konkrétního k více abstraktnímu porozumění. Vyšší úrovně představují více abstraktní způsob uložení znalostí. To může člověku přinášet výhody, protože si snáze dokáže osvojovat dosud neznámé základy tak, že na jejich naučení aplikuje například podobný již naučený vzorec. Čím větší prožitek se podaří vyvolat, tím dojde k hustějšímu propojení mezi neurony.3Analogicky k ose znalostí – čím více úrovní se dokáže aktivovat (na ose znalostí) během ukládání, tím efektivnější je učící proces. Například při výkladu si student dělá poznámky a k tomu si poznamenává vlastní myšlenky, které ho napadají, na které se na závěr v diskusi zeptá, aby si ještě ověřil jejich pravdivost. Z toho samozřejmě student bude profitovat hned při výuce navazující látky – půjde mu to snadněji, protože mnohé vazby už jsou vytvořené a budou se jen rozšiřovat. Jedná se o vědomý proces studenta, který ví, že se mu větší námaha vyplatí. Takto připravený student – mnohdy aniž by si to uvědomoval4– již používá metakognici (myšlení o myšlení) na velmi dobré úrovni a jen se v učení ještě více zdokonaluje. Podle toho, jak je výuka připravena, má různou schopnost vzbudit ve studentech proces zapamatování. Například pouhé hbité předkládání faktů nepřinutí většinu studentů k tomu, aby jakkoliv svými vlastními myšlenkami obohatili svůj proces ukládání o nějaké souvislosti. Student bude sotva stačit zapisovat poznámky a k učení možná usedne až doma. Pro aktivování vyšších úrovní je hodina připravena tak, aby studenti mohli v myšlenkách spolupracovat – pokládat si otázky a hledat na ně odpovědi. Aby něco takového fungovalo, musí být studenti na patřičnou hodinu připraveni stejně jako vyučující. Pokud vyučující dokáže své studenty zaujmout výkladem potřebné látky, je to vždy velká výhra.5 Dobře fungující proces učení je o dobré připravenosti obou stran. Je známo, že u lidí, kteří mají úzkosti, deprese, poruchy spánku, či jiné psychické potíže, dochází k méně efektivnímu ukládání znalostí. Nejméně je totiž náročný je proces zapamatování faktů, pojmenovaný zkratkou co. Dobrá psychická kondice je tak pro studenta důležitá, pokud stojí o předání znalostí, které mu dobrá škola může poskytnout. Student s energetickým nápojem často nebývá tím, kdo by byl nejlépe připravený na proces učení a většinou i jeho očekávání nebývají naplněna. Drobné nuance výuky nebývá jeho mozek schopen přenést a od učitele očekává šou, která by jej vzpružila při zvýšení hladiny dopaminu.6 Zapomínat by se nemělo na takzvaně neurodivergentní studenty7, kteří mohou mít některé způsoby ukládání znalostí výrazně slabší a jiné naopak výrazně silnější. Například mohou mít 2Kognitivní procesy jsou mentální činnosti spojené se získáváním, zpracováním, ukládáním a využíváním informací k porozumění světu a interakci s ním. 3Toho bývá zneužíváno například pro reklamu nebo šíření dezinformací, kdy se šíří jednoduché snadno uchopitelné fráze. 4Protože ze v tom už od základní školy jen zdokonaluje. 5Záměrně zmiňuji výkladem látky, protože zaujmout se dá i jinak, třeba vyprávěním o něčem zajímavém. To má být náplní maximálně první hodiny, které se říká motivační. 6Často se mu říká „hormon štěstí“ nebo „hormon motivace“ a hraje klíčovou roli v pocitu uspokojení a v odměňovacím systému mozku. 7Jedná se o popisný termín, který se používá pro označení jedinců, jejichž mozek funguje způsobem, který se významně odchyluje od převládajících společenských standardů „normality“. 4 problém se zapamatováním faktických znalostí pokud nejsou zasazeny to kontextu, příběhu nebo vizuálního obrazu, nebo naopak mohou být velmi dobří v zapamatování faktů, ale nemají schopnost širšího rozhledu v konceptuálních znalostech8pojmenovaných zkratkou why, nebo mohou mít velmi dobrou schopnost uchování konceptuálních znalostí, ale pouze v konkrétní oblasti zájmu aj. Spektrum různých úrovní zde může mít mnoho kombinací, přičemž mnohé dosud nepředpokládané možnosti jsou objevovány teprve v posledních letech. Například metakognice u lidí s autismem se vzhledem k potížím s ToM (Theory Of Mind) předpokládala být špatná, nové studie ale ukazují, že tomu může být v určitých oblastech naopak (Ordin, Barbarroja, Polyanskaya, Manrique, Castelo-Branco, 2025). U širší populace je proces učení lineární (na ose kognitivních procesů Bloomova taxonomie) – při učení ve škole dochází často nejprve k pamatování, pak porozumění až nejvyšší úrovňí je tvořivost. Linearita přitom neplatí u neurodivergentních lidí, proto jim často klasický způsob výuky nevyhovuje. Například při problému vyšších exekutivních funkcí (plánování, organizace, pracovní paměť) mohou být vyšší procesy obtížnězvládnutelné klasickým způsobem. Revidovaná taxonomie se zaměřuje na kognitivní dovednosti, ale opomíjí, že neurodiverzní studenti mohou mít potíže s projevem svého učení (např. ústní prezentace, psaní eseje), i když kognitivně úkol zvládají. Je proto klíčové nabízet alternativní způsoby hodnocení. 2 Rok 2023 Psal se rok 2023, kdy jsem začal s výukou předmětu Základy algoritmizace s obměněným harmonogramem výuky. Po roce od mého nástupu jsem stačit nasát sociální klima školy9, poznat složení studentů i to, z jakých škol přicházejí. Upustil jsem od mnohých zažitých zvyklostí a přehnaných očekávání, a pochopil mnoho nových principů jak funguje vysoká škola. Tušil jsem, že většina studentů nebude mít vůbec žádné základy z programování nebo algoritmizace ze střední školy. To se také potvrdilo. Zmíněný rok byl navíc specifický tím, že nastoupilo větší množství studentů z Ukrajiny, kde se ve většině případech k nulovým znalostem přidala kulturní specifika a jejich obtížná životní situace. Bylo zřejmé, že mnoho z nich si nese větší či menší trauma, která překonávají spolu s těžkou životní situací. Přitom statut studenta byl pro mnohé výraznou pomocí. Ač se nám jejich přístup nemusel líbit, bylo třeba si jejich těžkou situaci představit a brát je s respektem, i přesto, že to nebylo vždy jednoduché. Někteří z těchto studentů neměli prakticky žádnou motivaci ke studiu a pokud už chodili na semináře, tak péče, která jim byla věnována, nepřinášela žádný výsledek. Někteří si zapisovali předmět vícekrát, protože museli studovat od prvního ročníku znovu. Další roky už bylo jasné, že priority těchto studentů jsou jiné. Do oboru Informační technologie se na povinný seminář prvního ročníku zapsalo přibližně 100 studentů (vyjma takzvaných mrtvých duší). Semináře byly rozděleny po přibližně dvaceti členných skupinách studentů a byly vedeny v počítačových učebnách. 3 Vstupní dotazník V předmětu Základy algoritmizace bylo na základě předloženého krátkého dotazníku zjištěno rozdělení na tři přibližně stejně velké kategorie studentů: začínající,mírně pokročilý,pokročilý. Začínající studenti v dotazníku zaškrtli zamítavé odpovědi na otázky. 8Konceptuální porozumění se týká hlubokého, na vztazích bohatého pochopení jednotlivých pojmů, myšlenek nebo témat. 9Sociální klima školy je soubor stálých vjemů, prožitků, hodnocení a reakcí všech aktérů (žáků, učitelů, personálu) na dění ve škole. Je to dlouhodobá atmosféra a pocit, který škola vytváří, ovlivňuje ji specifika školy, učitelů i samotných žáků. 5 •Máte zkušenost s programováním a algoritmizací ze střední školy? •Je programování váš koníček, programujete doma? Naproti tomu středně pokročilí studenti museli na předchozí otázky odpovědět kladně. Kromě toho museli (středně pokročilí) zaškrtnout kladnou odpověď alespoň na dvě následující otázky ze tří. •Víte, co je větvení programu? •Víte, co je smyčka nebo zacyklení v programu? •Víte, co je pole a jak se s ním pracuje? Pokročilí studenti museli zodpovědět kladně všechny tři předchozí otázky a museli zaškrtnout potvrzující odpověď alespoň na dvě z následujících tří otázek. •Víte, co je třídící (nebo také řadící) algoritmus a k čemu se používá? •Víte, jaký je rozdíl mezi strukturovaným datovým typem pole a spojovým seznamem? •Víte, co znamená architektura MVC? K otázce, „Na jakou úroveň se cítíte?“, mohlo být odpovězeno •začátečník (jen jednoduché programy do 50 řádek zdrojového kódu), •středně pokročilý, •pokročilý. V tomto případě byl testován soulad či nesoulad vlastního hodnocení s předchozími odpověďmi. V případě nesouladu byly předchozí odpovědi brány u začínajících a středně pokročilých méně vážně. Dále bylo v dotazníku zjišťováno, jestli studenti znají vývojové diagramy, a v navazující otázce, jak studentům pomáhají k pochopení problému. Odpověď byla zamítavá často u začínajících studentů. Cílem bylo získat hrubý přehled hlavně o začínajících studentech. Na seminářích se pak ukázalo, že skupina začínajících byla ve skutečnosti větší a skupina pokročilých naopak menší. Studenti, kteří mají základy z programování odhadují často své schopnosti výše. Někteří „pokročilí“ studenti bývají pak zklamáni, že neuplatní v předmětu algoritmizace své dovednosti z programování tak, jak si představovali. 4 Model výuky Vzhledem k vysoké diverzitě znalostí studentů se zdálo být vhodné aplikovat adaptivní způsob výuky. Po promyšlení všech pro a proti tradičního modelu byla výuka nastavena jako kombinace adaptivního, procedurálního10 a konceptuálního11 modelu pro jehož možnou aplikaci musely být nejprve v první polovině semestru položeny základy u studentů, kteří začínají s nulovými znalostmi, aby podle paradigmatu konceptuálního modelu mohla být vedena výuka bohatá na relace. Adaptivní výuka představuje technicky náročný úkol, který se nedá zvládnout za jeden rok. V této oblasti se nám již podařilo vyvinout několik nástrojů, které práci výrazně usnadňují. Další 10 Procedurální model je způsob, jak lze popisovat realitu pomocí postupnosti kroků (procedur), které se vykonávají, aby se dosáhlo určitého cíle. 11 Všechny náměty na cvičení by měly vést k přemýšlení nad tím, jak od jednotlivých pojmů dojdeme k vysvětlení obecně platných zákonitostí, které jsou prezentovány očekávanými výstupy. 6 projekty, které by nám umožnily náš technický arzenál pro automatické vyhodnocování úkolů rozšířit, máme v plánu.12 Jednoduchá SWOT analýza dává představu o výhodách a úskalích, kterých jsme si byli vědomi v našem prostředí. Silné stránky, •každý si může své tempo učení a ověřování znalostí volit podle potřeb, •studenti se učí metakognici – samostatnému uvažování o svých potřebách učení, •pozitivní dopad na růst studenta – již pokročilí studenti si mohou kurzem projít sami ve zkráceném čase a neztrácet čas. Slabé stránky, •při procházení ověřovacích testů z domova mohou mít studenti problém s opravou chyb a hrozí sdílení odpovědí přes sociální sítě, •provádění testů na seminářích individuálně podle svých znalosti by narušovalo výklad nebo ubíralo čas, který studenti mohou věnovat procvičování, •náročná příprava pro vyučujícího – velké množství vytvořených variant testů, individuální přístup, omezený počet vhodných testovacích zadání. Hrozby, •někteří studenti přecení své schopnosti a nebudou chodit na semináře v domnění, že látce rozumí, •studenti budou používat automatické testy k memorování v domnění, že jim to bude stačit, •v případě úspěchu prvního zápočtového testu mohou studenti snadno nabýt iluzorní představu dobré úrovni jejich znalostí. Příležitosti, •pokud dokáží studenti dorovnat úroveň základních znalostí ve třídě individuálně, může se vyučující věnovat řešení zajímavějším příkladům, •plugin Virtual Programming Lab v systému Moodle dovolí začlenit do testů programovací úkoly. Adaptivní model byl zatím aplikován jen v tom smyslu, že již zkušení studenti mohou v systému Moodle sami projít vyřešené příklady, které se na semináři za týden udělaly a ověřit si své znalosti. Sami pak zváží zdali mají na další seminář přijít či nikoliv.13 Předpokládá se, že adaptivní model se bude dále vylepšovat a poskytovat studentům více výhod s tím, jak bude růst množství připravených příkladů a otázek. 5 Systém tvorby testových otázek Pro potřebu velkého množství testových otázek byl vytvořen jednoduchý metajazyk, který umožňuje otázky generovat na základě vytvořené vzoru v množství variant. Přičemž chybné odpovědi nejsou jen náhodně vygenerované, ale obsahují chybné odpovědi na základě špatného (často) nesprávně pochopeného algoritmu. Následující ukázka testové otázky (obtížnější) je z prvního 12 Nejraději bychom byly, pokud by se jich zvládli ujmout talentovaní studenti. 13 Docházka je silně doporučena jen začínajícím studentům. 7 testu a má prověřit znalost zbytku celočíselného dělení, procházení pole pomocí indexové notace a pochopení vytváření řady podobné jako u probírané Fibonacciho posloupnosti s ukládáním do pole. Co se vytiskne po vykonání následujícího kódu? int arr[8]; arr[0]=1; arr[1]=4%8; for (int i = 2; i < 8; i++) { arr[i] = arr[i-1] + arr[i-2]; } int j = 2; while (j<=6) { cout << arr[j] << " "; j++; } Vyberte jednu z nabízených možností. 145914 5 8 12 20 32 4591423 11235 nic se nevytiskne 8 14 22 38 62 5 9 14 23 37 14591423 6 Harmonogram Harmonogram seminářů vznikal v prvním roce postupně na základě zpětné vazby od studentů během každé hodiny. Zejména v první polovině, pokud se ukázaly být ambice příliš vysoké, přidaly se příklady na zopakování příští hodinu. Zvládnutí první poloviny semestru je totiž u začínajících studentů klíčové pro porozumění příkladů z druhé půlky. Příklady jsou většinou standardní – prověřené jako vhodné pro výuku základů algoritmizace. Experimentování se ve většině případech nesetkává s dobrým výsledkem. •Seminář 1. týden (vývojové diagramy) •Seminář 2. týden (základy syntaxe jazyka C/C++, větvení) •Seminář 3. týden (smyčky typu while) •Seminář 4. týden (break,continue, smyčka typu for afor-each) •Seminář 5. týden (další jednoduché algoritmy) •Seminář 6. týden (jednorozměrná statická pole) •Seminář 7. týden (test, nejčastější chyby, max/min hodnota pole) •Seminář 8. týden (algoritmy bubble sort,reverse,unique,insert sort) •Seminář 9. týden (selection sort, hledání prvku v poli, fronta FIFO) •Seminář 10. týden (zásobník LIFO, dvourozměrná pole, zapouzdření) •Seminář 11. týden (parametry funkcí, práce s řetězci, dynamické pole) •Seminář 12. týden (spojový seznam, binární strom) •Seminář 13. týden (test - při splnění podmínek udělení zápočtu) Ambice byly zpočátku větší, musely být ale na základě zpětné vazby během seminářů postupně snižovány. Potvrdilo by se jen pravidlo14, že nepřiměřený tlak na studenty vede často k rezignaci jejíž důsledkem je pouhé memorování pro splnění zkoušky. To vede k zamrznutí na nejnižším stupni znalostí.15 14 Ověřené v jiných předmětech. 15 Studenti dosáhnou jen nejnižší možnou úroveň znalostí, tzv. deklarativní (někdy také faktické) znalosti. 8 7 Úvod do první poloviny semestru První polovina semestru je věnována naprostým základům. Výuka je zaměřena na rozvoj procedurálních dovedností16 – naučení potřebné syntaxe a její automatické používání pro složitější úlohy. Na seminářích je probráno přes 30 příkladů, na kterých jsou naučeny všechny základní principy a vysvětleny ty nejjednodušší algoritmy. Každý příklad je nejprve zadán jako slovní úloha, ke které jsou vysvětleny potřebné náležitosti – vztahy, vzorce, typy proměnných aj. Studenti jsou obcházeni a pokud jsou na dobré cestě k vyřešení, jen potřebují pomoc s nějakým problémem, vyučující pomůže problém odstranit. Ostatní jsou ponecháni ještě chvíli v procesu přemýšlení. Po přiměřené době je rozkreslen na tabuli vývojový diagram a stejné kolečko kontroly provedeno ještě jednou. Na seminářích se tímto studenti učí propojovat vizuální myšlenkovou mapu v podobě vývojového diagramu a přepisovat ji do zdrojového kódu. Na závěr je zdrojový kód promítnut vedle nakresleného vývojového diagramu a je poukázáno na důležité části. První polovina semestru končí procházením polí, vyhledáváním různých hodnot a naplnění pole Fibonacciho posloupností. Studenti už by měli například samostatně zvládnou vymyslet a naprogramovat algoritmus na převod čísla z desítkové soustavy do dvojkové. Přitom, pro správné pořadí bitů, použít ukládání do pole a vytisknout výsledek ve správném pořadí s vloženými mezerami po čtveřici bitů a zarovnáním na celé bajty.17 Zvládnutí první části si studenti ověří v prvním testu, který je povinný. Nízké doporučené skóre bylo nastaveno záměrně motivačně na 50 %. Pár studentů po testu obvykle ještě přehodnotí svoji chybně odhadnutou úroveň znalostí a rozhodnou se na nepovinné semináře docházet a věnovat jim více času. Někteří si podle dobrého výsledku z jednoduchého testu udělají představu o zbylé části semináře, a pak bývají zklamaní u testu druhého a u zkoušky.18 8 Úvod do druhé poloviny semestru Potvrdilo se, že studenti, kteří získali známku z prvního testu na spodní hraně, mají v druhé půlce už značné problémy. Studentům už také není na semináři pomáháno, z časových důvodů, s problémy, které mají mít zvládnuté z první půlky, a jsou odkázáni na procvičované příklady případně na příklady z knihy Algoritmizace (Pšenčíková, 2009). Respektive rozsáhlejší pomoc se jim dostane možná ve zbylém čase, přednost mají studenti, kteří řeší problémy z aktuální hodiny. Průběh seminářů druhé části probíhá podobně. Jsou probírány složitější algoritmy, které vyžadují více času pro vysvětlení principu. Vývojových diagramů postupně ubývá – kreslí se jen tam, kde je to užitečné, například pokud je vysvětlován nový princip. Dostává se tak více času na vyřešení slovní úlohy podle zadání. Studenti se snaží více porozumět strukturám algoritmů a vzájemným souvislostem, rozvíjí se konceptuální porozumění. Tři úrovně porozumění popisuje Krathwohl (Krathwohl, 2002), na jejichž základě jsme odvodili vlastnosti pro problémy, které se řeší v předmětech algoritmizace: •znalosti klasifikací – spíše izolované povědomí o algoritmech a jejich vlastnostech, •znalosti struktur – schopnost vnímat vlastnosti algoritmů – porovnávat je, třídit, vhodně používat, vybírat lepší, apod. •znalost principů – schopnost rozpoznat příležitosti pro aplikace algoritmů, pravidel a zákonitostí, tj. vytvářet vlastní modifikované algoritmy na míru podle potřeby, vhodně spojovat již existující aj. 16 Zautomatizování základních návyků a dovedností na jednoduchých algoritmech. 17 První rok byly ambice vyšší, ale musely být sníženy. 18 Proto je v plánu udělat příští rok tento test o něco náročnější. 9 𝑁117 𝜇[%] 68.7 𝜎[%] 20.9 𝑄1−3 66 studentů < 50% 24 ≥ 50 % 93 zápočet v řád. termínu 79,5% 𝑁104 𝜇[%] 58.3 𝜎[%] 19.6 𝑄1−3 68 studentů < 50% 38 ≥ 50 % 66 zápočet v řád. termínu 63,5% 𝑁103 𝜇[%] 64.9 𝜎[%] 16.5 𝑄1−3 69 studentů < 50 % 21 ≥ 50 % 82 zápočet v řád. termínu 80% Studenti, kteří neuspěli v řádném termínu měli možnost opravy v opravných testech (bývají tři), kde se kombinují otázky z obou testů a student musí dosáhnout skóre lepší než 60 %. 16 11 Zkouška Zkouška se skládá ze vstupní části, kterou je opět test ze stejné databanky jako všechny doposud předkládané, jen je potřeba dosáhnout vyšší minimální skóre 60 %. Na testu mohou ti, kteří získali zápočet s velkým štěstím ještě vypadnout. Zároveň je to pro studenty opakovaní hlavně faktických či procedurálních znalostí, které jsou pro některé studenty pro zvládnutí studia zřejmě klíčové. Pro mnohé test na začátku zkoušky není problém a může jim jen vylepšit známku ze druhé části, která je náročnější.21 Druhá část zkoušky tvoří vyřešení problému, který je zadán slovní úlohou – způsob, který byl se studenty nacvičován od začátku. Jen u zkoušky se nejedná o dílčí malý úkol, ale již komplexnější řešení, který mnohem více odpovídá reálnému problému. Ve druhé části zkoušky studenti musejí prokázat vyšší schopnost konceptuálního porozumění (schopnost najít analyticky řešení) a k tomu uplatnit procedurální dovednosti (vytvořit funkční program). Někteří byli schopni uspět hned na první pokus, protože přípravu nepodcenili. Jiní byli nuceni opakovat a k samostudiu byli tak přinuceni. Zbylí se s náročností vůbec nechtěli smířit a onálepkovali předmět jako nepřiměřeně složitý. I přesto, že mnoho z nich ve výsledku zkoušku udělalo. Zkouška měla studentům dát hlavně zpětnou vazbu o tom, jak na seminářích pracovali a osvojili si potřebné logické myšlení. Ti, co neuspěli, většinou neuspěli z důvodu, že nevyužili všechny možné pokusy. – Píši v minulém čase, protože v dalším roce muselo být zkoušení zjednodušeno – v podstatě binarizováno na ověření procedurální dovedností (jasný počet bodů za splnění každé části) a s tím výrazně zjednodušeny zadávané slovní úlohy. 11.1 Slovní úlohy Na vysokých školách bývalo zvykem, že zkouška musí být o něco těžší než zápočet, aby se studenti ve zkouškovém obdobní ještě samostudiem zdokonalovali. Proto také slovní úlohy byly navrženy s takovou obtížností, aby se v nich promítlo další samostudium a zkoušení algoritmů doma. Pří tvorbě zadání slovních úloh bylo dodržováno několik zásad. Finální program musel obsahovat •práci s polem, sekvenční algoritmus nebo oboje (bez použití knihoven), •alespoň jedno zapouzdření uvnitř funkce s parametry, •řádně formátovaný textový výstup. Zadání muselo splňovat kritéria, •řešení reálného problému, se kterým se studenti na FEI mohou setkat, •realizovatelné pouze z příkladů probíraných na seminářích, •u kterých obtížnost dílčích algoritmů nesměla přesáhnout obtížnost algoritmů z doporučované knihy Algoritmizace (Pšenčíková, 2009), Vymyšlení takových příkladů, které by se nelišily moc svoji složitostí, byla výzva. Kdo se někdy něčím takovým zaobíral, velmi rychle zjistil, že vhodných příkladů je méně, než kolik by si přál mít. Pro první rok se tak podařilo vytvořit jen několik zadání. •Algoritmus pro výpočet exponenciální funkce s aplikací na přepočet zisku na zesílení •Algoritmus pro výpočet logaritmické funkce s aplikací na přepočet zesílení na zisk 21 Testy si studenti pochvalují, protože jim přijdou jednodušší. Mohou však procvičovat pouze nejnižší úroveň konceptuálního porozumění. 17 •Rotace bodu v Euklidovském prostoru okolo počátku •Rasterizace kružnice •Rasterizace úsečky •Převod z desítkové soustavy do šestnáctkové se správným zarovnáním a doplněním nul •Převod z desítkové soustavy do desítkové se správným zarovnáním a doplněním nul •Zacyklený kalkulátor pro výpočet třetí strany pravoúhlého trojúhelníka a seřazení podle velikosti přepony Všechna zadání s postupem jsou přibližně na jednu stránku A4. Při řešení problému mají studenti přístup na Moodle, kde najdou všechny probírané příklady. Pokud řešení obsahovalo alespoň záblesk možnosti na vyřešení, mohli studenti dostat nápovědu v podobě vývojového diagramu klíčové části algoritmu (známka se tím samozřejmě snížila).22 Čas na vyřešení byl víc než dostačující a v případě zřejmého potenciálu na zlepšení výsledku mohl student po ústní konzultaci ještě na práci dále pracovat, a dotáhnout ji až do fáze, kdy mohl dostat dobrou známku. Zadání první slovní úlohy bylo následující (úloha musela být později vyřazena). Algoritmus pro výpočet logaritmické funkce v aplikaci – přepočet zesílení na zisk Teoretická část Ze zesílení 𝐴lze vypočítat zisk 𝑎podle vzorce 𝑎 = 20 log 𝐴. Například zesílení dvakrát 𝐴 = 1, 995 (≈ 2) představuje hodnotu zisku 𝑎 = 6 𝑑𝐵, nebo naopak útlum na polovinu 𝐴 = 0, 501(≈ 1/2) představuje zisk −6 𝑑𝐵. Zadání Vytvořte program, který převede pole libovolných hodnot zesílení 𝐴na pole hodnot zisku 𝑎. Pro počítání logaritmické funkce je třeba navrhnout vlastní algoritmy (funkce ln() alog()), není možné použít knihovní funkce (reálně třeba na mikrokotroléru). Je zadané pole se zesílením 𝐴 // Pole s naměřenými hodnotami zesílení A[] double A[10]={40.33, 30.44, 20.88, 30.01, 10.62, 5.15, \ 2.91, 1.222, 0.533, 0.111}; Doporučený postup Výpočtem konvergentní řady lze získat přirozený logaritmus ln 𝑥 pro rozsah hodnot 𝑥∈(0,2⟩ ln 𝑥 = (𝑥 − 1) − 1 2(𝑥 − 1)2+1 3(𝑥 − 1)3−1 4(𝑥 − 1)4+ . . . 1 𝑁(𝑥 − 1)𝑁. Čím větší počet členů řada má, tím bude hodnota přesnější. Jednotlivé přičítané/odčítané členy představují stále menší hodnotu. Vytvoření řady s počtem 100 000 členů bude pro požadovanou přesnost dostačující. Správnou funkčnost algoritmu pro 𝑥∈(0,2⟩si můžete pro několik hodnot ověřit podle tabulky. TIP: Všimněte si, že k výpočtu nového členu lze využít hodnotu čitatele předchozího členu, který se jen vynásobí (𝑥 − 1). x 2 1,5 1 0,5 0,1 ln x 0,69315 0,40547 0 -0,69315 -2,30259 22 Větu píši v minulém čase, protože v dalším roce muselo být zkoušení zjednodušeno – v podstatě binarizováno na ověření procedurální dovedností (jasný počet bodů za splnění každé části) a s tím výrazně zjednodušeny zadávané slovní úlohy. 18 Pro větší čísla 𝑥se bohužel algoritmus nedá bez úpravy použít, chyba by byla příliš velká. Druhý krok proto představuje vylepšení algoritmu tak, aby byl algoritmus univerzální. Postup je následující, hodnota 𝑋větší než 2 se nechá rozložit na číslo 2𝑛, tedy nějaké číslo z řady přirozených čísel 𝑚∈⟨1,2,4,8,16,32,. . . ) vynásobené hodnotou 𝑥v rozsahu 𝑋∈(0,2⟩, platí tedy 𝑋 = 𝑥 ⋅ 𝑚 = 𝑥 ⋅ 2𝑛. Je potřeba najít nejbližší číslo 𝑚v řadě čísel 2𝑛, které bude nejblíže hodnotě 𝑥. Pak úpravou předchozí rovnice snadno vypočteme 𝑥 𝑥 = 𝑋 𝑚=𝑋 2𝑛. Rozklad se nechá snadno logaritmovat a dostaneme ln 𝑋 = ln 𝑥 + 𝑛 ⋅ ln 2, ln 2 = 0.693147 kde hodnoty 𝑛a𝑥v proměnných jsme si dokázali nalézt algoritmem při hledání nejbližšího čísla 2𝑛, stačí tedy 𝑛a vypočtené 𝑥dosadit. Funkčnost si lze ověřit podle hodnot v tabulce. X 100 50 10 8 3 ln X 4,60517 3,91202 2,30259 2,07944 1,09861 Jakmile je algoritmus pro výpočet přirozeného logaritmu libovolného čísla ln 𝑋 funkční, je možné vypočítat dekadický logaritmus log 𝑋 pouhým vydělením konstantou 2,3, protože platí 𝑙𝑜𝑔 𝑋 = 𝑙𝑛 𝑋 𝑙𝑛 10, 𝑙𝑛 10 = 2.3 Zbývá už jen přepočítat hodnoty zesílení v poli 𝐴podle vzorce 𝑎 = 20 log 𝐴 a nové pole hodnot vytisknout. Požadovaná úroveň abstrakce Tři algoritmy, první pro výpočet funkce ln 𝑋, druhý pro výpočet log 𝑥 a třetí pro výpočet prvků, který současně vytiskne prvky na terminál. Všechny algoritmy by měly být zapouzdřeny ve funkcích a volány s patřičnými parametry v hlavní funkci main(). Požadavky na výstupní formát Formát bude odpovídat formátu v ukázce dále. Pole libovolných hodnot 𝐴se vytiskne v levém sloupci a pole s převedenými hodnotami 𝑎v pravém sloupci (oddělení alespoň jednou mezerou). Velmi malé hodnoty blízké nule (například 2.67601𝑒 − 06) pro lepší čitelnost nulujte. (TIP: if(abs(a) < 0.000001) a = 0;) Tabulka zesílení a zisku v decibelech A[] a[dB] -------------- 40.33 32.1126 30.44 29.6689 20.88 26.3946 10.62 20.5225 5.15 14.2361 // Rozděleno! Tabulka navazuje // na předchozí z důvodu nedostatku // místa na stránce. 2.91 9.27786 1.22 1.74142 1 0 0.53 -5.46546 0.11 -19.0935 19 12 Úspěšnost zvládnutí předmětu Přestože studenti potřebovali při obhajobě programu občas pomocnou berličku, zvládnutí úkolů u většiny potěšilo. Průměrná známka B odpovídala záměru spíše motivovat, přičemž rozložení zbylých známek kopírovalo Gaussovu křivku až po známku E. Některým k lepší známce pomohlo, že do výsledné známky se započítávala i známka ze vstupního testu. Studentů, kteří neuspěli a museli si zapsat předmět příští rok bylo pět. Další studenti, kteří neuspěli ukončili z důvodu nesplnění dalších předmětů, někteří z nich studují znovu. Většina studentů, kteří neuspěli, nevyužili všechny tři pokusy, které využít mohli.23 Stížnosti studentů na náročnost předmětu byly tak nečekaným překvapením. 13 Hodnocení předmětu studenty po zkouškovém období Stížnosti měli stejný základ, překvapení z toho, že u zkoušky museli předvést o něco více než na co byli zvyklí a museli doma ještě procvičit několik doporučovaných algoritmů. Někteří studenti toto zřejmě vnímali jako podraz od vyučujícího. Zřejmě se jednalo hlavně o studenty, kteří si stěžovali u vedoucího na přílišnou obtížnost předmětu už v průběhu semestru. Bylo to překvapení, zdálo se totiž, že předmět byl, na základě předchozích zkušeností, nastaven velmi šetrně tak, aby měli možnost jej zvládnout téměř všichni studenti, i ti bez jakýchkoliv předchozích znalostí. Počáteční obava byla spíše z toho, že seminář bude pro mnohé příliš jednoduchý. Několik stížností studentů se týkalo obtížné matematiky, která studentům na škole tohoto typu přišla moc složitá. Potřebné vzorce jsou přitom v zadání vždy napsané včetně jednoduché Pythagorovy věty i s potřebným odvozením, pokud je potřeba. Některé studenti ale samotná vidina matematických výrazů irituje. Několik stížností bylo na nespravedlivé ohodnocení slovní úlohy. Studenti měli pocit, že za triviální smyčku – například pro vytištění pole – by měli být ohodnoceni lépe, aby jim spolu se známkou ze vstupního testu vyšla známka, která by jim umožnila uspět. 14 Hledání příčin a pokus o nápravu Pro výuku konceptuálního porozumění jsou vhodné reálné příklady. Při ukládání znalostí se tak může podnítit zájem studenta a může dojít k lepšímu uložení nabytých znalostí. Také studenti po takových úlohách často volají. Ukázalo se, že studenti musí být ale na takové úlohy připraveni. Pro studenti z netechnických škol je samotné porozumění zadání někdy velkou překážkou a základní matematické vzorce je také velmi rozhodí. Proto tento rok se studenty udělán experiment, kdy jim byla předložena k domácímu vypracování a odevzdání výše předvedená slovní úloha v modifikované podobě krok za krokem. Jednotlivé části studenti měli mít už naučené ze seminářů po první půlce semestru a navíc měli k dispozici všechny doposud procvičované úkoly. Z názvu byl odstraněn i název úlohy, který mohl studenty také rozptylovat. Úkol 1 Bez pužití knihovních funkcí vytvořte algoritmus, který ze zadaných hodnot (v poli) double x[10]={40.33, 30.44, 20.88, 30.01, 10.62, 5.15, \ 2.91, 1.222, 0.533, 0.111}; 23 Statistika uvádí jen studenty, kteří měli splněný zápočet a přišli na zkoušku. a o zkoušku se alespoň pokusili. 20 vypočte desítkový logaritmus, který navíc bude vynásobený dvaceti 𝑦 = 20 log 𝑥. Je známo, že mezi desítkovým a přirozeným logaritmem, je tento vztah log 𝑥 = ln 𝑥 ln 10, ln 10 = 2, 3. Problémem, který je třeba vyřešit je výpočet přirozeného logaritmu podle následujícího postupu. Přirozený logaritmus lze získat sečtením řady (čím delší, tím přesnější) ln 𝑋 = (𝑋 − 1) − 1 2(𝑋 − 1)2+1 3(𝑋 − 1)3−1 4(𝑋 − 1)4+ . . . 1 𝑁(𝑋 − 1)𝑁. Správnou funkci si lze ověřit zadáním následujících hodnot 𝑋. Proměnnou 𝑥jsme záměrně označili 𝑋, protože algoritmus bude třeba ještě zdokonalit a výpočet 𝑋je jen část. TIP: Všimněte si, že k výpočtu nového umocňovaného členu lze využít hodnotu předchozího umocnění, které se jen vynásobí (𝑋 − 1). X 2 1,5 1 0,5 0,1 lnX 0,69315 0,40547 0 -0,69315 -2,30259 Tímto způsobem se dají vypočítat hodnoty 𝑋od 0 do 2, pro větší hodnoty jsou výsledné hodnoty už dost nepřesné. Pro výpočet přirozeného logaritmu větších čísel je třeba přičíst 𝑛⋅ln 2 a dostáváme tedy ln 𝑥 = ln 𝑋 + 𝑛 ⋅ ln 2, ln 2 = 0.693147 𝑎 𝑋 = 𝑥 𝑚 Určíme si, co můžeme do vzorce dosadit, a co musíme dopočítat (dalším algoritmem). 1. Hodnota 𝑙𝑛2 je známá konstanta; 2. hodnota v proměnné 𝑛je nejbližší hodnota 2𝑛k hodnotě 𝑥. (přitom 2𝑛jsou čísla (1, 2, 4, 8, 16, . . .), tedy násobek předchozího čísla dvěma, označme je třeba 𝑚a tedy 𝑚=2𝑛.) Je třeba vytvořit algoritmus pro nalezení nejbližší hodnoty 𝑚k hodnotě 𝑥. Při hledání si ukládáme také hodnotu 𝑛, kterou potřebujeme znát pro dosazení do vzorce; 3. hodnotu 𝑋získáme jako podíl 𝑥/𝑚. Přiřazením hodnot do proměnné 𝑋a𝑛a dosazením do vzorce získáme algoritmus, který dokáže vypočítat přirozený logaritmus z libovolného čísla, tedy nejen v rozsahu 0 až 2. Algoritmus pro výpočet přirozeného logaritmu stačí vydělit hodnotou 2, 3 (viz první vzorec na začátku) a ke splnění zadání 𝑦 = 20 log 𝑥 ještě vynásobit dvaceti. Pak už jen aplikovat algoritmus na všechny hodnoty 𝑥v zadaném poli. Pole výsledků 𝑦by mělo obsahovat tyto hodnoty. x 40.33 30.44 20.88 10.62 5.15 2.91 1.222 1 0.533 0.111 y 32.1126 29.6689 26.3946 20.5225 14.2361 9.27786 1.74142 0 -5.46546 -19.0935 Vzhledem k tomu, že úloh byla studentům předložena týden před termínem odevzdání konferenčního článku, nejsou data ještě k dispozici. 15 Diskuse 15.1 Přednáška a cvičení Bývalo zvykem, že na vysokou školu přicházeli studenti připravení ze středních škol. Vysokoškolský učitel pak koncipoval svoji výuku k posílení konceptuálního porozumění. Pro rozvíjení 21 konceptuálního myšlení často zařazoval reálné příklady z realizovaných projektů, ukazoval studentům výhody a nevýhody konkrétních řešení a snažil se studenty motivovat k samostatné projektové činnosti, aby měli studenti možnost se na samostatných úkolech zlepšovat a lépe poznávat své možnosti a hranice, tedy posilovat metakognitivní znalosti. K tomu sloužily přednášky, které z pochopitelného důvodu musel mít člověk, který je v dané oblasti špičkový specialista a také velmi dobrý pedagog. Konceptuální porozumění a procedurální znalosti – pokud jsou správně kombinované – se navzájem doplňují a zvyšují výsledný vzdělávací efekt. Z toho důvodu musela mít přednáška často také cvičení, kde si studenti měli možnost procvičit procedurální dovednosti pod dohledem vyučujícího. Tak se studentům dostávalo znalostí nejenom o věcech přemýšlet v širším kontextu, ale také uvažované principy umět použít při řešení problému. Přednáška spolu se synchronizovaným cvičením se navzájem doplňovaly tím nejlepším způsob, který je vhodný pro růst celého spektra znalostí studentů, jak popisuje revidovaná Bloomova taxonomie na ose znalostí.24 Tento způsob není zastaralý, z přednášek a podkladů vyhlášených univerzit je tento systém stále zřejmý, naplňuje totiž teorii učení podle Bloomovy revidované taxonomie, která nebyla překonána.25 Pokud je konceptuální a procedurální náplň rozdělena, přináší nejlepší výsledky. Perry uvádí tento závěr při testování na žácích (Perry, 1991). Vyučující na cvičeních uděloval zápočet za procedurální dovednosti. Zkouška měla prověřit konceptuální porozumění při níž zkoušející prověřil schopnost studenta vidět věci v širším kontextu. 15.2 Seminář Základy algoritmizace Seminář je platforma pro vzájemnou diskusi, kde se scházejí lidé, kteří vědí o čem se hovoří, dokáží pokládat otázky tak, aby si doplnili své znalosti nebo se jen ujistili, že jejich domněnky a představy jsou správné. K posilování znalostí zde dochází na základě diskuse. Aktivní zúčastnění přispívají svými pohledy na věc, z nichž některé pod tíhou argumentů posílí a jiné oslabí, nebo se zcela zavrhnou. Pasivní poslouchající si alespoň doplňují chybějící znalosti. Někdy seminář poslouží tam, kde je snaha sloučit dohromady obsah přednášky a cvičení, s tím, že přednáška by se stejně obsahově nenaplnila, nebo by neměla smysl. Sloučení je sice možné, ale nedá se očekávat, že by mohlo mít stejný efekt jako oddělená přednáška a cvičení. (Perry, 1991) Pro vyučujícího to pak může znamenat zklamání, když namísto očekávaného posílení širšího porozumění volí studenti snadnější cestu procedurálního učení a navíc studenti očekávají totéž u zkoušky. Tato hypotéza se potvrdila po prvním roce výuky. Závěr, který byl po prvním roce udělán na základě zkušenosti, byl: „Není dobré míchat procedurální a konceptuální model.“ Do jisté míry je možné kombinovat procedurální a principiální způsoby výuky, jak bylo předvedeno na ukázkové hodině s probíraným třídícím algoritmem bubble sort, taková výuka ale zřejmě osloví pouze menší část studentů. Ostatní se spokojí se získáním deklarativních znalostí nabytých těsně před zápočtem nebo zkouškou.26 Na základě toho se další rok výuka přiblížila více cvičení, tedy procedurálně postavené výuce. Ubralo se předávání souvislostí a širšího pohledu a přidalo se více příkladů k procvičování. Zkouška musela být velmi zjednodušena. Požadavek na zjednodušení vzešel ze stížnosti studentů, na základě čehož bylo rozhodnuto, že zadávané úkoly nesmí po studentech chtít matematiku ze střední školy a slovní úlohy musí být z oboru.27 24 Slabší studenti, kterých bylo méně, byli nuceni k intenzivnímu samostudiu nebo spolupráci se silnějšími studenty či s vyučujícím formou konzultací. 25 Jen je občas nepochopena. 26 Nejedná se samozřejmě o žádný velký objev. Mnozí k podobným závěrům dospějí praxí a na základě takzvaného selského rozumu, který je ale často velmi subjektivní a zatížený mnoha chybami. 27 Hodně štěstí při vymýšlení úloh s deklarovanými parametry. 22 Tento rok bylo přidáno ještě více příkladů k procvičení.28 Podrobný harmonogram vypadá k dnešnímu dni takto. •Seminář 1. týden (vývojové diagramy, základy syntaxe jazyka C/C++ – čtení ze standardního vstupu, a výpis na tarminál) •Seminář 2. týden (větvení, velmi jednoduché algoritmy – ošetření parametru při výpočtu odmocniny ,nalezení nejvěšího čísla ze dvou a ze tří ,výpočet kvadratické rovnice, jednoduchý kalkulátor s elseif aswitch) •Seminář 3. týden (smyčky typu while, jednoduché algoritmy – suma, zacyklený kalkulátor, kalkulátor sériového a paralelního řazení odporů ) •Seminář 4. týden (break,continue, smyčka typu for afor-each, nekonečná smyčka, příklady – faktoriál v opačném sledu, zacyklený kalkulátor s modifikacemi ) •Seminář 5. týden (další jednoduché algoritmy – Euklidův algoritmus, Fibonacciho posloupnost, dec2bin, výpočet 𝑃𝐼,výplata hotovosti) •Seminář 6. týden (dec2oct,bin2dec, jednorozměrná statická pole – použití funkce rand, Fibonacciho posloupnost) •Seminář 7. týden (test, výpočet 𝑙𝑛2, max/min hodnota pole) •Seminář 8. týden (algoritmy buble sort, reverse,unique, dynamické pole) •Seminář 9. týden (nalezení nejbližšího čísla 2𝑛,selection sort, hledání prvku v poli binarySearch, fronta FIFO) •Seminář 10. týden (algoritmus pro výpočet 𝑙𝑛𝑥,insertion sort, dvourozměrná pole, Pascalův trojúhelník, jednoduchá zapouzdření, zásobník LIFO) •Seminář 11. týden (𝑠𝑖𝑛𝑥, předávání pole parametrem funkce, práce s řetězci) •Seminář 12. týden (spojový seznam, binární strom) •Seminář 13. týden (test – při splnění podmínek udělení zápočtu) Binární stromy probírají studenti v rámci jiného předmětu později. Vzhledem k svátkům a rektorskému volnu slouží tato náplň semináře spíše jako polštář, který sklouzne do samostudia, pokud se výuka někomu posune o týden. U zkoušky ani zápočtu nic z tohoto semináře není. 15.3 Středoškolská výuka Přibližně polovin studentů bez jakýchkoliv potřebných základů algoritmizace, programování, ale také matematiky je prostě realita.29 Učit studenty s nulovými znalostmi je na střední škole běžné. Vysoká škola má však v tomto jednu nevýhodu. Studenti brzy pochopí, že už nejsou na střední, že mají mnohem víc svobody, po které mohou volat (a většinou dosáhnou svého), pokud je někdo omezuje víc jak to cítí. Také je to pro mnohé příležitost – první po střední škole – otestovat si sílu svého hlasu a stěžovat si, který je tedy pro jistotu anonymní. 15.4 Sociální klima školy Jakmile studenti pochopí, že na jiných předmětech je pro ně výuka spíše zábavou, kde mohou používat například AI, začnou přicházet stížnosti na předměty, které jsou myšleny více vážně. 28 Dělají se algoritmy, které – jak se ukázalo v předchozích letech – někteří studenti nebyly schopni vymyslet samostatně. 29 Od samého začátku to byla výzva – zkusit učit v tak diverzním prostředí. Hodnocení studentů před zkouškou mi k náročnosti splnění úkolu docela potěšilo. Ač v pár dotaznících bylo vidět, že několika studentům lezu krkem, protože nejspíš očekávali něco trochu jiného. 23 Tomuto se říká nedobré sociální klima školy (Allodi, 2010), jenž popisuje (mimo jiné) vzájemné propojení, kde, pokud vyučující nejsou ve svých nárocích na studenty slazeny, studenti vezmou výuku snadno zvládnutelných předmětu jako precedens, kterého se dožadují i u jiných předmětů. 16 Závěr Schopnost vytvářet efektivní algoritmy vyžaduje nejenom procedurální dovednosti, ale také konceptuální porozumění na úrovni znalosti principů. Procedurální a principiální znalosti se navzájem posilují a vedou k dobrému růstu. Vyžadují nicméně jistý dril, který vystihuje oblíbená věta programátorů, „Bez programování se ještě nikdo programovat nenaučil.“ Zdá se být pochopitelné, proč algoritmizace nepatří30 mezi oblíbené předměty (Kalous, 2025) na školách, které nejsou vyloženě matematicky orientované. Poté, co byla výuka předmětu Základy algoritmizace přizpůsobována studentům, zdá se být logické hledat příčiny také jinde než jen u sebe. Dále bylo tedy stanoveno několik bodů k dalším diskusím, které by mohly vést ke zkvalitnění výuky a celkově lepšímu českému školství: Lepší připravenost přicházejících studentů ze středních škol, hlavně netechnického typu a učilišť. Nadějí se zdá být nový RVP (Nová informatika), na který školy přicházejí (Kalous, 2025). Po přechodné období jsou řešením přípravné kurzy naprostých základů před začátkem semestru plus také kurz algebry s obsahem základů středoškolského učiva.31 Na chybějící neznalost těchto základů by se již v průběhu semestru nebral ohled. Zlepšení organizace veškeré výuky na škole a takzvané zdravé „sociální klima školy“ s politikou školy, která je orientována na kvalitu spíše než na kvantitu32. Dobře vedená koncepce výuky. – Zdraví souvisí s kvalitou učení, bez toho se znalosti ukládají pouze na nejnižší úrovni faktů33. S dobře vedenou koncepcí výuky se dá dosáhnout často dobrého výsledku při menším tlaku na studenty. To je způsob výuky, který funguje v mnoha rozvinutých zemích a přináší výsledky. Konceptuální porozumění je potřeba na vysoké škole rozvíjet34 – dává totiž studentům flexibilitu, která jim umožňuje řešit širokou škálu problémů a hlavně vidět příležitosti, kde lze naučené znalosti aplikovat. To je dnes důležitější než v minulosti. – Dělící čára mezi vyšší odbornou školou a vysokou školou by měla být znatelnější pro učitele (způsobem výuky procedurální/konceptuální) i pro studenty (při výběru školy).35 Zvážit používání AI. Může se zdát, že se jedná o výuku bohatou na relace, která posiluje konceptuální porozumění. To platí ale pouze v případě, že uživatel dokáže klást správné otázky – konvergentní. Dotazy začátečníka jsou do jisté míry náhodné (divergentní). Student nemá žádné základy, které by tvořily kostru, podle které by se dokázat rozhodovat, kterým směrem se při dotazování ubírat.36 Samozřejmostí by mělo být celoživotní kvalitní vzdělávání učitelů (nejlépe od zahraničních pedagogů) s širokým přesahem znalostí do jiných oborů jako jsou přírodní vědy, psychologie, 30 K nepopularitě přispívá také to, že mnoho studentů nechápe příliš smysl algoritmizace, protože mají jinou představu o programování – velmi zjednodušenou 31 Studenti mají problém porozumět slovnímu zadání a matematické vzorce jim přijdou složité. 32 Vysoké školy, které přitahují investice do kraje, je potřeba naplnit studenty, a to často i studenty nepřipravenými pro tento typ studia, bohužel. 33 Vyšší kognitivní funkce mozku jsou oslabeny. 34 Koncepce vysokých škol byla navržena tak, aby rozvíjela konceptuální myšlení. Naopak formát výuky postupně vznikajících vyšších odborných škol byl od začátku středoškolský. Tedy takový, který vyhovuje lépe výuce procedurálních dovedností (pokud je na to škola dobře připravena a vybavena). Z vyšších odborných škol měli vycházet špičkový dobře ohodnocení odborníci do průmyslové praxe. Z vysokých škol pak odborníci, kteří mají na úkor procedurálních dovedností větší teoretický přesah a lepší schopnost konceptuálního myšlení. 35 Vyšší odborná škola není učiliště ani jen jiná střední, ale škole vychovávající špičkové úzce specializované odborníky. 36 Divergentní dotazování bez schopnosti korekce. 24 sociologie a péče o duševní zdraví (EU-PROMENS, 2024). Kdo se sám rád nevzdělává, ať raději nikoho neučí. Vyučující na technických vysokých školách by měli mít minimálně několikaměsíční praxi z výuky v posledním ročníku střední školy a absolvované pedagogické minimum, aby získali širší přehled. Praxe v komerční sféře může být plus v různých motivačních programech pro nadané studenty případně pro lepší selekci probírané látky při výuce. Na samotnou kvalitu vzdělávání nemusí mít ale zásadní vliv. 17 Literatura Allodi, M.W. (2010). The meaning of social climate of learning environments: Some reasons why we do not care enough about it. Learning Environments Research, 13(2), pp.89-104. Pšenčíková, J. (2009). Algoritmizace. Vyd. 2. Kralice na Hané: Computer Media, 128 s. ISBN 978-80-7402-034-6. Krathwohl, D. R. (2002). A revision of Bloom’s taxonomy: An overview. Theory into Practice, 41(4), 212–218. Perry M. (1991). Learning and transfer: Instructional conditions of conceptual change. Cognitive Development, 6, 449-468. Kalous, L. (2025). Nová koncepce výuky informatiky na gymnáziu ústí nad orlicí. In: Informatika 2025 - Sborník příspěvků z konference. Jihlava: Vysoká škola polytechnická Jihlava, 2025, s. 23-27. ISBN 978-80-88064-75-6 Ordin M, Barbarroja N, Polyanskaya L, Manrique HM, Castelo-Branco M. (2025) Metacognition and Cognitive Flexibility in Autistic and Neurotypically-Developing Populations. Brain Behav, 15(7):e70668. doi: 10.1002/brb3.70668 EU-PROMENS. (2024). National Training Programme 2025. [online], [2025-11-20]. Dostupné z: https://eu-promens.eu/eu-promens/pages/training 25