Počítače a škola: Které části výuky informatiky zastarávají?
i Zdroj: Microsoft Designer (AI)
Zábava Článek Počítače a škola: Které části výuky informatiky zastarávají?

Počítače a škola: Které části výuky informatiky zastarávají? | Kapitola 4

Michal Rybka

Michal Rybka

4. 11. 2023 16:28 16

Seznam kapitol

1. Pravěk počítačů 2. Západ a Východ: vývoj a bastlení 3. Kdo bude programátor? 4. Daleko od hardwaru 5. Chybí něco „mezi“.

Jedna zajímavá otázka, na kterou jsem narazil na letošním Bytefestu 2023, byla ta, že dnes se vlastně už málokdo učí základy IT. Myslím tím totální základy od binární logiky, kombinačních obvodů, strojáku a vůbec té úplně nejnižší vrstvy IT. Jsou tyhle znalosti zastaralé?

Reklama

Problém s algoritmy je v tom, že je musíte chápat v určitém pořadí, pokud vám to má dávat smysl. Pokud chcete chápat celou IT, musíte vědět, jak fungují logické obvody, jak vypadá přenos signálů a co všechno se vám může při stavbě hardware vlastně podělat: Bez toho nechápete důvody, proč se desky navrhují tak, jak se navrhují, proč někdy nevadí připojení přes konektor a jindy je to neprůchozí problém. 

Z logických obvodů vyplývají procesorové architektury, z nich instrukční sady, z nich optimalizace procesorových architektur (pokud máte v instrukční sadě přímé operace s pamětí, je jenom otázkou času, až budete muset řešit cachování takových operací apod.). Z instrukčních sad plynou modely pro práci s pamětí a zabezpečení její integrity. To ovlivňuje podobu operačních systémů, ty mají svou architekturu volání, architekturu služeb a tak dále a tak dále.

To, co dnes uživatel vidí jako „program“, je nesmírně daleko od hardwaru, oddělené mnoha a mnoha vrstvami služeb a volání. V 70. letech se psalo přímo pro železo, v 80. letech to zakryly vyšší jazyky a volání systémových služeb, v 90. pak přichází opravdu komplexní systémy – a ty se postupně obalují tak, že dnes uživatelé nevidí prakticky vůbec nic. V 80. letech jste viděli všechny detaily počítačového bootu, dnes i u PC je standardem, že vidíte maximálně logo výrobce, což asi nevadí, dokud to funguje normálně.

Věc jiná je, když něco nefunguje normálně a vy se musíte ponořit do BIOSu, kde se často setkáte s terminologií, kterou vidíte poprvé. Už tam je skrytá komplexita veliká – a ještě povedenější to je, když se dostanete k bezdrátovým zařízením, které vám dovolí „odklopit kapotu“ a podívat se do detailních nastavení chování hardwaru, řízení bezdrátového provozu a práci s protokoly. 

Celou tuhle komplexitu dnes přeskakujeme a dělíme populaci efektivně na dvě části: Na tu část, která věci pouze používá – a na ty, kteří chápou něco víc, to něco, co je mezi designem a realizací takových zařízení a jejich softwaru. Je jasné, že všichni dnes musí pochopit onu uživatelskou dimenzi a její pravidla, protože bez elektroniky se dnes už prostě neobejdeme. Je ale otázka, jestli se objedeme i bez nějakého náhledu na to, jak to vlastně funguje – a jak by takový náhled měl vypadat.

Osobně si myslím, že by výuka logiky a nějaké algoritmizace a programování měla být ve společném základu, protože je to opravdu vysoce korektivní zkušenost pro každého, kdo ještě neumí uvažovat exaktně. Tahle věc vás doslova a do písmene postaví před vaši vlastní myšlenkovou nedokonalost – a je to poněkud ponižující sebereflexe. 

Dobré je skupinové programování, protože pochopíte, že existují „skupinové chyby“, které dělá prakticky každý, ať už jde o neschopnost zapsat správně „length“, pracovat správně s indexy (indexování od nuly versus od jedničky) anebo neschopnost uhlídat si správné parametry (zda se například nepokoušíte přistupovat k poli mimo jeho rozsah). Nevím o nikom, kdo by to nedělal – a ti zkušenější hned věděli, která bije. Tohle jsou věci, které vypadají technicky, ale ve skutečnosti vás jenom učí uvažovat opravdu důsledně a do detailu.

 

Předchozí
Další
Reklama
Reklama

Komentáře naleznete na konci poslední kapitoly.

Reklama
Reklama