Çocuklar İçin Programlama

 

scratch-kitap

 

Hakan Ataş ile beraber yazdığımız Scratch kitabımız ikinci baskısına girmek üzere. Hakan hocam sağolsun, ilk kitapta olduğu gibi ikinci baskıda da tüm yükü üstleniyor bana yapacak pek birşey kalmıyor. Bu vesile ile ilk baskıdaki giriş yazısını sizlerle paylaşmak istedim.

Ayrıca CoderDojo mentörlerimiz kendi eğitim markalarını oluşturdular bu vesile ile onları da kutlamak istiyorum.

Cansu Yalçıner – Çırak Okulu

Rüya Yalçın – Tekne47

Eser Epözdemir – Yaratıcı Araştırmalar Platformu (YAP)

Yolları açık olsun :)

Giriş yazısını ekliyorum

 


 

Merhaba Genç!

Bu kitabı senin için yazdık ama sen bu satırları okumayıp, doğrudan konulara başlayacaksın ki bizce de en doğrusu bu, izin verirsen senin yerine velilere ve öğretmenlere bir kaç noktadan bahsetmek istiyoruz. İstersen, tabii ki okuyabilirsin, ilgini çekebilir.

Sevgili Veli & Sevgili Öğretmen,

Bu kitabı elinize aldıysanız, kafanızda çocuklarımızın teknoloji ile arasının nasıl olması gerektiğine dair birçok soru olmalı diye düşünüyoruz. Teknoloji birçok diğer alanla benzer özellikler içeriyor. Örneğin, çocuğunuz mutfaktan çıkmıyor olabilir, ama bunu iyi veya kötü bir şey olarak tanımlamadan önce mutfakta ne yaptığını anlamamız gerekiyor. Sürekli bir şeyler mi yiyor, yoksa sürekli yemek mi yapıyor. Yemesi de kötü birşey değil tabii ki ama yemek yapmayı da öğrenmesi gerekiyor. Hatta yemek yapmaktan keyif alan bir çocuğu desteklemek, ona iyi araçlar almak, metotları öğrenebileceği kaynaklara ve öğrenme/deneme tekniklerine yönlendirmek gereklidir. Arada bir aşçının yanında durması, yaptıkları hakkında gerçekçi yorumlar alabilmesi de çok önemli. Teknoloji konusunda hevesli gençlerin durumu da aslında aynı. Üretiyorlar mı ?  Tüketiyorlar mı ? Asıl sorumuz bu.

Peki nedir bu iyi araç gereçler ve metotlar ?

Teknolojik Araçlar

Yazılım yazabilmek insanın doğal ortamda yapabileceği bir şey değildir. Yazılım yazmayı öğrenmek için üst düzey bilişsel deneyimler yaşanması gereklidir. Yazılım dilleri bu tarz bir iş için hazırlanmış standartlardır. Yazılım dillerini öğrenmek ve öğretmek hep çok zor olmuştur lakin bu konuda yapılan son çalışmalar işleri biraz değiştirdi. Siyah ekranda saatlerce yazı yazılan ortamlardan, Scratch gibi sürükle bırak yapılan yazılım dillerine gelmiş bulunuyoruz. Scratch bir tür görsel programlama dilidir (visual programming language). Bu tip dillerin en önemli özelliği yazım hatalarına (syntax error) izin vermemeleridir. Bunun dışında görsel ve işitsel projelerin yapılması bu dillerde kolaylaştırılmıştır. Bu yüzden öğrenilmesi oldukça kolaydır.

Yazılım 1-2 yıllık yoğunlaştırılmış bir eğitimle çözülebilecek bir sorun değildir, çizim yapmaya benzer. Bir çocuk 2-3 yaşında çizim yapmaya başlarsa, çevresindeki nesneleri görüşü zamanla değişir ve çizim yapmadığında bile çizim yeteneğini geliştirmeye devam eder. Belirli motor becerileri ve deneyimi kazandığında oldukça iyi çizmesi işten bile değildir. Bu yüzden programlama eğitimine 4-5 yaşında başlamak gerekmektedir. Bunun amacı çocuğun hemen proje geliştirmesi değildir. Bu sistemlere aşina olması sağlanıp, günlük hayattaki mekanizmaları anlaması hedeflenmelidir. Küçük yaşta bu farkındalığı kazanan çocuklar için programlama öğrenmek çok daha kolay olacaktır.

