Bilgi İşlemsel Düşünmeden Programlamaya Ed�tör: Prof. Dr. Yasem�n GÜLBAHAR Editör: Prof. Dr. Yasemin GÜLBAHAR BİLGİ İŞLEMSEL DÜŞÜNMEDEN PROGRAMLAMAYA ISBN 978-605-241-111-7 DOI 10.14527/9786052411117 Kitap içeriğinin tüm sorumluluğu yazarlarına aittir. © 2017, PEGEM AKADEMİ Bu kitabın basım, yayım ve satış hakları Pegem Akademi Yay. Eğt. Dan. Hizm. Tic. Ltd. Şti.ye aittir. Anılan kuruluşun izni alınmadan kitabın tümü ya da bölümleri, kapak tasarımı; mekanik, elektronik, fotokopi, manyetik, kayıt ya da başka yöntemlerle çoğaltılamaz, basılamaz, dağıtılamaz. Bu kitap T.C. Kültür Bakanlığı bandrolü ile satılmaktadır. Okuyucularımızın bandrolü olmayan kitaplar hakkında yayınevimize bilgi vermesini ve bandrolsüz yayınları satın almamasını diliyoruz. Pegem Akademi Yayıncılık, 1998 yılından bugüne uluslararası düzeyde düzenli faaliyet yürüten uluslararası akademik bir yayınevidir. Yayımladığı kitaplar; Yükseköğretim Kurulunca tanınan yükseköğretim kurumlarının kataloglarında yer almaktadır. Dünyadaki en büyük çevrimiçi kamu erişim kataloğu olan WorldCat ve ayrıca Türkiye’de kurulan Turcademy.com ve Pegemindeks.net tarafından yayınları taranmaktadır, indekslenmektedir. Aynı alanda farklı yazarlara ait 1000’in üzerinde yayını bulunmaktadır. Pegem Akademi Yayınları ile ilgili detaylı bilgilere http://pegem.net adresinden ulaşılabilmektedir. 1. Baskı: Kasım 2017, Ankara Yayın-Proje: Özlem Sağlam Dizgi-Grafik Tasarım: Ayşe Nur Yıldırım Kapak Tasarım: Pegem Akademi Baskı: Sonçağ Yayıncılık Matbaacılık Reklam San Tic. Ltd. Şti. İstanbul Cad. İstanbul Çarşısı 48/48 İskitler - Ankara (0312 341 36 67) (0535 292 34 31) Yayıncı Sertifika No: 14749 Matbaa Sertifika No: 25931 İletişim Karanfil 2 Sokak No: 45 Kızılay / ANKARA Yayınevi: 0312 430 67 50 - 430 67 51 Yayınevi Belgeç: 0312 435 44 60 Dağıtım: 0312 434 54 24 - 434 54 08 Dağıtım Belgeç: 0312 431 37 38 Hazırlık Kursları: 0312 419 05 60 İnternet: www.pegem.net E-ileti: pegem@pegem.net Editörden… Teknoloji ile dönüştüğümüz bilgi çağında, bilgisayar ile problem çözme ve programlama, geleceğimizi şekillendiren beceriler olarak karşımıza çıkmaktadır. Programlama ve bilgisayar bilimi eğitimi bilgi işlemsel, algoritmik ve mantıksal düşünmeyi temel alır. Bu beceriler, karşılaştığımı problemlere daha kolay çözüm üretebilme, mantık yürütme, algoritma oluşturma ve bilgiyi işleme süreçlerini bir arada kullanarak dünyaya farklı bakış açıları ile bakmamızı, ayrıca dijital dünya ile bağ kurmamızı sağlar. 21. yüzyıl okur yazarlığında vazgeçilemeyen bu beceriler farklı yaşlarda, farklı yöntemlerle kazandırılabilmektedir. Bu beceriler, öğrencilerin gelecek kariyerleri için önemli potansiyele sahip olduğundan bu kitap, düşünme ile başlayan ve ürün oluşturma ile sonlanan dijital sürece ışık tutmak amacıyla hazırlanmıştır. Bilişim alanında görev yapan her eğitimci için farklı açıdan yararlı olacağını düşündüğümüz bu kaynağın, bu alanda yapılacak araştırma ve uygulamalara ışık tutması dileğiyle… Prof. Dr. Yasemin GÜLBAHAR Ankara, 2017 PREFACE Many countries entered 21st century raising attention to skills young generation needed to gain for their future. Using the information and communication technologies (ICTs) in everyday education with the aim of improving our learning abilities is important. However, future societies need a better social life and many new jobs opportunities. Future jobs are mostly linked with networks, working online, virtual environments, continuous learning, collaboration – all about problem solving and deeper thinking beyond ICTs. Focusing on computational thinking, Computer Science or Informatics education at schools can help to reach these goals. Science education in upper secondary schools is entering the fifth decade of its existence in the world. To be prepared for jobs of the 21st century, students must not only be digitally literate but also understand key concepts of computer science, and manage to combine both theoretical principles and practical skills. They need to be capable of algorithmic thinking and of solving problems in other subject areas as well as other areas of their lives. Almost a common opinion nowadays is that fundamentals of algorithms and programming are key concepts of informatics education in schools. Especially learning to code is becoming more and more popular among pupils with a focus on web design and programming of mobile devices. There is a huge interest in computational thinking as a means of explaining the thinking processes in computer science in education. Attention has been directed towards the identification of a set of skills, which can be considered to comprise a broad definition of computational thinking, and which encompass logical and problem-solving skills as well as thought processes applied by computer scientists in their work. A broad approach to computational thinking sees it as a problem-solving process that includes (but is not limited to) the characteristics such as abstraction, decomposition, algorithmic thinking, evaluation and generalisation. Professor Dr. Valentina Dagiene, Vilnius University, Lithuania Winner of Ada Lovelace Computing Excellence Award (2016) Founder of International Challenge on Informatics and Computational Thinking “Bebras” (2004) Bölümler ve Yazarları Editör: Prof. Dr. Yasemin Gülbahar 1. Bölüm: Bilgisayar Bilimi Eğitimine Giriş Doç. Dr. Serhat Bahadır KERT Yıldız Teknik Üniversitesi 2. Bölüm: Düşünme Becerilerinin Önemi Doç. Dr. Ercan TOP Abant İzzet Baysal Üniversitesi 3. Bölüm: Bilgi İşlemsel Düşünme Tanımı ve Kapsamı Doç. Dr. İbrahim ÇETİN Abant İzzet Baysal Üniversitesi Prof. Dr. Zülbiye TOLUK UÇAR Abant İzzet Baysal Üniversitesi 4. Bölüm: Bilişsel Araçlar ve Bilgi İşlemsel Düşünme Yrd. Doç. Dr. Polat ŞENDURUR Ondokuz Mayıs Üniversitesi 5. Bölüm: Bilgisayar Bilimi Eğitiminde Kavram ve Kuramlar Doç. Dr. İbrahim ÇETİN Abant İzzet Baysal Üniversitesi Yrd. Doç. Dr. Muhammet BERİGEL Karadeniz Teknik Üniversitesi 6. Bölüm: Bilgisayar Bilimi Eğitimi Kapsamı Zehra SAYIN Milli Eğitim Bakanlığı 7. Bölüm: Bilgisayar Bilimi Eğitimi için Öğretim Yöntemleri Doç. Dr. Filiz KALELİOĞLU Başkent Üniversitesi Yrd. Doç. Dr. Fatma KESKİNKILIÇ Ahi Evran Üniversitesi 8. Bölüm: Bilgisayarsız Bilgisayar Bilimi (B3) Öğretimi Doç. Dr. Filiz KALELİOĞLU Başkent Üniversitesi vi Bilgi İşlemsel Düşünmeden Programlamaya 9. Bölüm: Bilgi İşlemsel Düşünme ve Teknolojik Oyuncaklar Arş. Gör. Mehmet Fatih ERKOÇ Yıldız Teknik Üniversitesi 10. Bölüm: Blok Tabanlı Programlama Doç. Dr. Erman YÜKSELTÜRK Kırıkkale Üniversitesi Arş. Gör. Serhat ALTIOK Kırıkkale Üniversitesi 11. Bölüm: Metin Tabanlı Programlama Yrd. Doç. Dr. Celal Murat KANDEMİR Eskişehir Osmangazi Üniversitesi 12. Bölüm: Eğitsel Robotlar ve Bilgi İşlemsel Düşünme Yrd. Doç. Dr. Memet ÜÇGÜL Kırıkkale Üniversitesi 13. Bölüm: Disiplinlerarası Öğretim Yaklaşımı: Bilgi İşlemsel Düşünme ve FeTeMM Yrd. Doç. Dr. Bahadır YILDIZ Hacettepe Üniversitesi 14. Bölüm: Bilişim için Öğretmen Eğitimi Prof. Dr. Şirin KARADENİZ Bahçeşehir Üniversitesi 15. Bölüm: Bilgi İşlemsel Düşünme Becerisi Nasıl Değerlendirilir? Arş. Gör. Dr. Sabiha YENİ Yıldız Teknik Üniversitesi 16. Bölüm: Bilgi İşlemsel Düşünme ve Programlama Konusunda Değişim ve Dönüşümler Prof. Dr. Yasemin GÜLBAHAR Ankara Üniversitesi İÇİNDEKİLER Editörden.............................................................................................................................. iii Preface....................................................................................................................................iv Bölümler ve Yazarları............................................................................................................v 1. BÖLÜM BİLGİSAYAR BİLİMİ EĞİTİMİNE GİRİŞ Amaçlar...................................................................................................................................1 Özet ........................................................................................................................................1 Giriş.........................................................................................................................................2 Bilgisayar Bilimi: Nedir? Ne Değildir?................................................................................3 Bilgi ve İletişim Teknolojileri ve Enformatik İlişkisi........................................................7 Bilgisayar Bilimleri Eğitiminde Yapılandırmacılık ve İnşacılık.......................................9 Neden Bilgi İşlemsel Düşünme?........................................................................................13 Bilgisayar Bilimleri Eğitiminde Vizyon Değişimi...........................................................16 Sonuç.....................................................................................................................................19 Kaynakça..............................................................................................................................20 2. BÖLÜM DÜŞÜNME BECERİLERİNİN ÖNEMİ Amaçlar.................................................................................................................................23 Özet ......................................................................................................................................23 Giriş.......................................................................................................................................24 Düşünme Nedir...................................................................................................................24 Düşünmeyle İlgili Çalışmalar............................................................................................24 Tarihsel Bakış Açısı.......................................................................................................25 Psikologların Düşünme Hakkındaki Çalışmaları.....................................................25 Bilgi-İşlem Yaklaşımı....................................................................................................26 Güncel Uygulamalar ve Yansımalar............................................................................27 Düşünme Becerileri............................................................................................................30 Bilgi İşleme.....................................................................................................................32 Sorgulama......................................................................................................................32 Yaratıcı Düşünme .........................................................................................................33 Değerlendirme...............................................................................................................33 viii Bilgi İşlemsel Düşünmeden Programlamaya Düşünme Becerileri Neden Önemli.................................................................................34 Düşünme Becerilerinin Öğretimi.....................................................................................35 Öğretmenin Rolü..........................................................................................................36 Sonuç.....................................................................................................................................37 Kaynakça..............................................................................................................................38 3. BÖLÜM BİLGİ İŞLEMSEL DÜŞÜNME TANIMI VE KAPSAMI Amaçlar.................................................................................................................................41 Özet.......................................................................................................................................41 Giriş.......................................................................................................................................42 Eğitim Tarihinde Bilgi İşlemsel Düşünme.......................................................................44 Bilgi İşlemsel Düşünmenin Tanımı..................................................................................45 Bilgi İşlemsel Düşünmenin Eleştirisi................................................................................46 Operasyonel Tanımlar........................................................................................................50 İnşacılık Bakış Açısıyla Bilgi İşlemsel Düşünme.............................................................51 Bilgi İşlemsel Düşünmenin Temel Bileşenleri.................................................................54 Problem Çözme.............................................................................................................54 Problem Türleri.............................................................................................................57 Problemleri Bileşenlerine Ayırma ..............................................................................58 Soyutlama.......................................................................................................................60 Algoritmik Düşünme ...................................................................................................63 Algoritmanın Değerlendirilmesi.................................................................................67 Örüntü Tanıma ve Genelleme.....................................................................................69 Sonuç.....................................................................................................................................72 Kaynakça..............................................................................................................................74 4. BÖLÜM BİLİŞSEL ARAÇLAR VE BİLGİ İŞLEMSEL DÜŞÜNME Amaçlar.................................................................................................................................79 Özet.......................................................................................................................................79 Giriş.......................................................................................................................................80 Bilişsel Araç Nedir?.............................................................................................................80 Bilişsel Modeller ve Bilişsel Araçlar..................................................................................83 Model Nedir ve Nasıl Tanımlanır?..............................................................................83 İçindekiler ix Bilgi İşlemsel Düşünme ve Bilişsel Araçlar Arasındaki İlişki..................................85 Programlama Bir Bilişsel Araç Mıdır?..............................................................................86 Programlama Bilişsel Araç Olarak Nasıl Kullanılır?.......................................................90 Uygun Programlama Dilini Belirleme.......................................................................91 Öğrenciye Destek Sağlama...........................................................................................93 Sonuç.....................................................................................................................................97 Kaynakça..............................................................................................................................98 5. BÖLÜM BİLGİSAYAR BİLİMİ EĞİTİMİNDE KAVRAM VE KURAMLAR Amaçlar...............................................................................................................................101 Özet.....................................................................................................................................101 Giriş.....................................................................................................................................102 Kavram Yanılgısı................................................................................................................102 Bütüncül Yaklaşımlar........................................................................................................106 Kavram İmajı...............................................................................................................106 Değişim Kuramı .........................................................................................................107 APOS Kuramı..............................................................................................................111 Görselleştirme....................................................................................................................113 Eşli Programlama..............................................................................................................118 İş Yaşamında Eşli Programlama................................................................................120 Eşli Programlamanın Pedagojisi...............................................................................120 Pratikte Eşli Programlama ........................................................................................123 Sonuç...................................................................................................................................125 Kaynakça............................................................................................................................127 6. BÖLÜM BİLGİSAYAR BİLİMİ EĞİTİMİ KAPSAMI Amaçlar...............................................................................................................................133 Özet.....................................................................................................................................133 Giriş.....................................................................................................................................134 A-12 Düzeyinde Bilgisayar Bilimi Eğitimi.....................................................................134 Dünyada Bilgisayar Bilimi Eğitimi .................................................................................137 Farklı Yaşlarda Bilgisayar Bilimi Eğitimi........................................................................145 Okul Öncesi Bilgisayar Bilimi Dersi Konu Bileşenleri.................................................146 x Bilgi İşlemsel Düşünmeden Programlamaya İlköğretim Bilgisayar Bilimi Dersi Konu Bileşenleri....................................................147 Orta Öğretim Bilgisayar Bilimi Dersi Konu Bileşenleri...............................................149 Sonuç...................................................................................................................................151 Kaynakça............................................................................................................................153 7. BÖLÜM BİLGİSAYAR BİLİMİ EĞİTİMİ İÇİN ÖĞRETİM YÖNTEMLERİ Amaçlar...............................................................................................................................155 Özet.....................................................................................................................................155 Giriş.....................................................................................................................................156 Bilgisayarsız Bilgisayar Bilimi Öğretimi.........................................................................159 Blok Tabanlı Uygulamalar ile Bilgi İşlemsel Düşünme Becerisi Öğretimi................161 Metin Tabanlı Ortamlar ile Bilgi İşlemsel Düşünme Becerisi Öğretimi....................165 Robot Uygulamalar ile Bilgi İşlemsel Düşünme Becerisi Öğretimi...........................167 Robot mu Robotik mi?...............................................................................................168 Eğitimde Neden Robotlara İhtiyaç Duyarız?...........................................................169 Disiplinlerarası Uygulamalar ile Bilgi İşlemsel Düşünme Becerisi Öğretimi...........173 Sonuç...................................................................................................................................175 Kaynakça............................................................................................................................178 8. BÖLÜM BİLGİSAYARSIZ BİLGİSAYAR BİLİMİ (B3) ÖĞRETİMİ Amaçlar...............................................................................................................................183 Özet.....................................................................................................................................183 Giriş.....................................................................................................................................184 Bilgisayar Kullansak mı Kullanmasak mı?.....................................................................184 B3 Etkinliklerinin Olası Katkısı.......................................................................................185 B3 Öğretimi ile İlgili Projeler...........................................................................................187 Bilgisayarsız Bilgisayar Bilimi Projesi (CS Unplugged - Computer Science Unplugged) ........................................................................................................................188 Bilgisayarsız Code.org Projesi..........................................................................................191 Eğlence için Bilgisayar Bilimi Projesi (CS4FN - Computer Science is For Fun) .....192 Keşf@ - Kodlamayı Keşfediyorum Projesi ....................................................................193 Bilge Kunduz Projesi.........................................................................................................195 B3 Etkinliklerinin Tasarlanması ve Uygulanması ........................................................199 İçindekiler xi B3 Etkinlikleri ile Yapılan Araştırmalar Ne Söylüyor?..................................................201 Sonuç...................................................................................................................................203 Kaynakça............................................................................................................................204 9. BÖLÜM BİLGİ İŞLEMSEL DÜŞÜNME VE TEKNOLOJİK OYUNCAKLAR Amaçlar...............................................................................................................................207 Özet ....................................................................................................................................207 Giriş.....................................................................................................................................208 Oyun ve Çocuk Gelişimindeki Rolü...............................................................................210 Oyunun Türleri .................................................................................................................214 Oyunun Ayrılmaz Parçası Oyuncaklar ve Gelişimdeki Rolü......................................216 Teknolojik Oyuncaklar ....................................................................................................218 TanPro-Kit....................................................................................................................220 Dash & Dot..................................................................................................................222 littleBits.........................................................................................................................222 BBC micro:Bit..............................................................................................................223 Osmo Coding..............................................................................................................225 Cubetto.........................................................................................................................225 Tern...............................................................................................................................226 KIBO.............................................................................................................................227 Makey Makey...............................................................................................................228 LEGO WeDo................................................................................................................230 PicoBoard / PicoCricket.............................................................................................231 Fisher Price Code-a-Pillar..........................................................................................232 Bee-Bot.........................................................................................................................233 Sonuç...................................................................................................................................234 Kaynakça............................................................................................................................236 10. BÖLÜM BLOK TABANLI PROGRAMLAMA Amaçlar...............................................................................................................................241 Özet.....................................................................................................................................241 Giriş.....................................................................................................................................242 Programlama Öğretimi ...................................................................................................242 xii Bilgi İşlemsel Düşünmeden Programlamaya Programlama Araçları......................................................................................................245 Blok Tabanlı Programlama Araçları.........................................................................246 Scratch .........................................................................................................................248 Alice..............................................................................................................................248 App Inventor................................................................................................................249 Blok Tabanlı Programlama ile İlgili Akademik Çalışmalar...................................250 Blok Tabanlı Programlama ve Bilgi İşlemsel Düşünme ..............................................253 Blok Tabanlı Programlama ile İlgili Etkinlikler ve Organizasyonlar .........................260 Sonuç...................................................................................................................................261 Kaynakça............................................................................................................................263 11. BÖLÜM METİN TABANLI PROGRAMLAMA Amaçlar...............................................................................................................................267 Özet.....................................................................................................................................267 Giriş.....................................................................................................................................268 Programlama Paradigmaları............................................................................................269 Programlama Dili Öğretiminde Pedagojik Yaklaşımlar...............................................271 Mini Dil Yaklaşımı......................................................................................................271 Nesne Öncelikli Yaklaşım..........................................................................................272 Prosedürel Öncelikli Yaklaşım..................................................................................272 Nesne Önce Prosedürel Sonra Yaklaşımı.................................................................272 Prosedürel Önce Nesne Sonra Yaklaşımı.................................................................273 Fonksiyonel Öncelikli Yaklaşım................................................................................273 Sözde Dil Öncelikli Yaklaşım....................................................................................274 Eğitsel Metin Tabanlı Programlama Dilleri...................................................................275 Blok Tabanlı Programlamadan Metin Tabanlı Programlamaya Geçiş.......................281 Bilgi İşlemsel Düşünme ve Metin Tabanlı Programlama.............................................284 Sonuç...................................................................................................................................289 Kaynakça............................................................................................................................292 İçindekiler xiii 12. BÖLÜM EĞİTSEL ROBOTLAR VE BİLGİ İŞLEMSEL DÜŞÜNME Amaçlar...............................................................................................................................295 Özet.....................................................................................................................................295 Giriş.....................................................................................................................................296 Robotlar..............................................................................................................................296 Eğitsel Robotlar .................................................................................................................297 Eğitsel Robotların Tarihi..................................................................................................298 Eğitsel Robot Setleri....................................................................................................300 Lego Mindstorms EV3................................................................................................301 Bee-Bot.........................................................................................................................302 Robbo............................................................................................................................302 Cubelets........................................................................................................................303 Ozobot..........................................................................................................................303 Arduino Robot.............................................................................................................303 Raspberry Pi Kamera Robot......................................................................................304 Eğitimde Robotik Çalışmalar...........................................................................................304 Eğitsel Robotlar ve Bilgi İşlemsel Düşünme..................................................................306 Eğitsel Robotların Avantajları..........................................................................................309 Eğitsel Robotlar ve Bilgi İşlemsel Düşünme Konusunda Yapılan Araştırmalar.......311 Sonuç...................................................................................................................................313 Kaynakça............................................................................................................................314 13. BÖLÜM DİSİPLİNLERARASI ÖĞRETİM YAKLAŞIMI: BİLGİ İŞLEMSEL DÜŞÜNME VE FeTeMM Amaçlar...............................................................................................................................319 Özet.....................................................................................................................................319 Disiplinlerarası Öğretim Yaklaşımı.................................................................................321 Disiplinlerarası Öğretim Yaklaşımının Günümüze Yansıması FeTeMM (STEM) Yaklaşımı.............................................................................................................324 FeTeMM Eğitiminin Öğrenenlere Katkıları..................................................................326 Bilgi İşlemsel Düşünme....................................................................................................329 Bilgi İşlemsel Düşünme ve FeTeMM..............................................................................331 Sonuç...................................................................................................................................334 Kaynakça............................................................................................................................336 xiv Bilgi İşlemsel Düşünmeden Programlamaya 14. BÖLÜM BİLİŞİM İÇİN ÖĞRETMEN EĞİTİMİ Amaçlar...............................................................................................................................341 Özet.....................................................................................................................................341 Giriş.....................................................................................................................................342 Bilgisayar Bilimi Eğitimcileri İçin Yeterlikler................................................................342 Bilgisayar Bilimi Eğitimcileri İçin Başlangıç Eğitimi....................................................345 Bilgisayar Bilimi Eğitimcileri İçin Hizmet İçi Eğitim...................................................349 Sonuç...................................................................................................................................354 Kaynakça............................................................................................................................356 15. BÖLÜM BİLGİ İŞLEMSEL DÜŞÜNME BECERİSİ NASIL DEĞERLENDİRİLİR? Amaçlar...............................................................................................................................359 Özet.....................................................................................................................................359 Giriş.....................................................................................................................................362 Bilgisayar Bilimi Eğitiminde İnşacılık Yaklaşımı ve Otantik (Performans Temelli) Değerlendirme ............................................................................363 Bilgi İşlemsel Düşünme Becerisini Değerlendirme için Genel Çerçeve Önerileri.............................................................................................................................367 Brennan ve Resnick’in Değerlendirme Yaklaşımı Önerileri..................................368 Seiter ve Foreman’ın Değerlendirme Yaklaşımı Önerileri ....................................373 Koh, Basawapatna, Bennett ve Repenning’in Değerlendirme Yaklaşımı Önerileri.......................................................................................................................374 Gouws, Bradshaw ve Wentworth’ün Değerlendirme Yaklaşımı Önerileri..........376 Değerlendirme Türleri......................................................................................................377 BİD Becerisini Biçimlendirici Değerlendirme........................................................377 BİD Becersini Düzey Belirleyici Değerlendirme....................................................382 Bilgi İşlemsel Düşünme Becerisini Değerlendirmede Olası Güçlükler ....................386 Bilgi İşlemsel Düşünme Becerisi Değerlendirme ile İlgili Öneriler ..........................388 Kaynakça ...........................................................................................................................391 İçindekiler xv 16. BÖLÜM BİLGİ İŞLEMSEL DÜŞÜNME VE PROGRAMLAMA KONUSUNDA DEĞİŞİM VE DÖNÜŞÜMLER Amaçlar...............................................................................................................................395 Özet.....................................................................................................................................395 Giriş.....................................................................................................................................396 Bilgisayar Bilimi Eğitimi Kavramsal Olarak Nasıl Farklılıklar Gösteriyor?..............396 Bilgisayar Bilimi Eğitiminde Hangi Yeterlikler Hedefleniyor?....................................398 Bilgi İşlemsel Düşünme ve Programlama Becerisi Neden Herkes için Gerekli?......402 Gelecek ve Teknolojinin Rolü..........................................................................................406 Sonuç...................................................................................................................................409 Kaynakça............................................................................................................................410 Yazarlar Hakkında.............................................................................................................411 1 BİLGİSAYAR BİLİMİ EĞİTİMİNE GİRİŞ Amaçlar Özet Bu bölümü bitirdiğinizde: Bilgisayar bilimleri, sadece bir araç olarak bilgisayar kullanımı temelinde ele alınamayacak kuramları ve uygulama süreçlerini içeren bir disiplindir. Özellikle, matematik alanından gelen araştırmacıların bilgisayar bilimlerine oldukça önemli katkıları olduğu ifade edilebilmektedir. Alan yazında bilgisayar bilimleri ve enformatik kavramlarının birbirlerinin yerine kullanıldığı görülmektedir. Enformatik içerisinde, enformasyonun organizasyonu ve dönüştürülmesi, temel çalışma alanı olarak tanımlanmakta ve bilgi ve iletişim teknolojileri bu süreçler de kullanılan araçları tanımlayan bir kavram olarak göze çarpmaktadır. Bilgisayar bilimleri eğitiminde, inşacılık önemli bir pedagojik yaklaşım olarak ön plana çıkmaktadır. Temel çerçevesi, Jean Piaget ile çalışarak onun yapılandırmacı kuramlarından etkilenen Seymour Papert tarafından ortaya konulan inşacılık anlayışında, bireysel yapılandırmanın üretim süreçlerinde etkili bir biçimde ortaya çıktığı benimsenmektedir. Tasarımdan yansıtmaya doğru ilerleyen işlem adımları, inşacı öğrenme ortamlarındaki temel uygulama basamaklarını oluşturmaktadır. Bilgisayar bilimlerinin toplumsal hayatın bir parçası haline gelmesinde en önemli faktörlerden birisi olarak, bilgi işlemsel düşünme gösterilebilir. Soyutlama başta olmak üzere, bilgisayar bilimciye ait düşünme biçiminin toplumsal hayata uyarlanması, bilgi işlemsel düşünmenin temelini oluşturmaktadır. Bu boyutuyla, bilgisayar bilimi eğitimine yeni bir vizyon kazandırmış olması bilgi işlemsel düşünmenin önemini arttırmaktadır. Genel olarak ele alındığında, Seymour Papert’in ilk çalışmalarından günümüze, ortaya konan vizyon değişiminin, tamamen bir teknoloji eğitimi olarak görülen bilgisayar bilimleri eğitimi sürecini disiplinlerarası ve tüm toplumu etkileyecek biçime dönüştürdüğü görülmektedir. hh Bilim ve teknoloji kavramlarının kullanımları arasındaki farkı açıklayabilecek, hh Bilgisayar biliminin tanımını yapabilecek, hh Bilgisayar biliminin neden bir bilim olarak tanımlandığını tartışabilecek, hh Bilgisayar bilimi ve Enformatik arasındaki ilişkiyi açıklayabilecek, hh Enformasyon bilgi ve veri arasında karşılaştırma yapabilecek, hh Bilgisayar bilimlerinde yapılandırmacılık ve inşacılık arasındaki farkı tartışabilecek, hh Bilgi işlemsel düşünme çalışmalarının önemini örneklerle açıklayabilecek ve hh Bilgisayar bilimleri eğitiminde vizyon değişiminin kuramsal temellerini açıklayabileceksiniz. Anahtar Kavramlar: Bilgisayar bilimi, bilim ve teknoloji ilişkisi, bilgi ve iletişim teknolojileri, enformatik, yapılandırmacılık, inşacılık. 2 Bilgi İşlemsel Düşünmeden Programlamaya Giriş Bir çocuğun, önündeki küçük metal parçaları birleştirerek hayalindeki robotu tasarlamaya çalışmasından, bir heykeltıraşın, taşı biçimlendirerek şaheserler ortaya koyma uğraşına kadar her meslek ve yaş düzeyinde, karşılaşılan problemler ve bu problemlere bulunan çözümler benzer karakteristik özellikler göstermektedir. Çünkü problemin karmaşıklık düzeyinden bağımsız olarak, birey, karşılaştığı her sorunda, temel düşünme becerilerini kullanmakta ve Resim 1. Metal parçalarla çözüme ulaşmaya çalışmaktadır. Bu ortak nokrobot tasarımı ta göz önüne alındığında, bilgi toplumunun (Mustafa Kert-Yaş 7) eğitim ihtiyaçları içerisinde, düşünme becerisinin önemli bir yer tuttuğu ifade edilebilir. Son yıllarda, bilgi işlemsel düşünme kavramı etrafında tartışılan bu toplumsal gereksinim, insanın özünde var olan, ancak sistematik ve organize bir biçime dönüştürülerek geliştirilebilecek; soyutlama, algoritmik düşünme, parçalara ayırarak çözümleme, otomasyon gibi alt beceri kümelerini içermektedir. Bu beceri kümeleri, bilgisayar bilimleri eğitimi içerisinde de; modelin tasarımı, algoritmanın oluşturulması, programın geliştirilmesi ve hata kontrolü vb. uygulama aşamalarında sıklıkla kullanılmakta ve geliştirilmeye çalışılmaktadır. Bir bilgisayar bilimcinin, kendi üretim süreçlerinde yoğun olarak kullandığı bu becerilerin, toplum gündeminde yer alması, bilgisayar bilimleri eğitimine yeni bir bakış açısıyla bakılması gerekliliğini ortaya çıkarmıştır. Mesleki bir eğitim sürecinin, disiplinlerarası bir düşünme eğitimi sürecine dönüşmesi, bilgisayar teknolojisi başlığıyla ele alınan araç odaklı yaklaşımın, yerini, bilgisayar bilimleri disiplini olarak tanımlanan ve kuramsal temellere dayanan eğitim anlayışının almasını sağlamıştır. Ortaya çıkan yeni eğitim anlayışı, bilgi işlemsel düşünmeden programlamaya kadar geniş bir bakış açısıyla ele alınması gereken içerik ve uygulamalar bütününü kapsamaktadır. Bu bölümde, öncelikle, bilgisayar bilimleri eğitiminde her geçen gün belirginleşen yeni vizyonun açıklanabilmesi için, bilgisayar biliminin temel tanımları ve bilgisayar teknolojisi kavramından farklılaştığı noktalar, alan yazın temelinde ele alınmıştır. Ardından, bilgi ve iletişim teknolojileri ile enformatik arasındaki ilişki, enformasyon özellikleri çerçevesinde, karşılaştırmalı olarak sorgulanmaya çalışılmıştır. Temel tanımlar ve kavramsal ilişkilerin ardından, bilgisayar bilimleri eğitiminde pedagojik boyutlar üzerinde durulmuş ve Seymour Papert’in ilk olarak ortaya koyduğu inşacılık yaklaşımının özellikleri, Jean Piaget’in yapılandırmacılığı Bilgisayar Bilimi Eğitimine Giriş 3 arasındaki kesişim noktalarıyla birlikte sunulmuştur. Ek olarak, tüm değişen bilgisayar bilimleri eğitim anlayışının merkezinde yer alan, bilgi işlemsel düşünme kavramı; ön plana çıkma nedenleri; temel tanımları, toplumsal hayat içerisindeki yeri, teknolojik ve ekonomik boyutlarıyla açıklanmaya çalışılmıştır. Son bölümde ise, bilgisayar bilimleri eğitiminde vizyon değişimi, Jeanette M. Wing’in vizyon odaklı yaklaşımı ve bilgi işlemsel düşünme kavramının ortaya çıkışından günümüze, kendi vizyonlarını ortaya koyan bilim insanlarının bakış açılarıyla ele alınmıştır. Bilgisayar Bilimi: Nedir? Ne Değildir? Son yüz yıl içerisinde, sık aralıklarla şekillenen toplumsal gelişim ve üretkenlik anlayışı, günümüzde, bilgisayar bilimlerinin anahtar rol oynadığı teknolojik üretim süreçlerini merkezine alan bir bakış açısını beraberinde getirmiştir. Bireylerin günlük yaşamları içerisinde karşılaştıkları ve her geçen an daha fazla ihtiyaç hissettikleri birçok araç, bilgisayar temelli ya da bilgisayar ile ilişkili uygulamalar yoluyla ortaya çıkarılmaktadır. Ruesink (2015), bilgisayar bilimlerinin topluma sağladığı faydaları, “6 şaşırtıcı yol” başlığı altında şu şekilde sıralamaktadır: • Problemleri çözme ve çözümleri iyileştirme • Kişi ve kurumları koruma • Eğitimi iyileştirme • İletişimi geliştirme • Organize ve düzenli yardımlaşma • Toplumun her alanına olumlu katkı Sıralanan bu başlıkları ele aldığımızda, toplumun her boyutunu etkileyen disiplinlerarası bir bilimsel yaklaşımdan söz edildiği görülmektedir. Temel olarak, bilgisayar bilimleri, insanlık tarihinin ilk dönemlerinden günümüze kadar var olan; matematik, fen bilimleri, eğitim bilimleri, sosyal bilimler gibi birçok bilim dalının çalışmalarına katkı sağlamakta ve bu katkının oranı, bilgi toplumunun gelişimi ile birlikte her geçen gün artmaktadır. Ancak, diğer temel bilim alanlarında, yıllar içerisinde kazanılmış olan bilimsel ve pedagojik derinliğin bilgisayar bilimleri içerisinde henüz ortaya çıkmadığı ifade edilebilir. Örneğin, bilgisayar bilimleri eğitiminin kapsamı, hangi yaş grubundan itibaren verilmesi gerektiği, yöntemleri ve bu eğitim sürecinde kullanılması gereken öğretim araçları, günümüzde, bilim insanları arasında önemli tartışma konularını oluşturmaktadır. Bu tartışmalar, öncelikli olarak, “bilgisayar bilimi nedir?” sorusunun, yıllar içerisinde değişkenlik gösteren ifadelerle yanıtlanmış olmasından kaynaklanmaktadır. Peter J. Denning, bu soruyu biraz daha özelleştirerek yeni bir biçime dönüştürmüş, “Bil- 4 Bilgi İşlemsel Düşünmeden Programlamaya gisayar bilimi bir bilim midir?” sorusunun yanıtlarını aramıştır. Denning (2005)’e göre bilgisayar bilimleri, bilimsel disiplin olarak, enformasyon süreçleri ve bu süreçlerin dünya ile etkileşimlerini ele almaktadır. Newell, Perlis ve Simon (1967), diğer disiplinlere ilişkin açıklamaları da kullanarak; bitkilerin incelendiği çalışmalar botanik, hayvanlar üzerine yapılan çalışmalar zooloji, yıldız gözlemlerine dayalı çalışmalar astronomi bilim dalları olarak adlandırıldığı gibi, bilgisayar ile ilgili çalışmaların da bilgisayar bilimini ortaya çıkardığını ifade etmişlerdir. Bir kavramın ne olduğu ve ne olmadığı tanımının incelenmesiyle net bir biçimde görülebilmektedir (McGuffee, 2000). Bu bağlamda, bilgisayar biliminin alan yazında geçen tanımları üzerinde ortak noktaları incelemek genel bir çerçevenin çizilebilmesi için önemli görülmektedir. Alan yazında, bilgisayarların kullanıldığı çalışmaların kuramsal temellerine vurgu yapılan tanımlar göze çarpmaktadır. Booth (2001), bilgisayar bilimini; derin matematik temellere dayanan teknik bir disiplin olarak açıklamıştır. Bilgisayar temelli fiziki ürünlerin ortaya çıkışında, programlama dilleri kullanılmaktadır, programlama dillerinin kullanımı ise algoritma, mantık ve sayısal bilgi işlem süreçleri gibi çalışma alanları ile ilişkilendiğinden bilgisayar bilimleri ve matematik bağlantısı kurgulanabilmektedir. Geçmişten günümüzde, matematik biliminin bir parçası olarak bilgisayar biliminin gelişiminde önemli rol alan çok sayıda bilim insanı olmuştur. Blaise Pascal ve toplama çıkarma makinası, mantık ve ikili aritmetik üzerine çığır açan çalışmaları ile Gottrfried Leibniz, Charles Babbage ve onun analitik motoru, ilk bilgisayar programcısı olarak tanınan Ada Lovelace, mantık bilimci ve matematiksel dil yapısının öncüsü George Boole, kuramsal makineleriyle Alan Turing, modern bilgisayar çağının ilk dönemlerine büyük katkısıyla John von Neumann ve kuramsal programlamada yeni bir dönemi ortaya koyan çalışmalarıyla Dana Scott, bilgisayar bilimine katkıları olan önemli matematikçiler arasında sıralanabilmektedir (Faust, 1989). Bu bilim insanlarının çalışmaları incelendiğinde, bilgisayar ve matematik alanlarının birbirleri arasındaki sıkı ilişki belirgin bir şekilde görülebilmektedir. ETKİNLİK ÖNERİSİ Tarihi süreçler içerisinde, bilgisayar bilimine katkı sağlamış matematikçilerin çalışmalarını araştırarak bu çalışmaların bilgisayar bilimine nasıl katkı sağladığını açıklayınız. Matematik biliminin cevap aradığı temel soru “Ne?” sorusudur, Mühendislik içerisinde ise “Nasıl?” sorusunun cevabının bulunması hedeflenir, bilgisayar bilimi ise bu iki sorunun birlikte sorulduğu bir bilim alanı olarak dikkat çekmektedir