Chcete, aby vaše děti uměly programovat? Chcete mít za 10 let mladé programátory ve firmě? Založte kroužek programování na základní škole. Jinak tu bude programátorů méně než šafránu.
Poskytneme vám postup "Jak na to" i učební materiály.
Pokles zájmu o programování
Zdá se mi, že zájem o programování mezi žáky a studenty na Slovensku neroste. I zde kopírujeme trend ze Západu, kde jsou právo a medicína atraktivní profese pro nejlepší studenty a proto např. ve vývojovém centru Google v New Yorku jen těžko najdete rodilého Američana.
Šance, že se z někoho stane kvalitní programátor po skončení vysoké školy, pokud do té doby neprogramoval, je minimální. Začít programovat na vysoké škole je už pozdě, tam svůj drahocenný čas potřebujete využít na získání pokročilých znalostí, ne na učení se základů. Navíc, pokud neprogramujete na střední škole, pravděpodobně si jako další studium nevyberete informatický směr.
Když porovnám nerostoucí zájem o programování s rostoucím množstvím softwaru a hardwarových zařízení, které jsou programovatelné, vychází mi jen jedno: že poptávka po programátorech výrazně převáží nabídku.
Informatika a programování mají málo společného
Mnozí se možná ohradí, že přeháním. Vždyť každé dítě, žák a student umí ovládat počítač, smartphone nebo televizor mnohem lépe, než my rodiče, co vyvolává pocit, že tomu rozumí. Je to však podobný rozdíl, jako umět řídit auto (a občas do něj dolít olej) a umět ho opravit (případně navrhnout nebo vyrobit).
Naše děti sice mají devět let informatiku jako povinný předmět, avšak jeho náplň je převážně o uživatelském ovládání počítače a vybraných kancelářských softwarů. Programování se tam věnuje minimálně. Podle toho, co vidím doma na svých třech školopovinných dětech, je informatika v současné podobě další zbytečný předmět.
Waterfall je k ničemu i ve vzdělávání
Tento problém je typický pro naše státní školství: někdo vymyslí novou "dobrou" věc, kterou nemá kdo učit, protože učitele nezaplatí. Navíc jen málo učitelů, kteří učí informatiku, umí programovat a studentů didaktiky informatiky, kteří programovat umí, je také málo a jejich počty klesají. Tím pádem tu nemá kdo, a ani nebude mít kdo programování na základních školách učit. Samozřejmě, je pár výjimek, ale elita v několika vybraných středních školách nestačí.
Centrální přístup shora dolů je neefektivní jak ve vzdělávání, tak jako i v softwarových projektech. Téměř všem ve vývoji SW je zřejmé, že "waterfall" přístup nefunguje a jeho výsledkem jsou opožděné, předražené a z velké části nepoužitelné SW aplikace. Moderní je agilní přístup, kde je tým malý, cílevědomý, plánuje a postupuje po týdnech.
Agilní kroužek programování
Agilně jsme přistoupili k kroužku programování před rokem i my. Motivace byla jasná: rozjet kroužek programování na základní škole, kam chodí moje děti.
Nevyznám se v didaktice informatiky a neměl jsem ambice ani čas vést kroužek sám. Proto mi známý z Katedry didaktiky programování na FMFI UK doporučil šikovného studenta, s kterým přes prázdniny připravili základní osnovy a vybrali vhodný programovací jazyk. Mezitím jsem domluvil na základní škole, že tam rozjedeme kroužek programování, a objednal pár knih o programování pro děti. V září jsme domluvili termín, propagovali kroužek mezi žáky a začali. Postupně po týdnech vedoucí připravil další hodinu ušitou pro děti a současně materiály zveřejňoval online na webu Kroužku programování ZŠ Dubová.
Kroužek stále funguje, děti tam chodí rády, programují hlavně zajímavé hry. Pokračujeme i v dalším školním roce. A nabízíme vám své zkušenosti i s kompletními podklady, abyste mohli rozjet vlastní kroužek programování.
Jak na to?
- Najděte základní školu. Potřebujete počítačovou učebnu i žáky. Najděte učitele, který má na starosti počítačovou učebnu a společně navrhněte kroužek vedení školy. Ideálně, pokud učitel bude i koordinátorem kroužku na ZŠ. Kdy? V posledním čtvrtletí, abyste na posledním rodičovském sdružení v červnu měli všechno předběžně domluvené a mohli kroužek propagovat.
- Najděte vedoucího kroužku. Učitele, studenta nebo programátora. Nepodceňujte jeho pedagogické schopnosti.
- Domluvte odměnu pro vedoucího kroužku. Žáci mají kroužek zdarma, vedoucího však musíte zaplatit. Možná budete mít štěstí a najdete někoho, kdo to udělá dobrovolně. Většinou to budete muset zaplatit. Odměna je často i dobrý závazek, hlavně pro pravidelnou činnost, jakou je kroužek. V odměně by měl být zaplacený nejen samotný čas na kroužku ale hlavně příprava. Myslete i na čas strávený cestováním kvůli jedné vyučovací hodině. Projednejte s učitelem, který bude koordinátorem kroužku, možnosti odměňování pro vedoucího kroužku, případně najděte sponzora. Pár set eur na školní rok by neměl být problém.
- Napište informační list kroužku. Shrňte v něm obsah kroužku, i kdo bude mít co na starosti. Je to oficiální dokument pro vedení školy. Náš informační list je součástí učebních materiálů, které najdete níže.
- Propagujte kroužek. Informační list je dobrý základ pro propagaci. Propagujte kroužek osobně na rodičovském sdružení (ideálně na posledním a prvním ve školním roce - v červnu a září). Klidně připravte i leták na školní nástěnku.
- Vyberte termín kroužku. Začátkem září nastane boj o termíny. Kroužků je mnoho, termínů málo. Pátek není vhodný, pozdě odpoledne také ne, ideálně kolem druhé - půl třetí, aby vyhovoval co největšímu počtu dětí. Pokud bude vedoucím kroužku student vysoké školy, budete čekat na začátek semestru, který je obvykle v polovině září. Výběr termínů bude tehdy už omezený.
- Nastudujte učební materiály. K dispozici máte naše kompletní učební materiály pro kroužek programování, včetně úkolů a jejich řešení ve zdrojovém kódu ve Scratchi. Během přípravy kroužku jsme testovali i LMS nástroje na online podporu vzdělávání, rozhodli jsme se pro Eliademy, kde se musíte nejdřív zaregistrovat, čímž získáte přístup ke všem podkladům. UPOZORNĚNÍ! Učební materiály jsou určeny jen na bezplatné vzdělávání žáků. Při použití těchto materiálů vždy uveďte autory, název a webovou adresu použitých materiálů. Jakékoliv použití materiálů na komerční účely včetně žáky placených kroužků je zakázáno bez předchozího souhlasu autorů!
- Pošlete e-mail. Po několika týdnech mi napište e-mail. Zajímají mě vaše zkušenosti.
- Sdílejte dál. Napište kolegům, známým a kamarádům e-mailem, přes Facebook, přes Twitter, pokud se vám kroužek programování líbí.
- Nezapomeňte na odměnu pro děti. Děti budou mít radost z každého funkčního programu. Určitě je však potěší pěkný vytisknutý certifikát (TIFF 3,83MB) absolventa kroužku nebo jiná odměna na konci školního roku.
Co dál a co jinde?
Scratch jsme vybrali po zralé úvaze, kromě jiného byla pro nás důležitá dostupnost programovacího prostředí u žáků doma bez potřeby kupovat software. Scratch je navíc progresivní, ve verzi Scratch2 obsahuje i bloky a další vylepšení. Přibývá i literatura s inspirativními příklady pro děti, hlavně ve formě her.
Z téže dílny jako Scratch je i MIT App Inventor na vývoj mobilních aplikací, který může být vhodný na pokračování výuky. Dalším možným rozšířením programování o ovládání hardwaru je cenově dostupný Raspberry Pi, na kterém běží nejen Scratch ale i Python, vhodný pro starší žáky. Lego Mindstorms je už klasikou pro mladé zájemce o robotiku, i když je to cenově exkluzivní hračka.
Programátorské kroužky na Slovensku mají dlouhou tradici a nejsme jediní organizátoři. Snažíme se pomoci rozšířit programování na základních školách, což má svá specifika, protože didaktika programování pro žáky základních škol je ještě v plenkách. Dlouhá léta funguje na Slovensku FIRST LEGO League pro zájemce o programování LEGO robotů, Imagine Logo Cup a rozjíždí se Scratch Cup. Mnohá Centra volného času i školy organizují vlastní programátorské kroužky.