Založ si blog

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.

 

 

Diplomovka

15.11.2020

Obhájil som diplomovku, ani neviem ako. Sám som si ju nenapísal, predsa nie som pako. Študentky a študentíci, načo študujete, v parlamente vedomosti nepotrebujete. Predseda nám vždy ukáže, jak hlasovať treba, sám volič si za to môže, že nemá na chleba. My musíme nosiť rúška, Igor však nemusí, že sme preňho iba svoloč, zverejní statusy, o ponožkách, o [...]

Prechádzka od 1: 00 do 5: 00

14.11.2020

Poďme sa priatelia prechádzať od jednej do piatej poďme to spolu spočítať tej vláde prekliatej. Boli sme sa spolu testovať, postáli si v rade, boli sa spolu nakaziť, nech covid je všade. Poďme si spoločne vypočuť tlačovku Matelka, keď je tam tento nedouk, vypína sa telka. Spoločne sme si to skazili, pravdu má premiér, veď sme ho na jar zvolili, takže je všetko fér.

Plošné testovanie a žonglovanie s číslami (2)

10.11.2020

V predchádzajúcom článku som z matematického pohľadu analyzoval prvé kolo plošného testovania. Po druhom kole k tomu v podstate nemožno nič nové zmysluplného dodať, iba možno konštatovať Pat a Mat (Naď a Matovič) naďalej žonglujú s číslami, ako sa im zachce. Bez ohľadu, aké percento pozitívnych by v druhom kole vyšlo, bol by to dôkaz toho, že plošné testovanie Ag [...]

nemecko, polícia, polizei

Nemecká polícia zastrelila muža, ktorý sa s mačetou vyhrážal v knižnici

23.04.2024 23:40

Podľa vyhlásenia bol tento muž polícii známy už skôr. Jeho motív vyhrážania sa v knižnici zatiaľ nie je objasnený.

Systém Patriot, PVO

Le Monde: Mnohé krajiny EÚ sa nechcú s Kyjevom deliť o svoju protivzdušnú obranu

23.04.2024 21:45

Šéfovia vlád jednotlivých krajín si dávali dobrý pozor, aby neurobili žiadny konkrétny sľub.

Izrael Palestína Gaza Hamas Rukojemníci Prepustenie

Vojna v Gaze trvá 200 dní. Izrael zosilnil údery, nariadil nové evakuácie na severe

23.04.2024 20:55

Ostreľovanie severu palestínskeho územia bolo za posledný deň jedno z najintenzívnejších od začiatku vojny.

USA Izrael Gaza univerzity protesty

Polícia zatýkala na pro-palestínskych protestoch na univerzite v New Yorku

23.04.2024 19:49

Biely dom antisemitské vyjadrenia počas študentských protestov na viacerých univerzitách slovne odsúdil.

Tibor Menyhért

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

Štatistiky blogu

Počet článkov: 160
Celková čítanosť: 475912x
Priemerná čítanosť článkov: 2974x

Autor blogu

Kategórie