Egy májusi vasárnap délután
hirtelen eszembe jutott,
hogy a következő nap Anyák napja van,
én pedig még semmit sem
vettem anyumnak.
Azon kezdtem törni a fejem,
hogy ugyan mit is vegyek neki Anyák napjára.
Arra gondoltam, hogy mi lenne,
ha készítenék neki egy
interaktív anyák napi kártyát,
a Srcratch nevű szoftverrel,
amit a kutatócsoportommal
fejlesztünk az MIT Média laborjában.
Azért fejlesztettük ki, hogy az
emberek egyszerűen tudjanak
interaktív történeteket, játékokat
és animációkat készíteni,
majd megosztani azokat másokkal.
Ezért úgy gondoltam, hogy ez
egy jó lehetőség számomra,
hogy egy interaktív képeslapot
csináljak anyukámnak a Scratch-el.
Mielőtt nekikezdtem volna a
saját készítésű anyák napi képeslapnak,
gondoltam, előbb körülnézek
a Scratch honlapján.
Nos az elmúlt néhány év alatt,
gyerekek a világ minden tájáról,
- 8 évesektől egész nagyokig -
megosztották saját projektjeiket.
Kíváncsi voltam, hogy vajon a
három millió projekt közül
gondolt-e esetleg valaki más is arra,
hogy anyák napi képeslapot készítsen.
Úgyhogy a kereső mezőbe írtam:
"Anyák napja"
Meglepődve, és egyben
elragadtatva tapasztaltam,
amint a több tucat
anyák napi képeslapot
tartalmazó lista felugrott
a Scratch honlapján.
Sok közülük az elmúlt
24 órában készült,
olyan halogatók által,
mint amilyen én is vagyok.
Elkezdtem átnézni őket. (Zene)
Láttam egy olyat,
amiben egy kiscica
az anyukájának kíván
boldog Anyák napját.
A készítő pedig nagyon
tapintatosan
felajánlotta az újrajátszást
az anyukájának.
Aztán egy másik interaktív
projekt olyan volt,
hogy az egeret a "Boldog Anyák napját"
felirat fölé húzva
egy egyedi boldog anyák napi
szlogen jelent meg.
(Zene) Ebben meg a
készítő elmeséli,
hogyan is guglizta ki,
hogy mikor van Anyák napja.
(Gépelés) Mikor aztán megtudta,
hogy mikor van Anyák napja,
egy sajátos anyák napi
üdvözlést adott,
amiben megmutatta,
hogy mennyire szereti az anyukáját.
Nagyon élveztem a projektek
közötti böngészést,
jó volt nézegetni őket.
Annyira megtetszettek, hogy ahelyett,
hogy sajátot csináltam volna,
elküldtem anyukámnak egy tucat hivatkozást
ezekre a projektekre. (Nevetés)
És hál' Istennek úgy reagált,
ahogy azt reméltem.
Azt írta vissza, hogy:
"Olyan büszke vagyok arra, hogy az én fiam
egy olyan szoftvert készített,
ami lehetővé teszi, hogy a gyerekek anyák napi kártyákat csinálhassanak az édesanyáiknak."
Úgyhogy anyukám boldog volt,
ez engem is boldoggá tett,
de volt valami, ami még
ezt is fokozni tudta.
Méghozzá az, hogy ezek a gyerekek
úgy használták a Scratch-et,
ahogy mi azt eredetileg
szerettük volna.
Az interaktív anyák napi
kártyák készítése közben
valójában az új technológiák
gördülékeny
használatát sajátították el.
Mit értek gördülékenység alatt?
Azt, hogy képesekké váltak
az önkifejezésre,
saját ötleteik kifejezésére.
Amikor gördülékennyé
válik a nyelvhasználat,
képesekké válunk bejegyzéseket
írni a naplónkba,
vagy egy viccet elmesélni
egy jó barátunknak.
Ez valahogy így van az
új technológiákkal is.
Azzal, hogy írnak, készítik az
interaktív anyák napi kártyákat
azt bizonyítják ezek a gyerekek,
hogy igenis gördülékenyek
az új technológiák terén.
Ez talán nem is olyan meglepő,
mivel az emberek egyre
gyakrabban érzik úgy,
hogy a fiatalok manapság mindenfélét tudnak csinálni az új technológiák segítségével.
Bizonyára mindannyian hallották már, hogy a fiatalokat "digitális őslakosoknak" nevezik.
Azonban én egy kicsit szkeptikus
vagyok ez ügyben.
Nem hinném, hogy úgy kéne gondolnunk
a fiatalokra, mint digitális őslakosokra.
Ha közelebbről megnézzük:
Leginkább hogyan használják
a fiatalok az új technológiákat?
Sokszor ilyen helyzetben látjuk őket,
vagy ilyenekben.
És kétséget kizáróan,
a fiatalok
igencsak járatosak a
böngészésben,
a csetelésben, az sms-ezésben
és a játszásban.
De ettől még nem igazán gördülékenyek
a technológiák alkalmazását tekintve.
Tehát manapság sok fiatal
rendelkezik tapasztalatokkal
és ismeretekkel az új
technológiák használatáról,
viszont sokkal kevesebben képesek
készíteni új technológiákat,
vagy kifejezni magukat a
technológiák segítségével.
Ez majdnem olyan, mintha tudnának olvasni,
de nem tudnának írni
az új technológiákkal.
Nagyon kíváncsi vagyok, hogy
hogyan is tudnánk segíteni a fiataloknak,
hogy gördülékenyen tudjanak
új technológiákkal írni.
És ez valójában azt jelenti,
hogy képesek legyenek
megírni saját programjaik
forráskódját.
Az emberek egyre inkább
kezdik felismerni
a forráskódírás tanulásának
fontosságát.
Az elmúlt években több
száz olyan szervezet
és weboldal jött létre,
melyek segítik a fiatalokat
a forráskódírás
tanulásának folyamatában.
Ha utánanézünk online, olyan
helyeket találunk, mint a Codecademy
és olyan eseményeket,
mint CoderDojo,
esetleg olyan oldalakat, mint a Lányok,
akik kódolnak, (Girls Who Code)
vagy a Fekete lányok kódolnak.
(Black Girls Code)
Úgy tűnik, hogy mindenki
bekapcsolódik.
Ez év elején, újévkor
New York City polgármestere,
Michael Bloomberg azt
az újévi fogadalmat tette,
hogy a 2012-es évben
megtanul forráskódot írni.
Pár hónappal később
Észtország úgy döntött,
hogy az összes elsős alapiskolásnak
meg kell tanulnia forráskódot írni.
És mindez egy vitát nyitott meg
az Egyesült Királyságban arról,
hogy vajon az összes gyereknek
kell-e tudnia forráskódot írni.
Bizonyára vannak itt olyanok,
akiknek furán hangzik,
hogy mindenkit meg kéne
tanítanunk forráskódot írni.
Általában az emberek úgy
gondolnak a forráskódírásra,
mint olyasmire, amit az embereknek
csak egy szűk részcsoportja csinál.
Úgy gondolják, hogy
a forráskódírás
valahogy így néz ki.
Ami azt illeti, ha valóban
ilyen a forráskódírás,
akkor tényleg csak az embereknek
egy olyan szűk részcsoportja
fogja művelni, akik
speciális matematikai
és technológiai háttérrel
rendelkeznek.
De a forráskódírásnak nem
feltétlenül kell így kinéznie.
Hadd mutassam meg, hogy milyen
forráskódot írni a Scratch-ben.
Nincs más dolgunk, minthogy
elemeket pattintsunk össze.
Itt például fogjuk a
mozgatás elemet,
összekapcsoljuk a halommal,
és így az elemek
halmaza vezérli
a játékunkban, vagy a sztorinkban
szereplő karakterek,
esetünkben eme nagy
hal viselkedését.
Miután elkészült a programunk,
a "share"-re kattintva,
megoszthatjuk azt másokkal,
hogy aztán mások is
felhasználhassák,
vagy továbbfejlesszék
a projektet.
Persze nem csak halas
játékot lehet
készíteni a Scratch-el.
A Scratch honlapján lévő
milliónyi projekt között
van minden:
animált történetek,
iskolai tudományos projektek,
anime szappanopera,
virtuális építőkészlet,
klasszikus videójáték-
feldolgozások,
politikai véleményformálások,
háromszögtani oktatóvideók,
interaktív műalkotások,
és persze interaktív
anyák napi kártyák.
Úgy gondolom, hogy rengeteg
módja van annak,
hogy ennek segítségével az
emberek kifejezzék magukat,
hogy megvalósíthassák és megoszthassák
ötleteiket az egész világgal.
És nem kell, hogy csak a
képernyőn maradjon.
Olyan forráskódot is írhatunk, amivel
a fizikai világgal tudunk interakcióba lépni.
Itt egy példa Hong Kong-ból,
ahol néhány gyerek csinált
egy játékot,
majd megépítették a saját,
fizikai interfész eszközüket,
tettek rá egy fényérzékelőt,
ami, ha lyukat
érzékel a táblán,
tehát amikor mozgatják
a fizikai fűrészt,
a fényérzékelő érzékeli
a lyukat,
és így vezérli a virtuális
fűrészt a képernyőn,
ami elfűrészeli a fát.
Folytatni fogjuk az új
dolgok felderítését,
amivel összekapcsolhatjuk a
fizikai világot a virtuálissal,
így kapcsolatba lépve a
körülöttünk lévő valós világgal.
Ez itt egy példa a Scratch
egy új verziójára,
melyet a következő hónapokban
útjára engedünk,
és reméljük, hogy ezzel
új irányok felé
terelhetjük a felhasználókat.
Itt egy példa.
Ez egy webkamerát használ.
A kezem mozgatásával
kipukkanthatom a ballonokat,
vagy mozgathatom a bogarat.
Kicsit olyan ez,
mint a Microsoft Kinect,
ami lehetővé teszi, hogy
mozdulatokkal irányítsunk.
De ahelyett, hogy más
játékát játszanánk,
lehetőséget kapunk saját
játékok elkészítésére,
és ha meglátjuk más játékát,
egyszerűen "belenézünk",
és észrevesszük az elemek halmazait,
amik vezérlik azt.
Itt például van egy olyan elem,
ami a képkockaváltozást figyeli,
majd, ha az meghalad
egy bizonyos értéket,
akkor kipukkantja a ballont.
Ugyanúgy, ahogy ez a
kamerát használja arra,
hogy információt juttasson
a Scratch-be,
használhatjuk a mikrofonunkat is.
Itt egy példa egy projektre,
ami mikrofont használ.
Most lehetővé teszem
mindannyiuk számára,
hogy a hangjukkal
irányítsák ezt a játékot.
(Tücsökciripelés) (Kiáltások) (Rágcsálás)
(Nevetés)
(Taps)
Mialatt a gyerekek ilyen
projekteket készítenek,
megtanulnak forráskódot írni,
de ami még fontosabb,
forráskódot írva tanulnak.
Mivel a forráskódírás tanulása
lehetővé teszi számukra,
hogy új dolgokat tanuljanak,
a tanulás új lehetőségeit
tárja fel előttük.
Itt újra hasznos az írás és olvasás
analógiáját megemlíteni.
Mikor megtanulunk írni és
olvasni, az sok más lehetőséget
kínál nekünk, sok más
dolog megtanulására.
Miután megtanultunk olvasni,
olvashatunk, hogy tanuljunk.
Ugyanez a helyzet a
forráskódírással.
Ha tudsz kódolni,
kódolhatsz, hogy tanulj.
Nos pár megtanulható dolog
elég nyilvánvaló.
Például az, hogy hogyan
működik a számítógép.
De a móka csak itt kezdődik.
A forráskódírás
rengeteg új dolog
megtanulását teszi lehetővé.
Hadd mutassak egy példát.
Itt egy másik projekt,
amit akkor vettem észre,
mikor az egyik
számítógépes klubházban jártam.
Ezek amolyan iskola utáni tanulóközpontok
- melyek létrejöttét segítettük -
ahol a kevés jövedelemmel rendelkező
közösségek fitaljai megtanulhatják
kifejezni magukat és kreativitásukat
az új technológiákkal.
Szóval amikor egyszer egy
ilyen klubházban jártam,
láttam egy 13 éves fiút, aki épp
a mi Scratch szoftverünket használta,
hogy egy hasonló játékot készítsen.
Nagyon boldog volt,
büszke volt a játékára,
de többet szeretett volna.
Mérni akarta a pontszámot.
Ez egy olyan játék volt, amiben
a nagy hal megeszi a kis halat,
de ő mérni akarta a pontszámot,
hogy minden alkalommal,
amikor a nagy hal
megeszi a kis halat,
a pontszám emelkedjen.
Nem tudta, hogyan álljon neki,
úgyhogy segítettem neki.
A Scratch-ben lehet ún.
változókat használni.
Én pontszámnak hívom.
És ez pár új elemet hoz létre,
valamint egy kis
eredményjelzőt is készít,
így ha a "change score"-ra kattintok,
akkor növeli a pontszámot.
Megmutattam ezt a
klubháztagnak
- nevezzük Viktornak -
és amikor
Viktor ezt meglátta,
azonnal tudta,
hogy hogyan alkalmazza.
Fogta az elemet,
betette a programjába,
pont oda, ahol a nagy hal
megeszi a kis halat.
Így minden alkalommal, mikor a
nagy hal megeszi a kis halat,
emelkedik a pontszám,
egy pont adódik hozzá.
És ami azt illeti, működik.
Amikor a kisfiú ezt meglátta,
annyira izgatott lett,
kinyújtotta felém a kezét,
és azt mondta, "Köszönöm,
köszönöm, köszönöm."
És az jutott eszembe,
hogy vajon a tanárok hányszor
kapnak köszönetet a diákjaiktól
a változók megtanításáért?
(Nevetés)
A legtöbb osztályteremben
ez nem történik meg,
mivel mikor a változókról tanulnak,
a gyerekek nem tudják,
hogy miért tanulják azt.
Hisz nem tudják hol felhasználni.
Amikor a Scratch-en tanul
az ember ilyesmiket,
az valóban értelmes
és motiváló jellegű.
Így már van értelme
változókról tanulni,
és mi azt látjuk, hogy a gyerekek
sokkal mélyebben és egyben
hatékonyabban tanulják
meg azokat.
Biztos, hogy Viktornak is tanították
az iskolában a változókat,
de ő nem igazán figyelhetett oda.
Most volt oka arra,
hogy megtanulja a változókat.
Így amikor forráskódírást tanulunk,
és egyben kódírással tanulunk,
értelmes kontextusban tesszük azt,
és ez a legjobb módja a tanulásnak.
Mikor a Viktorhoz hasonló gyerekek
ilyen projekteket készítenek,
olyan fontos fogalmakat
tanulnak meg, mint a változók.
Bár ez még csak a kezdet.
Viktor, miközben ezen a projekten dolgozott,
nemcsak forráskódot hozott létre,
hanem a design folyamatát
is tanulta, valamint azt is,
hogy egy szikrányi ötletet,
hogyan alakítson egy teljes értékű,
működő projektté,
amilyen ez is itt.
Tehát megtanulta a dizájnkészítés
alapvető szabályai mellett azt is,
hogyan kísérletezzen az új ötletekkel,
hogyan bontson szét összetett ötleteket,
egyszerűbb részekké,
hogyan működjön együtt más
emberekkel a projekt keretein belül,
hogyan találja meg és javítsa
ki az apró hibákat,
hogyan legyen szívós
és kitartó olyankor,
amikor csalódás éri, amikor
valami nem jól sikerül.
Na ezek a fontos képességek,
amelyek nemcsak a forráskódírás
szempontjából fontosak.
Sok más tevékenység
esetében is fontosak.
Ki tudja, hogy mikor Viktor felnő,
nem éppen egy programozó,
vagy egy professzionális
informatikus tudós lesz belőle?
Ez nem olyan nyilvánvaló,
de függetlenül attól, hogy mi
lesz belőle,
hasznát fogja venni
ezeknek a képességeknek.
Függetlenül attól, hogy
marketingmenedzser,
autószerelő, vagy
közösségi szervező,
lesz belőle, ezek az ötletek
mindenki számára hasznosak.
Érdemes visszagondolni
a nyelvi analógiánkra.
Nem azért tanulunk meg folyékonyan
írni és olvasni,
hogy hivatásos írók legyünk.
Nagyon kevés ember
válik hivatásos íróvá.
Viszont mindenki számára hasznos
az írás és olvasás elsajátítása.
Így van ez a forráskódírással is.
A legtöbb emberből nem lesz
profi programozó és informatikus,
viszont a kreatív gondolkodás,
szisztematikus gondolkodás, együttműködés -
képességek, melyeket a Scratch-et
használva fejlesztünk ki -
olyan dolgok, amiket minden ember
fel tud használni a munkájában.
És nem csak a munkáról van szó.
A forráskódírás lehetőséget
ad arra is,
hogy kifejezzük ötleteinket és érzéseinket
a magánéletünkben is.
Hadd fejezzem be egy
újabb példával.
Ezt akkor kaptam anyukámtól,
miután elküldtem neki
az anyák napi kártyát.
Úgy döntött, hogy ő is
megtanulja a Scratch-et.
Így készült el ez a projekt,
amit a Scratch
segítségével készített a
szülinapomra.
Az biztos, hogy ez a projekt nem fog
a dizájnja miatt díjat kapni,
és biztosíthatom Önöket, hogy
a 83 éves anyukám nem készül
sem profi programozónak,
sem informatikusnak.
De ezen a projekten dolgozva
kapcsolatba tudott lépni valakivel,
akit fontos a számára,
valamint segített neki új
dolgok megtanulásában,
kreativitásának gyakorlásában,
és az önkifejezés egy
új módjának fejlesztésében.
Így hát amikor körülnézünk,
és azt látjuk, hogy
Michael Bloomberg forráskódírást tanul,
úgy, mint Észtország
összes gyereke,
és az én anyukám is,
szerintem jogos a kérdés,
miszerint:
Nem kéne nekem is
ezt tanulnom?
Ha felkeltettem érdeklődését,
merem ajánlani,
hogy látogasson el
a Scratch honlapjára,
- scratch.mit.edu -
és próbálja ki a forráskódírást.
Köszönöm szépen. (Taps)