Programovací platformy pro děti: Makecode

Minulý týden nám lektor kurzů digitálních dovedností makeITtoday Ondřej Vošta představil programovací platformu pro děti Scratch. Dnes nás seznámí s dalším ze svých oblíbených nástrojů – Makecode.

Makecode je výukový programovací nástroj z dílny společnosti Microsoft. Obsahuje jednak snadno pochopitelný blokový programovací jazyk podobný Scratchi, ale umožňuje své rozhraní přepnout i do Pythonu nebo Javascriptu, a tím dát studentům možnost nahlédnout do profesionálních programovacích jazyků nebo si začít zkoušet programovat v nich.

Snadná cesta k robotice

Spolu se skvělou a cenově dostupnou platformou micro:bit je makecode přívětivou cestou k robotice. Micro:bit je malinký výukový počítač. Přímo u sebe má display z 25 led světýlek, akcelerometr pro zjišťování náklonu, tlačítka, teploměr a ještě má dostupné programovatelné kontakty (takzvané piny), které umožňují přímou práci nebo jeho další rozšíření (a různých rozšíření je na trhu opravdu nespočet). A celý micro:bit a jeho rošíření můžete programovat pomocí makecode. Navíc má makecode skvělý emulátor micro:bitu, takže na vyzkoušení ani fyzické zařízení nepotřebujete.

A to není vše

