Ve trojských PUČebnách myšlenky nekalé – promiň Pascale!

Tedy především: promiň Marku Ebene, že jsem si vypůjčil motiv písničky Andulce z béčka.

Počtem vln to připomíná COVID, perioda je však mnohem delší. O čem mluvím? O diskusích jak a v čem učit studenty fyziky MFF programovat. Téma, které mí kolegové z částicové fyziky  při jakékoli vhodné (i nevhodné) příležitosti otevřou. Ani se jim nedivím, oni, stejně jako já, jsme pravidelně konfrontováni se studenty druhého či třetího bakalářského ročníku ucházejícími se o studentský projekt nebo bakalářskou práci na našem ústavu. Na otázku  – jak jste na tom s programováním, znáte nějaký programovací jazyk – pravidelně slýchám odpověď: nijak, jsem přece z matfyzu. Ano, učili jsme se Pascal, C++ ani python neznám.

Upřímně: není jednoduché najít fyzikální obor, kde student využije znalosti Pascalu. Na druhé straně dokážeme shromáždit celou řadu argumentů, proč je Pascal právě tím nejvhodnějším jazykem pro výuku základů programování.

Je-li tomu tak, určitě nejsme jediní, kteří učí Pascal. Nebo ano? Tohle se těžko zjišťuje. Mně se ale naskytla možnost do programovacích návyků studentů fyziky v různých zemích nahlédnout. V rámci projektu podpořeného Evropskou komisí Jennifer 2 pořádáme online letní školu pro studenty fyziky, kteří absolvovali 3-4 roky vysokoškolského studia. Tím, že je škola online, hlásí se lidé doslova ze všech kontinentů. Měl jsem tedy příležitost projít si materiály dvou set uchazečů od Kolumbie přes Spojené státy, Evropu až po Malajsii. Programovací dovednosti  tvoří standardní součást životopisu, studenti se chlubí širokou škálou jazyků i platforem, se kterými se seznámili. Ze dvou stovek přihlášek však ani jeden uchazeč neuvádí znalost jazyka Pascal (dokonce ani jediný český uchazeč, který je ovšem z ČVUT). Žádný z nich na druhé straně nevynechal C++ nebo python.

Pascal tedy zjevně nepatří k základnímu kurikulu studenta fyziky za hranicemi naší vlasti. Pro naše studenty to může být skvělá zpráva: mohou se prokázat znalostí něčeho, co nikdo jiný na světě neovládá! Tedy pokud je po této dovednosti někde poptávka. Ve fyzikálním výzkumu to asi není. Softwarový průmysl svého času využíval prostředí DELPHI – klon Pascalu, ale ani tohle není dnes příliš aktuální. Nakonec – žádný opravdový programátor nepoužívá Pascal.

Ano, souhlasím: Pascal je pedagogickým jazykem, naučit se programovat v něm znamená osvojit si základní návyky bez uvazování se ke konkrétnímu jazyku – ten se pak každý snadno naučí. Ale v tom případě navrhuji, abychom na MFF zrušili angličtinu a nahradili ji latinou. Je to přece daleko logičtější a pedagogičtější jazyk, cesta k dalším jazykům je díky latině usnadněná a nikoho nebudeme determinovat angličtinou.

Ještě trochu vážně: současná forma výuky programování vznikla v okamžiku, kdy se fyzikální obec rozhodla, že studentům stačí jeden semestr programování. Informatici v té chvíli prohlásili, že za jeden semestr se nikdo programovat nenaučí, a výuku převzali fyzici. Možná že i tohle je téma k debatě.