E cikkünkben az algoritmizálás oktatásának bevezetéséhez már jelenleg is rendelkezésre álló anyagokról szólunk. Az igencsak sűrűn látható hivatkozások azt próbálják bemutatni, hogy már mi mindenre lehet(ne) alkalmas most is a tanórán alkalmazva az SDT-ben felhalmozott anyag.
Mint minden kezdet, ez is nehéz volt
A hazai informatika oktatás kezdetén Kalmár László irányítása alatt a számítógép használatának oktatása szinte azonos volt a matematika és az erre erősen alapozó programozás oktatásával. Az osztott hozzáférés kidolgozása Kemény János nevét írta be az informatika nagyjai közé, és ennek révén már lehetővé vált a nem informatikusok megismertetése is a számítástudomány csodáival, és még csodásabb lehetőségeivel. Az eszköz egy egyszerű emberközeli programozási nyelv kidolgozásával vált uralhatóvá 1964-től: ez a Beginner's All-purpose Symbolic Instruction Code nevet kapta, amely röviden BASIC néven futott be igencsak sikerese pályát.
Kevesen tudják, hogy Kalmár László egyik fő kutatási területe az orvostudományban alkalmazható számítógépes módszerek kidolgozása volt, melynek eredményeként sok ma használt diagnosztikai eszköz kifejlesztése történt meg. A nagy tömegek számára a hetvenes évek közepétől a homecomputerek használata is azt jelentette, hogy meg kell tanulni BASIC nyelven programozni, hogy a néha, főleg hazánkban, igen borsos áron beszerzett, tévén megjelenített képű kis készülék valami "hasznosnak" nevezhető dolgot csináljon.
Az iskolai oktatás is próbált alapozni erre a házilagosan megszerzett tudásra, de szinte reménytelen vállalkozásnak tűnt, mivel a nálunk forgalmazott és még az emellett magánimporttal bekerült több mint kéttucatnyi géptípus beégetett interpreterei ugyan mind elvileg BASIC programot lettek volna képesek futtatni, de mind saját "tájszólást" beszélt, azaz, apró, de a felhasználó életét igencsak megkeserítő kódbeli eltérésekkel.
Programozni vagy nem programozni? Ez itt a kérdés!
A hőskor az IBM PC megjelenésével zárult le 1981-ben. A lakásokban is nemsokára megjelenő gépen a mikrogépeken szinte addig kizárólagosan futó standard BASIC mellett más programozási nyelvek is feltűntek. A FORTH, a SNOBOL próbálkozott még kisebb gépeken is, de ezek és a BASIC időközben gyakorlatilag teljesen jelentőségüket vesztették, mert egyrészt az általános iskolákban kiszorította ezeket a LOGO, másrészt a középiskolában a Pascal nyelv. A tájszólási problémák a LOGO-ban igencsak erősek voltak, és szinte megváltás volt, amikor ezeket egységesítette a Comenius LOGO. A Pascal is persze több verzióban indult el, de a Borland cég Turbo Pascal verziója igen gyorsan elfeledtette a vetélytársak próbálkozásait, és a terület egyeduralkodója lett.
Az újabb változás és egységesítés lehetősége a valódi 32 bites grafikus felület, és az ezt minden lehetőségében megjeleníteni képes multimédiás számítógép hardver megjelenésével vált valóra. A Windows fejlődése miatt tíz év alatt elavulttá váltak azok a Comenius LOGO-ban alkalmazott megoldások, amelyek akkoriban éppen a környezet fejletlensége miatt kiemelkedő programozói bravúrnak tűntek. A hardver is jelentősen fejlődött, Moore törvénye igaznak bizonyult szinte az informatikai minden területén.
A jövő közös nyelve?!
A programozás oktatása igencsak háttérbe szorult időközben, mivel az alkalmazások széles köre már nem követelte meg, hogy saját magunk készítsünk olyan programokat, amely a megoldandó feladatunknak megfelel, hanem már csak meg kell keresnünk azt a kész programot, amely a leghatékonyabb a célunk eléréséhez. És ami a legszebb benne, ezek nagy része freeware is lett. Gondoljunk csak például az egyszerű gépeken is már futó rajzprogramokból kifejlődő képátalakító, majd animációk vagy térbeli ábrák készítésére is alkalmas programok megjelenésére, és ezek számos változatára.
A programozás tudásának igénye persze igazából nem tűnt el, csak nagyon-nagyon specializáltan sok kicsi területen őrződött meg. A PHP, a JAVA vagy éppen a VRML, de mondhatnánk az SQL-re alapozó webszerver készítője is programoz, csak éppen nem az alapvető algoritmusokat valósítja meg, hanem azokra a már jól ismertként elegendő hivatkoznia egy fejlettebb programozói környezetben.
Ez a folyamat nem egyedül álló, nagyban hasonló például ahhoz, mint hogy ma már nem arra koncentrálunk a hétköznapokban, hogy ki tud otthon jobb tűzhelyet építeni, edényt készíteni, hanem hogy ki tud jobb ízű étélt főzni a készen vett tűzhelyen, de ennek ellenére a mai napig foglalkozik jó néhány ember azzal, hogy milyen lehetne a tökéletesebb tűzhely, és persze edény. Ebben a kissé távolinak tűnő hasonlatban az edény az a plusz, az a segítség, ami az elkészített dolog jóságát részben tőlünk függetlenül is garantálja, és azt szimbolizálja, hogy az elkészítő hiányosságait igyekszik az egyre jobb eszköz kiküszöbölni.
Az új lehetséges közös nyelv hazánkban már egy év óta minden oktatásban szereplő számára ingyenesen hozzáférhető. Ez a közös nyelv és környezet az Imagine, ami alkalmas a programozás oktatására éppúgy, mint rajzok készítésére, sőt igazi multimédiás alkalmazásokra is. A rendszer csodája az, hogy összetettsége dacára használható igen kevés előismerettel is speciális területeken, de képes olyan objektumorientált, eseményvezérelt, vagy éppen párhuzamos vezérlést igénylő problémák megoldására is, amely eddig inkább a professzionális alkalmazási környezetekre volt jellemző.
Zárszó gyanánt
A csoda tehát itt van előttünk. És ez alatt érhetjük az oktatásban ingyenes Imagine rendszert, de ennek SDT-ben megtalálható teljes elektronikus kézikönyvét, továbbá a digitális írásbeliség témakörben található összes anyagot a cikkben hivatkozott részeken kívül is. Ez a gyémánt még ugyan kissé érdes felszínű, de attól csiszolódik, ha kézbe fogják, használják, és alakíthatunk is rajta, ha nem teljesen illik a feladathoz. És ez már rajtunk múlik, diákokon és tanárokon.
Ez már csak tanároknak!
Bármennyire is vonzó a cím, itt már diákoknak érdekes rész nincs. Ha ezt diákként olvasod, saját magadat fosztod meg egy későbbi élménytől.
A fenti szöveg elolvasását és feldolgozását javaslom háromfős, kiscsoportos formában elvégeztetni. A három fő fejezet - múlt, jelen, jövő ‑ mindegyikét egy-egy diák olvassa el, mindegyikben 5 hivatkozás van, amelyeket igyekezzenek minél alaposabban végiglátogatni. 10 perc erre nagyjából elég. A megértett és akár papírra is kijegyzetelt információkat beszéljék meg egymással. Erre hagyjunk szintén 10 percnyi időt. Ezután kapják meg azt a tesztet, amely a megértés szintjét és az ismeretanyagban való jártasságot ellenőrzi. A csoport minden tagja külön színnel töltse ki a közös teszten az általa preferált választ. Az sem baj, ha a lehetséges három válasz közül mindegyik mást választ. A tesztre 5 perc elegendő.
Ezután jön a teszt, és persze a témakör közös megbeszélése. Kérdésként szerepelhet például a következő néhány: a programozás mennyire fontos ma? Ki gondolja úgy, hogy ez lehet egész életre szóló hivatás, vagy éppen olyan tudás, amely rövid ideig igen értékes és anyagilag is előnyös, de rövid idő alatt devalválódik? Mi az a közös alap, amely minden programozási nyelvben és mögött ott van? Mit lenne jó megtanulni, hogy bármilyen divat vagy igény jön, arra alapozva gyorsan és könnyen lehessen váltani a speciális területre szakosodott szakembernek?
A beszélgetés és vita végkicsengése remélhetőleg az lesz, hogy a programozási nyelvek csak eszközök arra, hogy a hardvert uralmunk alá vonjuk, és a nyelvek fejlődésével ez egyre inkább könnyebb lesz. De a nyelvek és a bennük alkalmazható módszerek alapjai közösek, az a programozó lesz hosszú távon sikeres, és él meg ebből, aki nem csak egy speciális nyelvben jártas, hanem az, aki ezek közös alapjait is ismeri. Aki viszont nem lesz programozó, az is várhatóan rászorul arra, hogy az életében folyó események számítógépesítésében többé vagy kevésbé részt vegyen, aktívan vagy éppen már mint csak a mások által elkészített alkalmazás használója. Ha nincs tisztában az alapvető fogalmakkal, akkor ezek kialakításába vagy fejlesztésébe esélye sincs beleszólni, el kell szenvednie ezek rossz megoldásait.
Módszertani ajánló
tantárgytantárgy | informatika |
témakörtémakör | Algoritmizálás |
évfolyam/korosztályévfolyam/korosztály | 9-12. évfolyam |
eszközigényeszközigény | internet hozzáférés, SDT használat |
módszermódszer | Csoportos munka, egyéni forrásfeldolgozás, kiscsoportos megbeszélés, tesztkitöltés, egész csoportos beszélgetés és vita |