Výuka programovania na základnej škole

Na základných školách sa pri výuke programovania využíva/zneužíva (???) viacero „detských“ programovacích jazykov. Ich základnou výhodou je, že sú prispôsobené detskému vnímaniu sveta (aspoň my dospelí si myslíme, že detský svet je natoľko primitívny). Deti v týchto prostrediach programujú intuitívne a dospelí (nepobozkaní „profesionálnym“ programovaním“)  by v nich programovali so zdravým sedliackym rozumom.

Intuícia je, obávam sa, stále neprebádaná oblasť. Hoci som ateista, intuícia je intímny dotyk s Božstvom, niekto sa ho dotýkať vie, iný sa ho dotknúť bojí a ten kto s Bohom diskutoval a neuveril, sa musí dotknúť jeho, či skôr vlastných rán, vlastných ranných prebúdzaní, aby uveril, a popritom nepochopil.

Základnou nevýhodou „detských“ programátorských prostredí je, že takmer žiadne z nich profesionálny ani amatérsky programátor v reálnom svete, v reálnom živote nikdy nikdúci nepoužije.

Asi jedinou výnimkou je programovací jazyk Python, ktorý možno „ponížiť“ na detskú úroveň (kiež by sme vedeli byť nevinní, nezmanipulovaní, úprimní ako deti) a pritom v  ňom možno postupne riešiť aj najnáročnejšie intelektuálne (matematické, fyzikálne, biologické, sociologické, filozofické,…) problémy.

  • robot Karel (Karol) – v súčastnosti sa tento jazyk asi (dúfam) na našich školách nepoužíva, ešte ako študent vysokej školy som ho deti na krúžku výpočtovej techniky učil na 8 bitovom počítači PMD
  • korytnačka Žofka – tiež prekonaný jazyk z osembitových počítačov, ktorý však má aj v súčastnosti nasledovníkov
  • Baltík 3 – na základných a čiastočne stredných školách v strednej Európe medzinárodne rozšírený programovací jazyk, ktorý je v značnej miere nasledovníkom robota Karola. Príkazy sa zadávajú pomocou obrázkov (icon), ktoré môžu byť nasledované/predsledované číselnými alebo textovými parametrami. Organizujú sa v ňom slovenské i medzinárodné programátorke súťaže
  • Baltík 4 – nástupca Baltíka 3 . Kým Baltík 3 je dvojdimenzionálny, v Baltíku 4 sa používateľ/programátor/Baltík pohybuje  v trojdimenzionálnom priestore. Hlavnou výhodou oproti trojke je, že ikonografické príkazy si možno zobraziť aj „normálnom“ programovacom jazyku (tuším C#) a teda to môže byť vhodný medzikrok k „dospelému“ programovaniu.
  • Scratch – kým Baltík programátora nenavádza k syntaktickému mysleniu, Scratch k šturktúrovaným príkazom automaticky dopĺňa syntakticky korektný kontext. Ja osobne Scratch rád nemám, ale mám žiakov, ktorím sú iné „detské“ programátorske prostredia „odporné“, ale v Scratchi sa vedia „vydovádět“.
  • Imagine – je to do značnej miery pokračovateľ korytnačej grafiky Žofky. Predstavte si korytnačku, ktorá levituje nad pieskovou plážou, nezanecháva stopy po svojich labkách, ale má alebo nemá spustený chvostík, ktorým v piesku kreslí viac než zaujímavé obrazce. Ak by navyše tento chvostík bol zároveň viacfarebným perom, zrazu „hlúpa a pomalá“ korytnačka, dokáže nakresliť impozantné obrazce, ktoré by jej závideli Picaso či Dali. Toto prostredie sa v mnohom blíži k tomu, ako sa programuje v štandardných jazykoch. Hlavnou nevýhodou (zároveň výhodou) je, že namiesto toho, aby príkazy boli, ako v takmer vo všetkých programovacích jazykoch v angličtine, sú v slovenčine, maďarčine, rusínštine, japončine, či v inom národnostnom jazyku (asi preháňam, a sú tam iba dve možnosti, jednou z nich je angličtina). Prirodzene, že väčšina učiteľov (aj ja) ide cestou ľahšieho odporu a používa svoj či skôr žiacky rodný jazyk. Tento problém by snáď bol aj prekonateľný, jednoducho jedného dňa sa prepneme zo slovenčiny do angličtiny. Ešte väčším problémom však je, že Imagine používa syntaktické konštrukcie, ktoré žiaden „normálny“ programovací jazyk nepoužíva. Namiesto bodky „.“  v objektoch používa apostrof „‚“, priraďovanie hodnôt namiesto „=“, „:=“ sa deje príkazom „urob“, práca s premennými namiesto toho aby programátor napísal premennú a pred ňou symbol priradenia, porovnania či iný operátor, ktoré automaticky určia, čo sa bude diať, tak musí napísať dvojité úvodzovky ak priraďuje hodnotu “  a dvojbodku :, ak chce použiť už priradenú hodnotu a množstvo iných vyumelkovaných konštruktov, s ktorými som sa v živote nestretol, a to mám za sebou niekoľko desiatok programovacích jazykov (ak započítam jednotlivé verzie) od strojového kódu, cez Asembler, Basic, Pascal, Fortran, Cobol, LISP, PHP, C. C++, Perl, … (prvýkrát som „programoval“ ako 12 ročný na Brnenskom veletrhu v stánku Nemeckej spolkovej republiky). Imagine je prostredie, v ktorom síce možno napísať aj skutočne komplexné projekty, ale žiak v neskoršej praxi síce využije algoritmy, ktoré ho učiteľ či on sám sa naučil, ale na syntax môže, či skôr musí čo najskôr zabudnúť.
  • Lazarus – hlavne na stredných školách sa donedávna či dokonca aj v súčastnosti toto prostredie naďalej používa. Je to  nasledovník Borland Pascalu, sám som najprv v Turbo Pascale a neskôr Borlad Pascale profesionálne programoval.  Jeden čas moje programy LIBRIS, BIBLIS, OSUD, … používalo takmer 200 slovenských knižníc a doteraz LIBRIS ešte niekoľko mestských, obecných a podnikových  knižníc používa. Kedže firma Borland Borland Pascal prestala vyvíjať, aj ja som časom prešiel na Lazarus (obávam sa, že v tomto prípade ide o Nomen Omen – zmŕtvychvstanie odumrelého jazyka. PASCAL bol pôvodne navrhnutý, ako jazyk na výuku programovania, mal viesť programátorov k čistému štýlu programovania, ale keďže za týmto jazykom  nikdy nestála dostatočne veľká firma, presadili sa programovacie jazyky, z ktorých mnohé vedú ku „hnusnému“ kódu) . Napriek vyššie uvedenému, asi by všetci učitelia programovania mali čo najskôr zabudnúť na Lazarus. Ich žiaci ho takmer určite v čase, keď nastúpia na pracovný trh nevyužijú, jediný dôvod prečo ich v tomto prostredí učiť je, aby sme my učitelia dožili dôchodku 🙂
  • PYTHON – skriptovací jazyk, ktorý je silne škálovateľný, možno v ňom používať korytnačiu grafiku, ale zároveň sa v ňom dajú robiť veľmi rozsiahle a komplexné projekty. Napriek tomu, že je to interpretačný jazyk (čo za bežných okolností spôsobuje pomalý beh programu), existujú moduly, vďaka ktorým program napísaný v PYTHONE môže bežať porovnateľne rýchlo, ako program napísaný v Céčku. Je to objektovo orientovaný jazyk, v ktorom možno pracovať i procedurálne. Osobne by som kolegom učiteľom/učiteľkám vrelo odporúčal, učiť programovanie v tomto jazyku. Žiaci, ktorí v svojom profesionálnom živote programovať nikdy nebudú ho zvládnu v podobnom móde, ako teraz pracujú v Imagine. Tí ktorí majú danosti programátora, systémového analytika, kreatívneho grafika, … sa v ňom ľahko zrealizujú a nebudú mať problém s prechodom na ľubovoľný iný bežne používaný programovací jazyk.

 

 

Testovanie PISA

02.04.2025

Dnes sa naša škola zapojila do medzinárodného testovania PISA. Keď som v minulosti čítal články o tom, ako Burkina Faso či iné štáty v našom povedomí „menejcenné“ sa v takýchto testoch umiestňujú lepšie, či aspoň porovnateľne s nami, tak mi to bolo podozrivé. Už mi to podozrivé nie je, už možno tuším, kde je pes zakopaný.

Ku dňu učiteľov: Zákaz umelej inteligencie na školách?

28.03.2025

Prajem všetko najlepšie svojim kolegom a kolegyniam, učiteľom a hlavne učiteľkám, ku dňu učiteľom. Neviem, či to Komenský naozaj napísal: „Učiteľ by mal menej učiť a o to viac naučiť.“ Po zákaze mobilov na školách nám možno hrozí aj zákaz umelej inteligencie. Silne parafrázujem výrok kohosi múdrejšieho, než som ja: „Dnešná škola [...]

3D tlač (3). 10 najčastejších otázok

09.03.2025

Keď som sa učil pracovať s 3D tlačiarňou, pravidelne som kládol otázky umelej inteligencii Gemini. Položil som jej otázku: Vygeneruj 10 najčastejších otázok o 3D tlači. UI vygenerovala týchto 10 otázok a zároveň vygenerovala stručné odpovede.

pellegrini

Pellegrini vo Vatikáne vyzval na jednotu v záujme spoločných hodnôt

03.04.2025 21:38

Delegácia prezidenta SR pricestovala na návštevu Svätej stolice pri príležitosti národnej púte.

Juraj Blanár

Blanár požiadal Španielsko o poskytnutie systému protivzdušnej obrany na území SR

03.04.2025 21:15

Blanár svojho rezortného kolegu o systém PVO požiadal v súvislosti s prítomnosťou španielskych vojakov na Slovensku.

Výbor pre hospodárske záležitosti Denisa Saková

Saková: O záchrane fabrík pred Trumpovými clami budeme rokovať s Bruselom. Poslanec Smeru obhajoval postup USA

03.04.2025 19:30

Ministerka hospodárstva Denisa Saková prehlásila, že štát pripravuje pomoc pre automobilky a aj malých či stredných podnikateľov.

musk, vance

Musk podľa Vancea bude Trumpovým poradcom aj po svojom odchode z funkcie

03.04.2025 19:18

Časť Trumpovho okolia a jeho spojencov podľa Politico frustruje Muskova nepredvídateľnosť.

Tibor Menyhért

Tak dlho sa hádali na maličkostiach, až z toho bola veličkosť

Štatistiky blogu

Počet článkov: 168
Celková čítanosť: 517720x
Priemerná čítanosť článkov: 3082x

Autor blogu

Kategórie