Ayrıca öğrenmek için bir yazılım dilini seçerken, bu dilin bize uzun vadede yararlarına bakmak gerekmektedir. Bu yüzden belirli ticari amaçlarla üretilmiş ve belirli firmalara ait olan dilleri seçmek hatalı bir davranış olabilir. Bu firmalar, gelecekte kendi çıkarları gereği bu dilleri kapatabilir veya amaçlarını tamamen değiştirebilirler. Bu yüzden bizler kendi çocuklarımıza bir yazılım öğrettiğimizde bu yazılımın *özgür yazılım olmasını istiyoruz. Bu sayede bu dil herkese açık oluyor ve topluluklar tarafından yönetiliyor. Aynı şey donanım kullanırken de geçerlidir. Örneğin, bu kitapta anlatılan makey makey adlı ürün *açık donanım kategorisine giriyor. Açık donanım olan bir ürünü herkes üretebililiyor dolayısıyla hem fiyatı oldukça uygun oluyor, hem de çeşitliliği yüksek oluyor.

 

Yöntem

Madem çocuklarımızın geleceğin üreticileri olmalarını istiyoruz, bu konuda da bazı şeyleri netleştirmemiz gerekiyor. Özellikle büyük şehirlerde üretim yok denecek kadar az ve hızla azalmaktadır. Üretim mekanlarının yerini toplantı salonları aldı, bunu geri dönüştürmemiz lazım yoksa herkes pazarlamacı, taşımacı veya hizmet elemanı olacak; bu şekilde güzel yarınları hayal etmek pek mümkün değil. Üretim mekanlarını hatırlamaya çalışalım; bu tip mekânlar dağınıktır, bir mekanın derli toplu olması oranın tanıtım amaçlı kullanıldığını gösterir. Üretim mekanlarında bir çok ufak tefek alet edavat ve bir çok sarf malzemesi bulunur. İçerisi canlıdır, sürekli birşeyler üretilir. Son yıllarda birçok eğitim kurumunun “üretim yapıyoruz” iddiasıyla bir kaç pahalı makina alıp, odanın kullanım saatlerini sınırlayıp, makineler bozulmasın diye kimseye elletmediklerine maalesef şahit oluyoruz. Bir mekanın değeri orada çalışanlar ve o çalışanların ürettikleridir, içerideki pahalı ekipmanlar değil bunu unutmamalıyız

  • Çocuklar kopyalar, bozar, değiştirir. Hatta tüm insanlar böyle öğrenir. İnsan ustalaşana kadar kopya çeker, hatta büyük endüstriler bile bu kopyalama yöntemleri üzerine kuruludur (everything is a remix). Çocukların kopyalamasına izin ve fırsat veriniz.
  • Bozmak bir aletin işlevi dışında kullanılmasıdır, tıpkı yoğurt kabından saksı yapmak gibidir. “Çocuğunuz hacker olmak zorunda” diyoruz, çünkü 20.yüzyıl bize endüstri standartlarını getirdi, bunların birçok yararı vardı ama en önemli zararı çeşitliliği azaltmasıydı. Bu yüzden size sunulan aletlerle yetinmek zorunda değilsiniz, onları bozmak, işlevi dışında kullanmak en önemli hakkınızdır.
  • Hata, öğrenmenin en önemli unsurudur, lakin eğitim sistemi doğruları, başarıyı sever. Bırakın hata yapsınlar başka türlü öğrenemezler. Bunu sizden özellikle talep etmedikleri sürece, onlara doğruyu göstermeyin,. Bir insana öğrenmeyi öğretmek verilebilecek en güzel hediyedir.

Bu yazıda geçen konular sadece bizim fikirlerimiz değil, tartıştığımız birçok usta/uzman ile karar verdiğimiz ortak fikirler, bu yüzden buradaki fikirlerin sahipleri yok. 

‘Eğer daha ilerisini görebildiysem bunun sebebi devlerin omuzları üzerinde durmamdır’

Bu kitabı verdiğimiz eğitimlerin ve ürettiğimiz projelerin arta kalan zamanlarında yazdık. Elimizden geldiğince basit ve yararlı olmasını hedefledik. Sizlerin bu kitaptan çok daha iyilerini yazacağınıza eminiz ve umarız en kısa zamanda bunu yaparsınız. Hatalarımız için şimdiden affola.

 

Sevgilerimizle

Hakan Ataş, Bager Akbay

 

Özgür Yazılım:

  • Her türlü amaç için yazılımı çalıştırma özgürlüğü (özgürlük 0)
  • Yazılımın nasıl çalıştığını inceleme ve kendi gereksinimleri doğrultusunda değiştirme özgürlüğü (özgürlük 1).
  • Yazılım kaynak koduna erişim bunun için bir ön şarttır.
  • Yeniden dağıtma ve toplumla paylaşma özgürlüğü (özgürlük 2).
  • Yazılımı geliştirme ve gelişmiş haliyle topluma dağıtma özgürlüğü (özgürlük 3).

Açık Donanım:

  • Tam dokümante edilmiş.
  • Gerekli yazılımlar özgür yazılım.
  • Şeması ve parça listesi, yerleşim planları verilmiş.
  • Üzerinde değişiklik yapılabilir.
  • Aynısı yeniden üretilebilir ve satılabilir.
  • Creative Commons ve diğer lisanlara sahip.

Kaynak: linux.org.tr