Makecode se dá využít pro několik dalších robotů, ale také k programování do hry Mincraft Education Edition (pozor, opravdu je třeba verze Education Edition). A nebo také k programování jednoduchých her (https://arcade.makecode.com/) připomínajících staré konzole a automaty. Tyto hry je pak možné vkládat do katalogů nebo na vlastní webové stránky, případně nahrát do různých kutilských konzolí.

Co se mohou studenti naučit?

Spolu s micro:bit mohou například pomocí pinů testovat, jaké materiály vedou elektrický proud. Mohou vytvořit vlastní krokoměr nebo si posílat tajné zprávy mezi micro:bity.

U toho všeho se prakticky naučí, co to jsou senzory, jak je roboti čtou, pomocí programu vyhodnocují a podávají konkrétní výstupy. A naučí se nebo zopakují základní programátorské koncepty jako například proměnné a podmínky. Programování může být pro studenty příliš abstraktní a programování fyzických zařízení ho pomůže přiblížit reálnému světu.

Programovací platformy pro děti: Scratch

Možná se ptáte, proč by se vlastně děti měly učit programovat? Ne každý se přece chce stát programátorem. Je to podobné jako s odpovědí, proč by se měly učit cizí jazyk, když nechtějí být překladatelem. Jednoduše nový jazyk pomáhá chápat svět okolo nás, poskytuje základy pro další vzdělávání, otevírá nové karierní příležitosti, nabízí nástroje pro řešení kažodenních problémů a v neposlední řadě usnadňuje komunikaci s lidmi v IT, kterých bude v pracovních týmech stále přibývat. 

V následujících týdnech nám lektor kurzů digitálních dovedností makeITtoday Ondřej Vošta představí své oblíbené platformy, které jsou přímo navržené pro výuku dětí.

Scratch 

Scratch (https://scratch.mit.edu/) je jedna z nejoblíbenějších platforem pro výuku programování. Obsahuje snadno pochopitelný programovací jazyk, galerii projektů pro inspiraci a pro učitele užitečnou možnost vytvořit třídu.

Scratch je kočička, co nekouše

Scratche se nemusí bát ani neprogramátor. Jedná se o takzvaný vizuální programovací jazyk. To znamená, že místo psaní kódu skládáte dohromady grafické bloky. Tyto bloky jsou navíc různě tvarované a zapadají do sebe, čímž vám Scratch pomáhá určit, kam co patří. Podobně jako kostičky lega. Díky tomu se nemusíte trápit překlepy, znalostí příkazů či kódem, který počítač nedokáže přečíst.

Proč učit Scratch

Přes svou jednoduchost programovací jazyk Scratch obsahuje stejné základní koncepty jako jakýkoliv jiný, i profesionální, jazyk. Naučíte se díky němu porozumět proměnným, cyklům, podmínkám a podobně. I studentům, kteří se nechtějí stát programátory, snadnou cestou přiblíží, jak fungují technologie, které denně používají. A budoucím programátorům dá základ, díky kterému se snáze naučí další programovací jazyky.

K čemu Scratch použít

Ve Scratchi je možné vytvořit hezké hry, které hodně baví studenty, animovaná videa, kvízy či nechat Scratch kreslit. Velmi dobře se dá využít i v jiných předmětech, než je informatika. Kreslení můžete využít v geometrii, studenty zpracovanou krátkou animaci ze světa přírody v přírodopisu, vlastní kvíz z dějepisu a v angličtině zase můžete využít zabudovaný překladač a převod textu na řeč.

Na ukázku projektu, který děti mohou ve Scratchi naprogramovat, se můžete podívat na tomto odkazu:https://scratch.mit.edu/projects/508656106/editor/. Akci spustíte kliknutím na zelenou vlaječku nad obrázkem sluníčka. 

3 méně známé nástroje pro online výuku

V online výuce se setkáváme s množstvím nových problémů a výzev. Jak sledovat postup žáků, když se nemohu projít po třídě a „nakouknout”, jak spolupracovat na dálku a podobně. Dnes vám Ondřej Vošta představí 3 nástroje, které rád používá při online výuce na kurzech digitálních dovedností makeITtoday

Padlet

Padlet je elektronická obdoba nástěnky s lístečky. Od korkové nástěnky jí však posouvá na míle daleko několik vlastností.

  • Samozřejmostí je možnost nástěnku sdílet se studenty, a to pouhým odkazem (není třeba vytvářet účty).
  • Lístečky mohou obsahovat všemožná média jako text, obrázky a videa. Navíc je možné je komentovat nebo jim dávat srdíčka, hvězdičky, palce nahoru či dolů.
  • Lístečky můžete na nástěnce uspořádat – buď volně, do pojmenovaných sloupců, do mřížky a mnoho dalšího.

Ve výuce padlet využívám například k získání zpětné vazby, brainstormingu nebo evokaci. Se studenty také při práci na delších týmových projektech, kde si na lístečky píší dílčí úkoly a přesouvají je mezi sloupci „TODO”, „Děláme na tom” a „Hotovo”.

Ve verzi zdarma máte k dispozici 3 nástěnky bez jakýchkoliv dalších omezení.

Quizizz

Quizizz je online kvíz. Online nástrojů pro tvorbu kvízů je mnoho, zmíním například ještě Kahoot, který rád používám spíš v prezenční výuce. Z mnoha vlastností Quizizz bych zmínil hlavně tyto:

  • Každý žák jde svým vlastním tempem, vy pouze sledujete, kde kdo je. Na konci přehledně vidíte výsledky a můžete je využít ke zpětné vazbě a navedení studentů v dalším rozvoji.
  • Máte k dispozici několik různých druhů otázek jako výběr jedné/více možností, hlasování, volný text, vyplnění slov nebo můžete přidat i vysvětlující slide.
  • V odpovědích mohou být obrázky – speciálně například při výuce Scratch je lepší ukázat blok jako obrázek a nepřepisovat text.

Verze zdarma má drobná omezení, která mi ale nikdy nevadila. Údajně jsou ve verzi zdarma také reklamy, ale nezaznamenal jsem je.

Classcraft

Classcraft je nástroj, jak z výuky udělat online hru na hrdiny. Každý student je hrdina a vy připravujete dobrodružství. V nejjednoduší formě máte mapu, na kterou umístíte úkoly a cesty jak mohou studenti mezi úkoly postupovat. Pokud se chcete ponořit hlouběji, každý student má ve hře povolání (Kouzelník, Ochránce nebo Léčitel), má své body zkušenosti, úroveň, životy, energii a speciální dovednosti. Jak toto všechno využijete, je na vás, ale už základní mapa s úkoly přináší několik výhod.

  • Cesty mezi úkoly se mohou větvit, takže nemusí všichni dělat totéž. Nejčastěji mám na mapách několik společných úkolů a pak křižovatku, kde si mohou studenti vybrat.
  • Samozřejmostí je, že vidíte postup hráčů a můžete na to reagovat.
  • Celá stylizace do hry vypadá dobře a studenty baví.

Classcraft je trochu složitější nástroj, ale minimálně základní využití map není nic, co by běžný uživatel nezvládl. Studenti potřebují registraci a doporučuji ji s nimi projít online. Celá platforma je anglicky, ale po úvodní registraci si studenti vystačí s několika málo obrázky, které si v nejhorším zapamatují jako obrázky.

Ve verzi zdarma může mít vaše dobrodružství pouze 6 úkolů, ale můžete vytvořit i více dobrodružství. Jiná omezení mi zatím ve využívání tohoto báječného nástroje nebránila.

Prostorová představivost

Prostorová představivost je schopnot vytvořit si mentální model prostorového objektu a v mysli s ním manipulovat – například otáčet, rozkládat, skládat nebo počítat. V životě je to schopnost nezbytná pro architekty, konstruktéry, ale užitečná je i pro prostou orientaci v mapách. Tip na trénink prostorové představivosti přináší lektor kurzů digitálních dovedností makeITtoday Ondřej Vošta.

V informatice se s ní setkáváme všude, kde v názvu najdeme „3D” – u 3D modelování, 3D tisku nebo třeba 3D hry. Zejména ty 3D hry, kde mohou stidenti něco tvořit, jako je velmi známý Minecraft nebo Roblox. A právě z vytváření úprav světa Minecraft pochází inspirace pro dnešní aktivitu. Minecraft se skládá z kostiček, a když chceme vytvořit kostičku vlastní, musíme namalovat všech 6 stran kostky, která je rozložena do sítě.

My nebudeme malovat kostičku, ale budeme na nesloženou (2D) síť kostky malovat postavičku superhrdiny. Postavička má na přední straně oči a pusu, na zadní straně plášť se svým znakem, na horní straně kšiltovku nebo jinou čepici, kde se pozná, kde je vpředu, na spodní straně boty (které jsou u špičky rozšířené, takže zase víme, kde je vpředu) a má vlevo a vpravo ruce ohnuté v lokti. Chceme, aby postavička po složení do skutečné kostičky odpovídala běžným zvyklostem – tedy že oči jsou nad pusou nebo že ruce jsou v lokti ohnuté směrem dopředu.

A když máte postavičky složené (a slepené), co s nimi třeba natočit krátké stopmotion video?

Týmová spolupráce v IT

V informatice a vývoji software už jsou dávno pryč doby, kdy jeden člověk zvládl vytvořit celý program. Týmová spolupráce je ale užitečná napříč všemi lidskými činnostmi. Tip, jak ji s žáky trénovat, pro nás i tentokrát připravil lektor kurzů digitálních dovedností makeITtoday Ondřej Vošta.

zdroj: archív makeITtoday

Pro studenty může být překvapující a velmi poučné, kolik různých profesí se podílí například na tvorbě počítačové hry. Je tam někdo, kdo vymýšlí pravidla hry (game designer), kdo zpracuje vzhled (grafický designer), někdo, kdo vymýšlí příběh, programátor serverů, aby mohlo hrát hodně hráčů spolu, projektový manažer, aby se to vůbec někdy dokončilo, testeři, aby tam nebyly chyby, programátor části hry, kterou máte v počítači a spousta dalších, které jsem nevyjmenoval. A ti všichni musí spolupracovat. Podobné je to s profesionální internetovou stránkou nebo aplikací na posílání zpráv.

Cvičení:

Na trénink spolupráce dnes vytvoříme právě jednoduchou hru. Studenty rozdělíme do tříčlenných skupin a dáme jim například balíček karet, kostky nebo korálky. A také 3 papíry nadepsané „Příprava”, „Průběh” a „Závěr”. Na papír „Příprava” budou studenti psát, jak se má hra připravit (kolik karet kdo dostane na začátku, kdo začíná a podobně). Na papír „Průběh” budou psát, jak se hra hraje (vykládají se karty, kdo vyhraje kolo). A na papír „Závěr” jak hra končí, co se udělá na konci a jak se pozná, kdo vyhraje. Důležité ale je, že jakmile někdo něco napíše na jeden z papírů, už na tento papír nesmí psát nikdo jiný a tento člen ani nesmí psát na jiný papír.

Pak si hry samozřejmě zahrajeme, ideálně navzájem mezi týmy. A co je důležité, ke zkušenosti se vrátíme v reflexi, kdy si každý tým zhodnotí a podělí se, jak mu šla spolupráce, jak zajišťovali, že na sebe pravidla budou navazovat a dávat dohromady smysl.

V rozšířené variantě mohou studenti, resp. čtvrtý člen týmu, vyrábět i karty nebo jiný materiál ke hře. Případně ještě pro větší týmy, například fázi „Průběh“, kde bývá pravidel nejvíc, mohou psát dva různí lidé, každý na svůj papír, s tím že oba mají přibližně stejný počet pravidel a všechna pak platí dohromady.

Jako obrázky jdou použít vlastní Scratch karty, které si můžete vytisknout zde

V on-line prostředí si můžete karetní hry s žáky zahrát na této platformě, kde je možné vytvořit si i vlastní hru dle pravidel žáků.

Vzory

Je tu IT středa s ním další způsob, jak můžete s žáky procvičovat informatické myšlení klidně i bez počítače. Je to hledání vzorů. Jak na to, radí lektor kurzů digitálních dovedností makeITtoday Ondřej Vošta.

Nás lidi většinou repetitivní činnost nudí, ale počítače jsou v ní skvělé. A zvládají opakovat neskutečně rychle a vytrvale. Aby programátor tuto vlastnost dobře využil, musí být schopen najít opakující se vzor. Částečně to souvisí s abstrakcí, najít, co je společné, co se mění a jak danou úlohu zobecnit. 

V běžném životě jsou takové vzorce rutiny, které nám umožňují dělat věci bez toho, abychom na ně mysleli. Třeba hned po ránu. Máme naučený neměnný vzor činností, které každé ráno opakujeme. Protože po ránu se nám často nechce zbytečně přemýšlet.

Dnešní cvičení je o hledání vzoru v obrázku. Úkolem studentů je vytvořit návod na nakreslení jednoho z následujících obrázků. 

Případně můžete poskytnout ještě barevnou nápovědu:

Správné řešení:

Jedná se o čtverec, který se otáčí kolem levého horního rohu. V prvním případě 5x, v druhém 10x.

V druhé fázi můžete dát prostor pro kreativitu studentů a nechat je vytvořit vlastní obrázek skládající se z opakujících se vzorů. Nakreslí ho buď sami, kamarád nebo to zadají počítači.

Abstrakce

Dalším dílkem do skládačky zvané informatické myšlení je abstrakce. Cvičení, při kterém můžete společně s žáky tuto důležitou dovednost trénovat, si pro nás opět připravil Ondřej Vošta, lektor kurzů digitálních dovedností makeITtoday.

Abstrakce je dovednost vypustit nedůležité informace a naopak vyzdvihnout ty podstatné. V praktickém životě nám také pomáhá poučit se ze svých zkušeností, kdy žádná situace není úplně stejná, ale jsou si v některých aspektech podobné. Je to také schopnost shrnout děj filmu nebo informace obsažené v textu.

V dnešním cvičení se vaši studenti stanou hrdiny v čarodějné věži. Věž má mnoho pater a na každém patře je množství dveří. Vždy pouze jedny dveře vedou do vyššího patra a za ostatními čeká strašlivá kletba. V zaprášené knihovně jste našli klíč, jak určit správné dveře, ale při souboji s ohnivým démonem vám konec mapy ohořel a chybí poslední patro. V tom se nacházíte právě teď a máte před sebou 4 dveře (spodní řada označená A, B, C, D). Kterými se vydáte? Naštěstí víte, jaké dveře jste vynechali nebo využili v minulých patrech (horní část obrázku).

Správné řešení jsou dveře B, protože nejsou rozděleny na 2 části a mají kulatou kliku.

IT středa pokračuje dekompozicí

Minulý týden jsme si na vtipném videu a pomocí jednoduchého cvičení vysvětlili jednu ze složek informatického myšlení – algoritmy. Dnes si představíme další složku, kterou je dekompozice. Jak nám může dekompozice pomoci řešit problémy při programování i v běžném životě, vysvětluje Ondřej Vošta, lektor kurzů digitálních dovedností makeITtoday.

Když před sebou máme komplexní úkol, často ani nevíme, jak začít. Takzvaný strach z prázdného papíru. Tento problém řeší dekompozice, neboli rozdělení problému na menší, zvládnutelné části. Profesionální počítačové programy mívají miliony řádek kódu. To není lidská mysl schopna pojmout, a tak problém dělíme na menší a menší části, až máme funkce o pár (desítkách) řádků, které už umíme vytvořit.

Ale dekompozice se hodí například i při plánování. A při tom si dnes dekompozici procvičíme. 

Jste zahradní architekt najatý školou na návrh realizace školní zahrady. Z průzkumů víte, že na zahradě chtějí žáci skluzavku, trampolínu a minigolf. Dále by škola ráda záhony na drobné pěstitelství a zahradní altán, kde by mohla probíhat venkovní výuka. Také potřebujete travnatou plochu, kde mohou děti volně běhat a hrát hry. Samozřejmě je možné tento seznam vytvořit se studenty. Zahrada má rozměry 100 x 100 metrů. Úkol mohou studenti zpracovat na papíře, v grafickém editoru nebo třeba i v Minecraftu.

Můžete se o tom se studenty pobavit, nebo to nechat na nich. Ale celkem přirozeně se asi rozdělí zahrada na jednotlivé zóny (herní zóna, pěstitelská, klidová, …) a pak se rozpracují detaily těchto zón.

zdroj: makeITtoday

Algoritmy

Minulou IT středu jsme si vysvětlili, co je to informatické myšlení. Jeho různé složky nám v následujících týdnech představí Ondřej Vošta, lektor kurzů digitálních dovedností makeITtoday. A navíc se podělí o konkrétní tipy, jak tyto složky procvičuje se žáky na svých kurzech, a které v hodinách můžete využít i vy. Vyzkoušíte je?

Algoritmus je přesný návod krok za krokem, jak vyřešit zadaný problém. Z běžného života je algoritmem například kuchařský recept nebo návod na sestavení skříně. U algoritmu je důležité, aby byl přesný, čtenář by si neměl nic domýšlet. A důležité je i pořadí kroků. Krásně to vystihuje toto vtipné video (v angličtině), můžete se inspirovat.

My vám dnes přinášíme jednu aktivitu na procvičení algoritmizace. Jste operátor dispečinku horské záchranné služby a volá vyděšená paní, že se jí ve vánici zatoulalo koťátko. Naštěstí má moderní obojek s GPS, díky kterému přesně víte, kde koťátko je. Vy musíte na místo vyslat záchranáře. Ten může přistát na libovolném zamrzlém jezeře (označeno světle modrým čtvercem). Záchranáři musíte dát jasné instrukce, jak ke koťátku dojít a přitom se vyhnout nebezpečným skaliskům (označeno červeně). Instrukce se skládají z povelů “jdi dopředu o zadaný počet kroků”, “otoč se doleva nebo doprava (o 90 stupňů)” a “opakuj nějaké instrukce x krát”. Protože venku zuří bouře, je třeba, aby instrukcí bylo co nejméně.

Správné řešení:

Přistane na souřadnicích 3,4 otočený směrem dolů. Instrukce: Jdi 6 kroků dopředu, otoč se doleva a to celé opakuj 3x.

Co je to informatické myšlení?

Slyšeli jste o pojmu informatické myšlení? Pokud ne, je na čase se seznámit. Informatické myšlení (v angličtině Computational thinking) totiž nesouvisí nutně jen s IT, i když tam je nezbytné. Jeho principy mají mnoho využití i v běžném životě. Co je informatické myšlení, proč a jak byste ho měli se žáky trénovat, vysvětluje Ondřej Vošta, lektor kurzů digitálních dovedností makeITtoday.

Umět programovat neznamená pouze znát programovací jazyk. Dokonce je to ta lehčí část, i když se to zpočátku tak nezdá. Ta těžší část je schopnost řešit problémy, se kterými jsme se zatím nesetkali. Navíc problémy komplexní a obvykle většího rozsahu, než je běžná lidská mysl schopna pojmout. A to je informatické myšlení. Zároveň je to dovednost, kterou využijeme i v jiných oblastech života. Například v plánování událostí, ve výrobě nebo třeba na stavbě.

zdroj: Freepik.com

Používáme zejména:

  • rozdělení problému na menší části (dekompozice),
  • plánování a sestavení postupu z jednotlivých kroků (algoritmizace),
  • hledání opakujících se vzorů a schopnost zobecnit postupy pro použití v širší škále problémů.

Zároveň se při programování (a práci s počítači) dobře zapojují další dovednosti.

Týmová spolupráce.

K úspěšnému zvládnutí projektu nestačí jenom programovat, potřebujete jej naplánovat, graficky ztvárnit nebo dobře prezentovat, a nikdo není dobrý na všechno zároveň.

Kreativita a experimenty.

Na počítači je „levné“ selhat. Nemusíme se bát chyb a můžeme svobodně experimentovat.

Výběr vhodného řešení.

Problém má často několik různých řešení, která se liší efektivitou a například možnostmi dalšího rozvoje projektu. Programátor musí umět vybrat vhodné řešení.

O tom, jak a žáky procvičovat jednotlivé složky informatického myšlení, si řekneme příští IT středu.