Mayıs'ta bir cumartesi öğleniydi,
ve birden ertesi günün
Anneler Günü olduğunu fark ettim,
ve annem için bir şey almamıştım,
bu yüzden Anneler Günü için,
anneme ne almalıyım diye düşünmeye başladım.
Düşündüm ki, neden ona
benim MIT Medya Labaratuarı'ndaki araştırma grubumla
geliştirdiğim Scratch programını kullanarak
etkileyici bir Anneler Günü kartı yapmayayım?
Biz bunu insanlar kendi etkileyici hikayelerini,
oyunlarını ve animasyonlarını kolaylıkla oluşturmaları ve
sonra projelerini başkalarıyla paylaşmaları için geliştirdik.
Ve düşündüm ki, bu, annem için etkileyici bir kart
yapmam için Scratch'ı kullanmak bir fırsat olabilirdi.
Kendi Anneler Günü kartımı yapmadan önce,
Scratch'ın websitesine bir göz atmayı
düşündüm.
Ve son birkaç yıldır, tüm dünyadaki 8 ve üzeri yaşlardaki
çocuklar projelerini paylaşmıştı,
ve ben de bu 3 milyon projeden herhangi birinin
Anneler Günü kartlarını yapmış olup olmayacağını merak ettim.
Arama kutucuğuna ''Anneler Günü''
diye yazdım ve çoğu
sadece son 24 saat içinde benim gibi erteleyenler tarafından
Scratch sitesinde gösterilen
düzinelerce Anneler Günü kartlarının bir listesini
gördüğüme çok şaşırdım
ve çok memnun oldum.
Ve onlara bakmaya başladım. (Müzik)
Gördüğüm bir tanesinde bir kedi yavrusu ve annesi vardı
ve yavru annesine mutlu bir Anneler Günü diliyordu.
Paylaşımı yapan çok düşünceli bir şekilde annesine
bir tekrar izleme seçeneği öneriyordu.
Diğer bir tanesi interaktif bir projeydi;
fareyi "Mutlu Anne Günü"'nün harflerinin üzerine getirince
özel bir Anneler Günü slogan'ı ortaya çıkıyordu.
(Müzik) Bunda ise proje sahibi, nasıl Google'layıp
Anneler Günü'nün ne zaman olduğunu
öğrendiğini anlatıyordu.
Ve Anneler Günü'nün ne zaman olduğunu öğrenince
annesini ne kadar sevdiğini gösteren özel bir Anneler Günü
mesajı gönderiyordu.
Bu projelere bakmaktan
gerçekten çok zevk aldım.
O kadar sevdim ki, kendi projemi yapmak yerine,
anneme onlarca projenin linkini gönderdim. (Kahkahalar)
Ve gerçekten, annem bunu tam tahmin ettiğim gibi karşıladı.
Bana cevap yazdı ve dedi ki,
"Bu çocukların annelerine, Anneler Günü kartı göndermelerini sağlayan
bir yazılımı oğlum oluşturduğu için gurur duyuyorum."
Annem mutluydu, ve bu beni mutlu etti,
ama aslında başka bir nedenden dolayı daha mutluydum.
Mutluydum, çünkü bu çocuklar Scratch'i tam da
bizim istediğimiz şekilde kullanıyorlardı.
Çocuklar bu interaktif Anneler günü kartlarını oluştururken
onların gerçekten yeni teknolojileri
akıcı bir şekilde öğrendikleri görülüyor.
Akıcı bir şekilde derken ne mi kastediyorum?
Kastettiğim kendi ve fikirlerini
ifade etmeye başlamaları.
Bir dili akıcı şekilde öğrendiğinizde bu
günlüğünüze bu dilde yazabilir veya birine
fıkra anlatabilir veya arkadaşınıza mektup yazabilirsiniz demektir.
Yeni teknolojilerde de bu benzerdir.
Bu interaktif Anneler Günü kartlarını yazarak ve oluşturarak
bu çocuklar bu yeni teknolojileri akıcı şekilde öğrendiklerini
gösteriyorlar.
Belki bu sizi şaşırtmayacak
çünkü çoğu zaman insanlar günümüz gençlerinin
teknolojiyle her türlü şeyi yapabildiğini hissediyor.
Hepimiz gençlere "dijital yerli" dendiğini duymuşuzdur.
Ama benim bu terim hakkımda kuşkularım var.
Gençleri dijital yerliler olarak düşünmeli miyiz emin değilim.
Gerçekten baktığınızda, gençler nasıl
zamanlarının çoğunu yeni teknolojileri kullanarak geçiriyor?
Onları sık sık bu gibi durumlarda görürsünüz,
ya da böyle,
ve şüphesiz gençler
chat'te, mesajlaşmada, oyunlarda
çok rahatlar ve bunlara aşinalar.
Ama bu onları akılı yapmaz.
Gençlerin günümüzde yeni teknolojilere aşinalar ve
bu teknolojilerle deneyimleri var,
ama bu yeni teknoloji yaratmada ve kendilerini
yeni teknolojilerle kendilerini ifade etmede daha az.
Neredeyse yeni teknolojilerle okuyabiliryorlar,
ama yazamıyorlar.
Ve benim ilgilendiğim konu, bu gençlere yeni teknolojilerle
yazabilmeleri için nasıl yardım edebileceğimiz.
Ve bu demektir ki onlar kendi bilgisayar programlarını
yazabilmeliler, ya da kodlayabilmeliler.
Gittikçe insanlar kodlamayı öğrenmenin
önemini anlıyor.
Biliyor musunuz, son yıllarda
yüzlerce yeni organizasyon ve websitesi
genç insanların kodlamayı öğrenmesine yardım ediyor.
Internette baktığınızda Codeacademy gibi yerler ve
CoderDojo gibi etkinlikler ve
Kodlayan Kızlar gibi websiteleri göreceksiniz.
Veya Kodlayan Zenci Kızlar.
Öyle görünüyor ki herkes bir harekete geçme peşinde.
Biliyor musunuz, sadece bu senenin başında,
yeni yılın başında,
New York Belediye Başkanı Michael Bloomberg
Yeni yıl kararı olarak 2012'de
kodlamayı öğreneceğini söyledi.
Birkaç ay sonra, Estonya bütün
birinci sınıf öğrencilerinin kodlamayı öğrenmesi gerektiğine karar verdi.
Ve bu Birleşik Krallık'ta çocuklar kodlamayı öğrenmeli mi
tartışmasını tetikledi.
Şimdi, bazılarınız bunu duyduğunda herkesin
kodlamayı öğrenmesini biraz tuhaf bulabilir.
Çoğu insan kodlama diye düşündüğünde,
çok dar bir topluluktaki insanların yaptığı
birşey olarak düşünüyor ve kodlamayı
böyle bir şey olarak görüyor.
Ve eğer kodlama böyle bir şey ise,
kodlayabilen insanlar gerçekten sınırlı bir topluluğa ait,
özel matematik yetenekleri ve teknolojik geçmişi olan
insanlar olur.
Ama kodlama böyle olmak zorunda değil.
Size Scratch'de kodlamanın nasıl bir şey olduğunu göstereyim.
Scratchde kodlamak için blokları birbirine ekliyorsunuz.
Örneğin, bir bloğu alıyorsunuz ve
bir yığına ekliyorsunuz ve
bu blok yığınları oyununuzdaki veya hikayenizdeki
farklı karakterlerin hareketlerini kontrol ediyor,
bu örnekte büyük balığı kontrol ettiği gibi.
Programınızı oluşturduktan sonra, "paylaş"a basabilir,
ve projenizi başkalarıyla paylaşabilirsiniz,
böylece onlar da projenizi kullanabilir ve
başka projelere başlayabilirler.
Tabii ki balık oyunu yapmak Scratch ile yapabileceğiniz
tek şey değil.
Scratch websitesindeki milyonlarca proje arasında,
animasyonlu hikayelerden
okul için eğitim projelerine,
animasyon pembe dizilerden,
sanal inşaat takımlarına,
klasik video oyunlarının yapımından
politik fikir anketlerine,
trigonometri derslerinden
interaktif sanat eserlerine ve evet,
interaktif Anneler Günü kartlarına kadar her şey mümkün.
Insanların Scratch'i kullanarak kendilerini ifade etmek için
fikirlerini alıp dünya ile paylaşabilmeleri için
bir sürü farklı yol var diye düşünüyorum,
Ve bunlar sadece ekranda kalmıyor.
Etrafınızdaki fiziksel dünya ile etkileşmek için de kodlayabilirsiniz.
Hong Kong'dan bir örnek:
bir kaç çocuk bir oyun yapıyorlar ve
oyunları için bir fiziksel arayüz aygıtı oluşturuyorlar.
Aygıtın bir ışık sensörü var ve bu sensör
paneldeki deliği farkediyor,
böylece testereyi oynattıklarında,
bu ışık sensörü deliği farkedip
ekrandaki sanal testereyi kontrol ediyor
ve ağacı kesiyor.
Fiziksel ve sanal dünyayı bir araya getirmek için
ve etrafımızdaki dünyaya bağlanmak için yeni yollar
aramaya devam ediyoruz.
Bu Scratch'in yeni versiyonundan bir örnek,
bir kaç ay sonra çıkacak bu versiyon,
ve sizi yeni ufuklara doğru
yönlendirmeyi umud ediyoruz.
Mesela bir örnek:
Bu bir webcam kullanıyor.
Elimi oynattığımda, balonları patlatabiliyorum
ya da böceği oynatabiliyorum.
Biraz Microsoft Kinect gibi,
fiziksel hareketlerle etkileşerek oynanıyor.
Ama başkasının oyununu oynamak yerine,
kendi oyununuzu oluşturabiliyorsunuz,
ve başkasının oyununu gördüğünüzde,
"içine bak" diyebiliyorsunuz
ve oyunu kontrol eden kod bloklarına bakabiliyorsunuz.
Örneğin yeni bir blok var artık ne kadar video hareketi olduğunu gösteren
ve eğer bu kadar video hareketi varsa
balon patlayacak.
Kameranın Scratch'e bilgi göndermesi yöntemiyle
aynı şekilde
mikrofonu da kullanabilirsiniz.
Bu, mikrofonu kullanan bir örnek.
Bu oyunu sizin sesinizi kullanarak kontrol
etmenize izin vereceğim.
(Cırcır böceği sesleri) (Bağırmalar) (Isırma sesleri)
(Kahkaha)
(Alkış)
Çocuklar bu tür projeleri yazarken
kodlamayı öğreniyor,
daha da önemlisi kodlayarak öğreniyor.
Çünkü kodlamayı öğrenirken,
bir yandan da bir sürü başka şey öğreniyorlar,
kodlama bir sürü yeni öğrenme imkanı yaratıyor.
Okuma ve yazma ile karşılaştırmakta fayda var.
Okuma ve yazma öğrendiğinizde bu başka
bir sürü şeyi öğrenmenize imkan tanır.
Okumayı öğrendiğinizde, öğrenmek için okuyabilirsiniz.
Kodlamada da aynı durum söz konusu.
Kodlamayı öğrendiğinizde, öğrenmek için kodlayabilirsiniz.
Öğrenebileceğiniz bazı şeyler gerçekten çok açık.
Bilgisayarların nasıl çalıştığını öğrenebilirsiniz.
Ama bu sadece başlangıç.
Kodlamayı öğrendiğinizde, daha çok şey
öğrenmeniz mümkün.
Size bir örnek vereyim.
Bu ziyaret ettiğim
bilgisayar kulüplerinden birinde gördüğüm
başka bir proje.
Bu kulüpler okul sonrası eğitimi desteklemek için başlattığımız merkezler
ve düşük gelirli mahallelerden gelen gençlerin kendilerini
yeni teknolojilerle yaratıcı bir şekilde ifade etmelerine yardım ediyorlar.
Bir kaç sene önce bu kulüplerden birine gittiğimde,
Scratch programımızı kullanan 13 yaşında bir çocuk gördüm,
buna benzer bir oyun yapıyordu ve
oyunundan memnundu ve onunla gurur duyuyordu,
ama aynı zamanda daha çok şey yapmak istiyordu.
Mesela puanları kaydetmek istiyordu.
Bu büyük balıkların küçük balıkları yediği bir oyundu ama
puanları kaydedebilmek istiyordu böylece
büyük balık küçük balığı her yiyişinde
puan yükselecekti,
ama bunu nasıl yapacağını bilmiyordu.
Ben de gösterdim.
Scratch'de, bir değişken oluşturabilirsiniz,
Bunu "puan" diye adlandıralım.
Bu yeni bloklar oluşturmanızı sağlar,
ve böylece küçük bir puan kutusu puanı takip eder,
ve her "puanı değiştir"'e basışımda, puanı yükseltir.
Bunu bu kulüp üyesine gösterdim -
adı Victor'du - ve Victor
bu puan ekleyen bloğu gördüğünde
ne yapması gerektiğini bliiyordu.
Bloğu aldı
ve programa yerleştirdi
tam da büyük balığın küçük balığı yediği yere.
Böylece büyük balık küçük balığı her yediğinde
puan işliyor ve puan yükseliyordu.
Ve gerçekten de çalıştı.
Bunu gördüğünde çok heyecanlandı,
elini bana uzattı ve
"teşekkür ederim, teşekkür ederim, teşekkür ederim!" dedi.
Bu sırada benim aklımdan geçen
acaba öğretmenler ne kadar sıklıkta değişkenleri
öğrettikleri için öğrencilerinden böyle teşekkür duyarlar? (Kahkaha)
Birçok sınıfta bu olmuyor ama bu birçok sınıfta
çocuklar değişkenleri öğrenirken,
bunu neden öğrendiklerini bilmedikleri için.
Bunu kullanabilecekleri bir yer aslında yok.
Bu tür fikirleri Scratch'te öğrendiğinizde
bunu gerçekten anlamlı ve motive edici bir şekilde öğreniyorsunuz
ve değişkenleri öğrenmenizin nedenini anlıyorsunuz
ve biz çocukların böylece daha derin ve
daha iyi öğrendiğini görebiliyoruz.
Victor eminim ki okulda değişkenleri öğrenmişti,
ama öğrenmemişti, dikkat etmemişti.
Şimdi ise değişkenleri öğrenmesi için bir neden vardı.
Böylece kodlama sayesinde öğreniyorsunuz ve öğrenmek için kodluyorsunuz
ve anlamlı bir bağlamda öğreniyorsunuz - öğrenmenin en iyi şekli.
Victor gibi çocuklar bu tarz projeler yapıyor
ve değişkenler gibi önemli kavramları öğreniyorlar,
ki bu daha sadece başlangıç
Victor projesi üzerinde çalışırken ve kodlar yazarken
aynı zamanda tasarım sürecini de öğreniyordu:
nasıl bir fikir ile başlanıp
onu gelişmiş çalışan bir projeye dönüştüreceğini
burada gördüğünüz gibi.
Tasarımın bir kaç ana prensibini öğreniyordu:
yeni fikirler nasıl denenir,
karmaşık fikirler nasıl daha basit parçalara ayırılır,
projenizde nasıl başkalarıyla işbirliği yapılır,
kod hataları nasıl bulunur ve düzeltilir,
ve nasıl engeller karşısında, bir şeyler çalışmadığında
azimle devam edilir.
Bunlar çok önemli yetenekler
ve sadece kodlama ile alakalı değiller.
Bir sürü başka aktivitede de geçerliler.
Kim bilir, Victor büyüyünce programcı veya
profesyonel bir bilgisayar bilimcisi olacak mı?
Çok muhtemel değil,
ama ne yaparsa yapsın,
bu öğrendiği tasarım becerilerini kullanabilecek.
Büyüyünce pazarlama müdürü de olsa,
mekanik de olsa,
bu fikirler herkes için faydalı.
Yine dil ile olan benzerliği düşünmek faydalı.
Okula ve yazmada akıcı olduğunuzda
bu profesyonel bir yazar olmak için
yaptığınız bir şey değil.
Çok az insan yazar olabiliyor.
Ama okuma ve yazmayı öğrenmek herkes için faydalı.
Bu kodlama için de geçerli.
Çoğumuz ileride profesyonel
bilgisayar bilimcisi veya programcı olmayacağız,
ama bu yaratıcı düşünme becerisi,
sistematik analitik düşünme ve işbirliği -
Scratch'te kodlarken geliştirdiğiniz beceriler -
İşinizde ne yaparsanız yapın faydalı olan beceriler.
Ve sadece profesyonel hayatınız da değil.
Kodlamak kişisel yaşamınızda fikirlerinizi ve
duygularınız ifade etmenize de yardımcı olabilir.
Son bir örnekle bitireyim.
Bu örnek anneme Anneler Günü kartını
gönderdikten sonra annem Scratch
öğrenmeye karar verdiğinde ortaya çıktı.
Annem doğum günüm için bu projeyi yaptı
ve bana bir Scratch mutlu yıllar kartı gönderdi.
Bu proje herhangi bir tasarım ödülü kazanmayacak,
ve 83 yaşındaki annem kesinlikle profesyonel programcı
veya bilgisayar bilimcisi olmaya niyetli değil.
Ama bu proje üzerinde çalışmak annemin önem verdiği
biriyle bağlantı kurmasını sağladı,
yeni bir şeyler öğrenmeye devam etmesini sağladı,
yaratıcılığını kullanmaya devam etmesini ve
kendini yeni yollarla ifade edebilmesini sağladı.
Buna baktığımızda görüyoruz ki
Michael Bloomberg kodlamayı öğreniyor,
Estonya'lı çocuklar kodlamayı öğreniyor,
benim annem bile kodlamayı öğrendi,
sizin de kodlamayı öğrenme
zamanınız gelmedi mi?
Eğer denemek isterseniz,
Scratch websitesini incelemenizi kesinlikle öneriyorum.
scratch.mit.edu adresine gidip
kodlamayı deneyin.
Çok teşekkürler. (Alkış)