Merhaba.

Uzun süredir aklımdaki projeleri yerine getirebilmem için bir site kurmam gerekiyordu. Ancak vakit ve fırsat bulup gerçekleştiremedim. Artık kurmuş bulunuyorum. Programlama ve öğretimi uzmanlık alanıma girdiği için blogumda bu yönde aşağıdaki başlıklarda içerikler bulacaksınız;

Algoritma Tasarımı

Algoritmalar problem çözümünde yer alan çözüme giden adımların bütününe verilen bir isimdir. Bu bölümde basit algoritmalardan karmaşık algoritmalara doğru bir algoritmanın analizi nasıl yapılmalıdır, algoritma nasıl incelenir ve etkili bir algoritma nasıl kurulur gibi soruların cevaplarını arayacağız. Bunları yaparken ünlü algoritmalardan da yararlanacağız.

Programlama Öğretimi

Programlama öğretimi günümüzde eskiye nazaran daha önemli bir hal almıştır. Birkaç insanın kapalı boğuk odalarda yazılım üretmesi olmaktan çıkıp okul ve eve girmesi onu ön plana çıkarmıştır. Bu bölümde programlama öğretiminde kavramlar ve bunların nasıl öğretilmesi (kavram öğretimi) üzerinde durulacaktır.

Bilişime Yön Verenler

Bilgisayar ve sonrasında programlamanın matematik, fizik gibi öyle çok eski bir tarihi yoktur. Bu bölümde bilişimde çığır açan ünlü şahsiyetlerin biyografilerine yer verilecek. Bilgisayar ve programlama birçok disiplinin bir araya gelmesinden ötürü kimi zaman matematik, fizik, elektronik, mekanik gibi farklı alanlarda zirveleşmiş insanların hayatlarına şahit olacaksınız.

Film ve Belgeseller

Programlamanın hayal gücüyle beslenmesi gerektiğine inanıyorum. Bu sayede ilginç fikirlerden ortaya çıkan projeler ve ürünler üretilebilir. Bu bölümde teknolojiyle, bilgisayarla, gelecekle ilgili eski-yeni film/belgesel paylaşımında bulunulacaktır. Elbette paylaşımdan kastım film indireceğiz/izleyeceğiz değil. İlgili medyanın konusu ve içeriği hakkında bilgiler verilecektir.

Programlama Dilleri

Bilgisayarların üretiminden sonra onun programlaması üzerinde kafa yorulmuştur. Bu konuda birçok  yaklaşım ve paradigma üretilmiştir. Bu bölümde alt seviye dillerden üst seviye dillere kadar- bütün diller olmasa da- öne çıkmış dillerin programlamaya olan yaklaşımları, özellikleri, güçlü ve zayıf yönleri hakkında bilgiler verilecektir. Klasik bir programlama dili kitabı anlatıcılığı şeklinde bir bilgi aktarımı olmayacaktır. Bunu internette fazlasıyla zaten bulursunuz.

Programlama Kütüphanesi

Klasik öğrenim aracı olan kitaplar vazgeçilmezdir. Halen bir numaralı bilgi edinim aracıdır, öyle de kalacaktır bana göre. Bu bölümde programlama odaklı seçkin kitapların dışında genel kültür yönüyle teknoloji ve bilim eksenli kitaplardan da bahsedilecektir. Bu eserlerin birikim (muktesebat) oluşturacağını düşünüyorum.

Programlama Öğretim Araçları

Programlamayı sadece kitap veya öğretmenlerden öğrenemezsiniz. Özellikle bu işe yeni başlayanlar için üretilmiş yüzlerce yerli/yabancı telefon, tablet ve web araçları (uygulama) bulunmaktadır. Bu bölümde bu uygulamalardan detaylıca bahsedilecektir. Uygulamaların sayısı çok olduğundan bu sitede diğer bölümlerden daha çok yazı bulabilirsiniz. Uygulamalar kimi zaman telefon/tablet uygulaması olabildiği gibi web ya da paket programda olabilir. Bu uygulamaların programlama kavramlarına yaklaşımları, tasarımları, kullanılabilirlikleri ayrıntıları ile incelenecektir.

Programlama Eğitim Setleri

Programlama öğretiminde yukarıda bahsedilen uygulamaların dışında çeşitli eğitim setleri de mevcuttur. Bunlar söküp takmalı elektronik setler olabildiği gibi sadece kağıt-karton-plastik türevi materyallerde bulunmaktadır. Bu bölümde bu setler programlamaya olan katkıları incelenecektir.

Bilişimsel Düşünme (Computational Thinking)

2006 yılında Jeannette M. Wing ortaya attığı programlamayla da ciddi bir bağlantısı olan bu düşünme şekli günümüzde giderek popüler olmaya başladı. Bu bölümde bilişimsel düşünmenin temelleri, bileşenleri ve uygulamalı pratiklerinden bahsedilecektir.

Programlamayı sadece belirli bir programlama dilini öğrenme şeklinde anlarsak programlamaya ait birçok şeyi gözden kaçırmış oluruz. Bunu sadece gaz-vites-fren-debriyaj bilgisiyle araba sürmeye benzetebiliriz. Bu bilgiyle genelde her arabayı kullanabilirsiniz. Ancak tam olarak “bir araba nedir, motorda neler oluyor, motordan gelen hareket akslara nasıl aktarılıyor ve sonuçta araba nasıl hareket ediliyor”u da bilmek gerekiyor. Basit bir örnek vermek gerekirse; birçok programlama dilinde de sıklıkla kullanılan Boolean (true/false) değişken tipini kim ne zaman bulmuştur, bilişim alanındaki kitap/film/belgeseller nelerdir ya da programlama öğretimine yaklaşımımız nasıl olmalıdır, neyi hangi sırayla nasıl vermeliyiz, programlama paradigmaları nelerdir, programlama dillerinin geçmişi/detayları nelerdir? Yani, demek istediğim, kod yazmanın yanı sıra büyük bir ekosisteme sahip programlamaya ait bir kültüre/bilinçe/arka plana birikime de (eskilerin tabiriyle muktesebat) sahip olunması gerektiğini düşünüyorum. Birşeyi öğreneceksek temellerini (fundamentals), önünü-arkasını-ötesini, detaylarına da hakim olabilmeliyiz. Bu şekilde neyi, hangi amaçla, nasıl yaptığımızın ve sonucunun ne olacağının bilincinde oluruz. Bahsedilen başlıklarda geçen içerikler programlama alanına ait temel kazandırma, eksikleri tamamlama ve bu alanda bir kültür oluşturma gayesiyle yazılacaktır.

Umarım faydalı olur.