A Scratch fejlesztését 2004-ben kezdte el a Lifelong Kindergarten csoport az MIT (Massachusetts Institute of Technology) egyetemen. Az elsődleges cél az volt, hogy a programozással még csak ismerkedő gyerekek is könnyedén alkothassanak animációkat, készíthessenek játékokat.
Maga a megnevezés angolul karcolást, karmolást jelent, de jelenti a startvonalat is, amely esetünkben sokkal jobb fordítás, mivel az egyik fő cél a programozás világában való könnyed elindulás volt.
Mi a cél?
A célok röviden összefoglalhatóak. Menő programozási környezet legyen, azaz mind a 8, mind a 18 éves diák úgy érezze, hogy nem ciki vele dolgozni. A felület átlátható, jól kezelhető legyen, amit egy színes, de nem tarka, jól tagolt felület meg is valósít. Gyors, eredményes munkát tesz lehetővé, szinte pár kattintással látványos eredményeket lehet elérni. A kész munkák megoszthatóak, így mások is egyszerűen el tudják érni azokat, tovább tudják gondolni, fejleszteni.
A gyermekek hamar megunnak egy felületet, ha az nem kínál fel különböző tevékenységeket, illetve nem elégíti ki más és más igényeiket. Épp ezért volt fontos a készítőknek a változatos alkalmazási területek kialakítása: készíthetünk animációt vagy játékot, beilleszthetünk saját képet, hangot, rajzolhatunk új szereplőket, hátteret, és alkalmazhatjuk ezeket tetszőlegesen kombinálva is.
A gyermekek figyelme hamar ellankad, ha csak hasonló tevékenységeket lehet végezni, és viszonylag hamar ki lehet ismerni a lehetőségek határait. Éppen ezért a Scratch készítői biztosították a rendszerben a fejlődés lehetőségét is, azaz a környezet újabb és újabb ismeretekkel szolgáljon az alaposabb megismerése során.
Például az alapvető programozási ismeretek megszerzése után már változók használatára is van mód, sőt listák használatára is, képsorok bonyolultabb szerkesztésére, hangok manipulálására.
Társ is kell
A folyamatos fejlődés biztosításához nem elegendő a saját kútfő, bizonyos pontokon tapasztaltabb vezető kell, aki lehet tanár és diáktárs is. Egyes parancsok alaposabb kiismerését nagyban megkönnyíti ez, bár a Súgó is rendelkezésre áll, de ezt nem fordították le teljes egészében magyarra a webes verzióban. A környezet összes lehetőségének jobb kihasználását segítik az elérhető kész alkotások is, amelyek többségében hasonló korú társak munkái, így önmagukban is motiválók lehetnek: „ha ő is képes volt rá, én is meg tudom csinálni.”
A Scratch eredeti programja szerint a különböző társadalmi helyzetű gyermekek oktatásba való bevonására is készült, így növelve az esélyegyenlőséget, ingyenessége révén a széles körű elterjedést is segítve.
A Scratch Magyarországon már 2007 nyarán kezdett ismertté válni, miután Balaton Marcell Balázs és Bernát Péter lefordították a program első változatát. Pár netes közösség érdeklődését is felkeltette a program, amely hatására az ELTE-n a fordítók elkésztették a magyar portált is néhány további egyetemista közreműködésével Turcsányiné Szabó Márta egy kurzusának keretein belül. A gyors elterjedést jelzi, hogy a 2008-as Kihívás versenyen a csapatok már Scratch-ben is elkészíthették programjaikat. Mára sajnos ez a lelkesedés alábbhagyott, bár az oldal él, de csak az első változathoz vannak elérhető anyagok.
Miért jó a kezdőknek?
A felület kialakításában arra törekedtek, hogy a kezdő programozók lelkesedését hamar letörő szintaktikai hibák lehetőségét szinte teljesen kizárják. A szöveges parancsokat használó nyelvekben ezt a rövidítések használatával igyekeznek elérni, de még így is sokkal több a hibázási lehetőség. A Scratch-ben még azzal is igyekeztek segíteni, hogy az egyes parancsok különböző színű és formájú elemeken helyezkednek el, így csak a valóban összeillő darabok illeszthetők egymás után, vagy adott esetben egymásba.
A jól áttekinthetően megtervezett környezet egy parancs értelmezőt rejt, amely képes arra, hogy ha a kódot a program futása közben változtatjuk, akkor azt kövesse, azaz a Scratch az úgynevezett dinamikus nyelvek csoportjába tartozik.
A webes változat
Korábban ingyenesen letölthető volt Windows, Mac és Linux rendszerekre is, de ma már célszerűbb inkább a legújabb webes felületen futó változatát használni. Az alkalmazás az scratch.mit.edu oldalról érhető el, a "TRY IT OUT" pontban.
Ha nem régi böngészőt használunk, akkor magyarul jelenik meg a felület, mivel felismeri a letöltés helyét. Különben több mint 40 nyelven érhető el a vizuális programozási környezet. A saját gépünkre elmenthető program, ami valójában egy tömörített fájl, ami tartalmazza a felhasznált médiaelemeket, valamint egy JSON (JavaScript Object Notation) kiterjesztésű programelemet, amely formátum egy kisméretű, szöveg alapú szabvány ember által is olvasható adatcserére. Ezt a JavaScript scriptnyelvből alakította ki egyszerű adatstruktúrák és asszociatív tömbök reprezentálására Douglas Crockford az ezredforduló körül.
A sorozat következő részében bemutatjuk a teknőcgrafikai rész használatát.
További érdekes helyek:
- Srcatch 1.0 leírás magyarul
- JSON-ról
Rozgonyi-Borus Ferenc cikke