Bilo je subotnje poslijepodne u svibnju
i odjednom sam shvatio
da je sljedećeg dana Majčin dan,
a nisam svojoj majci nabavio ništa,
pa sam počeo razmišljati
što bih trebao svojoj majci pokloniti za Majčin dan?
Pomislio sam, zašto joj ne bih napravio
interaktivnu čestitku
koristeći Scratch softver koji sam razvijao
sa svojom istraživačkom grupom na MIT-u?
Razvili smo ga tako da ljudi mogu lako stvoriti
vlastite interaktivne priče, igre i animacije,
te ih međusobno dijeliti.
Pomislio sam kako bi ovo bila prilika za korištenje Scratcha
da napravim interaktivnu čestitku za moju mamu.
Prije nego li sam ju napravio,
pomislio sam pogledati
na stranicu Scratcha.
Tijekom zadnjih nekoliko godina, klinci diljem svijeta
od 8 godina na dalje, su dijelili svoje projekte,
i zapitao sam se je li itko od tih 3 milijuna ljudi
podijelio svoju čestitku za Majčin dan.
U tražilicu sam upisao
"Majčin dan"
i bio iznenađen i obradovan vidjeti popis
desetaka i desetaka čestitki za Majčin dan
koji se pojavio na stranici Scratcha,
mnogo njih u zadnjih 24 sata
od kampanjaca baš poput mene.
Počeo sam ih gledati. (Glazba)
Vidio sam jednu koja je prikazivala macu
i njenu mamu kako joj čestita Majčin dan.
Autor je vrlo obzirno ponudio
ponovnu reprodukciju za svoju mamu.
Sljedeća je bila interaktivni projekt u kojem,
kada pomaknete miš preko slova iz "Sretan Majčin dan",
otkrijete slogan za Majčin dan.
(Glazba) U ovome je autorica izrekla pripovijest
o tome kako je morala 'guglati' da sazna
kada je Majčin dan.
(Tipkanje) I kada je saznala kada je Majčin dan,
poslala je majci posebnu poruku
o tome koliko ju voli.
Uživao sam gledajući ove projekte
i sudjelujući u njima.
Ustvari, toliko su mi se svidjeli, da sam, umjesto da napravim svoj projekt,
poslao mami linkove desetaka ovih projekata. (Smijeh)
I zapravo, reagirala je upravo onako kako sam se i nadao da hoće.
Vratila mi je porku i rekla
"Ponosna sam što imam sina koji je stvorio softver
koji dopušta ovoj djeci da naprave čestitke za Majčin dan svojim majkama."
Dakle moja mama je bila sretna, stoga sam bio i ja.
no zapravo sam bio i sretniji zbog još jednog razloga.
Bio sam sretan jer su ovi klinci koristili Scratch
upravo na način na koji smo se nadali da hoće.
Dok su stvarali interaktivne čestitke za Majčin dan,
vidjelo se da su stvarno
postajali tečni s novim tehnologijama.
Što mislim pod tečni?
Mislim da su postali sposobni izražavati sebe
i svoje ideje.
Kada neki jezik pričate tečno,
to znači da možete napisati unos u svoj dnevnik
ili reći vic nekome ili napisati pismo prijatelju.
Slično je s novim tehnologijama.
Pišući, stvarajući ove interaktivne čestitke za Majčin dan,
ovi klinci pokazuju da stvarno postaju
tečni u novim tehnologijama.
Možda vas ovo neće iznenaditi,
jer ljudi često imaju osjećaj
da današnja mladež može raditi štošta s tehnologijom.
Svi smo čuli da se o mladeži priča kao o "digitalnim domorocima".
No skeptičan sam u vezi ovog termina.
Nisam siguran bismo li ih trebali tako zvati.
Kada bolje pogledate, kako to točno mladi
provode vrijeme s novim tehnologijama?
Često ih vidite u ovakvim situacijama
ili ovakvim,
i nema dvojbe da su mladi
dobro upoznati sa surfanjem
i dopisivanjem i igranjem.
No to vas ne čini tečnim.
Današnji mladi ljudi imaju mnogo iskustva
i dobro su upoznati s interakcijom u novim tehnologijama,
no mnogo manje novih tehnologija stvaranju
i manje izražavju sebe novim tehnologijama.
Gotovo kao da mogu čitati
ali ne i pisati s novim tehnologijama.
I zanima me kako možemo pomoći mladima da postanu tečni
tako da mogu pisati s novim tehnologijama.
To stvarno znači da moraju znati pisati
vlastite računalne programe, odnosno programirati.
Ljudi povećano počinju prepoznavati
važnost učenja programiranja.
U nedavnim godinama, bilo je
stotine novih organizacija i stranica
koje pomažu mladima da programiraju.
Pogledajte online i vidjet ćete mjesta poput Codecadamy
i događaje poput CoderDojo
i stranice poput Djevojke koje programiraju,
ili Crnkinje programiraju.
Čini se da se svi priključuju.
Na početku ove godine,
na prelasku u novu godinu,
gradonačelnik New Yorka Micheal Bloomberg
je donio novogodišnju odluku da će naučiti
programirati u 2012.
Nekoliko mjeseci kasnije, Estonija je odlučila da
bi svi prvašići trebali naučiti programirati.
To je potaknulo debatu u UK
bi li djeca trebala učiti programirati.
Nekima je od vas, kad čuju za ovo,
čudno da svi uče programirati.
Kada ljudi razmišljaju o programiranju, razmišljaju o tome
kao o nečemu što će raditi samo vrlo uska
pod-zajednica ljudi
i misle da programiranje izgleda ovako.
I zapravo, ako programiranje izgleda ovako,
i bit će samo uska zajednica ljudi
s posebnim matematičkim vještinama i tehnološkom pozadinom
koja može programirati.
No programiranje ne mora izgledati ovako.
Pokazati ću vam kako izgleda programiranje u Scratchu.
U Scratchu, da biste kodirali, samo spajate djelove zajedno.
U ovom slučaju, uzmete pomičan blok,
spojite ga u grupu,
a grupe blokova kontroliraju ponašanje
drugačijih likova u vašoj igri ili priči,
u ovom slučaju kontroliraju veliku ribu.
Kada ste stvorili program, kliknete na "podijeli"
i tada dijelite svoj projekt s drugim ljudima,
te oni mogu koristiti projekt
i početi raditi na vlastitom.
Naravno, stvoriti ribu nije jedina stvar
koju možete napraviti sa Scratchom.
Od milijuna projekata na stranici Scratcha,
postoji sve od animiranih priča
do školskih projekata
do anime sapunica
do virtualnih kompleta za gradnju
do ponovno stvorenih klasičnih video igara
do anketa o političkom mišljenju
do objašnjavanja trigonometrije
do interaktivne umjetnosti, i, da,
interaktivnih čestitki za Majčin dan.
Mislim da postoji mnogo drugačijih načina
na koji se ljudi mogu izraziti koristeći ovo,
da mogu stvoriti svoje ideje i podijeliti ih sa svijetom.
I ne staje samo na ekranu.
Također možete programirati interakciju s fizičkim svijetom oko sebe.
Ovo je primjer iz Hong Konga
gdje su neki klinci napravili igru
i stvorili svoj uređaj za fizičko sučeljavanje
koje je imalo svjetlosni senzor, a svjetlosni senzor
prepoznaje rupu u ploči
te kada pomiču fizičku pilu,
svjetlosni senzor detektira rupu
i kontrolira virtualnu pilu na ekranu
te prepili drvo.
Nastavit ćemo gledati nove načine
spajanja fizičkog i virtualnog svijeta
te spanja svijeta oko nas.
Ovo je primjer iz novije verzije Scratcha
koju ćemo izdati u sljedećih par mjeseci
i ponovno gledamo kako da
vas guramo u novim smjerovima.
Evo primjera.
Koristi web kameru.
Kako pomičem svoju ruku, mogu bušiti balone
ili mogu pomicati kukca.
Ponešto kao Microsoft Kinect,
gdje interaktivno sudjelujete gestama.
No umjesto da igrate nečiju tuđu igru,
možete stvarati igre,
i ako vidite nečiju tuđu igru
možete samo reći "pogledaj unutra"
i možete vidjeti grupe blokova koji ju kontroliraju.
Postoji novi blok koji prikazuje koliko video pokreta ima,
i onda, ako nema mnogo video pokreta,
reći će balonu da pukne.
Na isti način na koji koristi kameru
da prenese informacije u Scratch,
možete koristiti i mikrofon.
Ovo je primjer projekta koji koristi mikrofon.
Dat ću vam da upravljate ovom igrom
koristeći svoje glasove.
(Cvrčci) (Vikanje)
(Smijeh)
(Pljesak)
Dok klinci stvaraju ovakve projekte,
uče programirati,
no još važnije, programiraju kako bi učili.
Jer dok uče programirati,
to im dopušta da nauče mnogo drugih stvari,
otvara mnoge druge prilike za učenje.
Opet, korisno je napraviti analogiju kroz čitanje i pisanje.
Kada učite čitati i pisati, otvaraju se
prilike za učenje toliko drugih stvari.
Kada naučite čitati, možete čitati kako biste učili.
Ista stvar je i s programiranjem.
Ako naučite programirati, možete programirati kako biste učili.
Neke stvari koje možete naučiti su ponešto očite.
Možete više naučiti o tome kako računala funkcioniraju.
No to je samo početak.
Kada naučite programirati, otvaraju vam se pravci
za učenje mnogih drugih stvari.
Pokazat ću vam primjer.
Evo još jednog projekta,
a ovo sam vidio u posjeti
jednom od računalnih klubova.
To su izvan nastavni centri za učenje u kojima pomažemo
mladim ljudima iz siromašnijih zajednica
da se nauče izražavati novim tehnologijama.
Kada sam bio u jednom klubu prije par godina,
vidio sam 13-godišnjaka koji je koristio Scratch
da bi stvorio igru ponešto poput ove,
i bio je vrlo sretan i ponosan na svoju igru,
no htio je napraviti više.
Htio je pratiti rezultat.
Ovo je bila igra u kojoj velika riba jede male ribe,
no htio je pratiti rezultat tako da se svaki put
kad velika riba pojede malu,
rezultat poveća i prati,
a on nije znao kako da to napravi.
Pa sam mu pokazao.
U Scratchu, možete stvoriti nešto što se zove varijabla.
Zvat ću to rezultatom.
To vam stvara neke nove blokove,
i također stvara semafor koji prati rezultat,
stoga svaki put kada kliknem na "promijeni rezultat", on utječe na njega.
Pokazao sam to članu kluba --
nazovimo ga Viktor -- i Viktor je,
kada je vidio da mu taj blok dopušta utjecaj na rezultat,
točno znao što treba napraviti.
Uzeo je blok
i stavio ga u program
točno tamo gdje velika riba jede malu.
Tada, svaki put kada velika riba pojede malu,
utječe na rezultat i on će se povećati.
I to stvarno djeluje.
Vidio je ovo i bio toliko uzbuđen
da je ispružio ruku prema meni
i rekao: "Hvala, hvala, hvala!"
Ono što je prošlo kroz moju glavu
je koliko učenici često zapravo zahvale svojim učiteljima
što su ih naučili varijablama? (Smijeh)
Ne događa se u većini učionica,
no to je zato što u većini učionica, kada klinci uče o varijablama,
ne znaju zašto ih uče.
To nije ništa od čega zapravo imaju koristi.
Kada učite ideje poput ove u Scratchu,
možete ih naučiti na načine koji su vama stvarno značajni i motivirajući,
kako bi razumjeli razlog zašto učiti varijable,
i vidimo da ih klinci uče dublje
i uče ih bolje.
Viktora su, siguran sam, učili o varijablama u školi,
no nije obraćao pozornost.
Sada je imao razlog da nauči varijable.
Kada učite kroz kodiranje, i kodirate kako biste učili,
učite u značajnom kontekstu i zato je to najbolji način za učenje.
Dok klinci poput Viktora stvaraju ovakve projekte,
uče važne koncepte poput varijabli,
a to je samo početak.
Dok je Viktor radio na ovom projektu i stvarao skripta,
također je učio proces dizajniranja,
kako početi s iskrom ideje
i pretvoriti ju u potpuni, funkcionirajući projekt
poput ovoga koji vidite ovdje.
Učio je mnogo drugačijih osnovnih principa dizajna
kako eksperimentirati s novim idejama,
kako kompleksne ideje razbiti na sastavne dijelove,
kako surađivati s drugima na svojem projektu,
i kako naći i popraviti greške kada stvari pođu ukrivo,
kako ustrajati
unatoč frustracijama kada stvari ne idu kako treba.
To su važne stvari
koje nisu važne samo za kodiranje.
Važne su za mnogo drugačijih vrsta aktivnosti.
Tko zna hoće li Viktor izrasti i postati
programer ili profesionalni računalni znanstvenik.
Vjerojatnost nije velika,
no bez obzira što radi,
moći će koristiti vještine koje je naučio.
Bez obzira postane li menadžer marketinga
ili mehaničar ili organizator zajednice,
te su ideje korisne za sve.
Ponavljam, korisno je koristiti analogiju s jezikom.
Kada postanete tečni u čitanju i pisanju,
to nije nešto što radite
samo da postanete profesionalni pisac.
Jako malo ljudi postane profesionalnim piscima.
No korisno je za sve da nauče čitati i pisati.
Ponovo, ista je stvar i s kodiranjem.
Većina ljudi neće postati profesionalni
računalni znanstvenici ili programeri,
no vještine kreativnog razmišljanja,
sistematskog rasuđivanja, suradnje --
vještine koje razvijate kada kodirate u Scratchu --
su stvari koje ljudi koriste nevezano što rade u svom poslovnom životu.
I ne radi se samo o poslovnom životu.
Kodiranje vam također omogućuje
da izrazite svoje ideje i osjećaje u osobnom životu.
Završit ću s još samo jednim primjerom.
Ovo je primjer koji je došao
nakon što sam poslao čestitke za Majčin dan svojoj mami,
tada je mama odlučila da želi naučiti raditi u Scratchu.
Napravila je ovaj projekt za moj rođendan
i poslala mi čestitku za rođendan u Scratchu.
Ovaj projekt neće osvojiti nagrade za dizajn,
i možete biti sigurni da moja mama od 83 godine
ne trenira da postane profesionalni programer ili računalni znanstvenik.
No rad na ovom projektu
joj je omogućio da se poveže s nekim do koga joj je stalo
i omogućio da nastavi učiti nove stvari
i nastavi vježbati svoju kreativnost
i razvijati nove načine izražavanja.
Kada pogledamo i vidimo
da Micheal Bloomberg uči kodirati,
sva djeca Estonije uče kodirati,
čak i moja mama uči kodirati,
ne mislite li da bi bilo vrijeme
da razmislite da naučite i vi?
Ako ste zainteresirani da pokušate,
ohrabujem vas posjetite stranicu Scratcha,
koja je scratch.mit.edu,
i pokušate programirati.
Puno vam hvala. (Pljesak)