Varşova’da Python kışokulu
8–12 Şubat 2010 tarihlerinde, Varşova’da, ileri seviye, bilimsel Python kışokulu düzenlenecek. Katılım ücretsiz, yalnızca yol, barınma ve yemek masrafları katılımcıya ait. Üniversitede iseniz, bilimsel programlama olduğu için fondan yararlanılabilir sanırım.
Ben Eylül’de Berlin’de düzenlenen yazokuluna katılmıştım. Varşova’daki ile konu olarak örtüştüğü için ona başvurmayacağım ama kısaca yazokulundaki gözlemlerimi yazayım:
Organizasyon sinirbilimcilerin organizasyonu gibi gözükmesine rağmen katılımcılar farklı alanlardan gelmişti. Ekonomisti, fizikçisi, mühendisi, kimyacısı, biyoloğu, meraklı herkes… Katılımcıların büyük kısmı Python bilmesine rağmen hiç bilmeyenler de vardı. Hatta ve hatta nesne-tabanlı programlama bilmeyen ve vektörel programlama konusunda fikri olmayanlar bile vardı! Yani, ben bilmiyorum, zaten kabul etmezler fikri tamamen yanlış, onun için diyorum. Bilmeyenler veya bilgisini tazelemek isteyenler için ilk gün (0. gün) hızlandırılmış bir kurs oluyor. Tüm dersler önce anlatım (2–2,5 saat) ve ardından alıştırmalar (~1,5 saat) şeklinde ilerliyor ve günde bunlardan iki set oluyor. Bir hayli yoğun bir program. Yazılım mühendisliği, kod tasarımı üstüne yaklaşımlar (“design patterns”), Python ile bilimsel programlama (MATLAB gibi kullanabilme [numpy, matplotlib, scipy]), kodu paralel çalıştırabilme, birim test yazma, hız analizi (“profiling”) öne çıkan başlıklar.
Tüm konuları hazmedemiyor insan ama çok iyi bir izlenim bırakıyor. Sadece dinlemiyorsun, elleri de zoraki kirletiyorsun. Bir de alıştırmaları zorunlu olarak 2 kişilik gruplarda yapıyorsun. Amaç birlikte çalışabilmeyi de zorlamak. İki kişinin bilgilerini paylaşmasını sağlamak. Bana farklı günlerde, ne yazık ki (!) çok bilen bir Fransız ve İtalyan arkadaş denk geldi ve onlara vektörel programlamayı anlatırken alıştırmalar güme gitti. Çok ilginçtir bu kazanım, daha sonra değineceğim. İtalyan arkadaşı çok sevdim, inanılmaz sıcak bir adamdı ama diğeri beni çok sevdiğinden ikinci gün sattı :)
Son iki gün yoğun bir şekilde 6 kişilik gruplar halinde bir projede çalıştık: Pacman! Pacman oyunu için her grup 2 adet oyuncu yazdı ve yazokulu sonunda oyuncuları kapıştırdık. Biz 4. olduk, ama beş takım vardı :) Yani çok büyük performans gösterdik anlayacağınız.
Benim kazancıma geleyim. Ben anlatılan çoğu şeyi biliyordum ama çok önemli bir şey farkettim. Bizim grup 6 kişi, biri ilk gün hastalandı, gitti. Kaldık 5 kişi. Bir İtalyan var (ilk bahsettiğimden farklı), eleman canavar. Onunla frekanslar tuttu, projeyi nasıl yaparız diye tartışıyoruz. Bir de benim ikili gruplardan partnerim olan Fransız var ki grubu hiç dinlemiyor. Hadi girişelim, ben şurayı yazacam falan, aceleye getiriyor işi. Ben kendimi görece grup çalışmasına yatkın biri olarak tanımlardım hep. 3 gün boyunca arada benim teller koptu, kendimi dışarı attım, sakinleşip yazmaya çalıştım. İşin ucunda bir şey olacağı yok ama strese sokuyorlar, geriyorlar ortamı falan. Of dedim of, ama kendimin bu konularda ne kadar tecrübesiz olduğunu gördüm. Yani kızsam kaybederiz, adamın dediği her şeye uymak da ters, birlikte kod yazarken de politik olmak gerekiyor onu farkettim. Litvanyalı bir kız vardı, onla partner olduk, birlikte projenin bize düşen ayağını yaptık. Sonunda iyi kötü işin içinden çıktık. Ben de kodlamanın ötesinde bir şey edinmiş oldum. Zaten organizatörlerde gördüğüm birlikte çalışabilme kültürü beni hayrete düşürdü. Hepsi birbirine saygılı ve paylaşımcı. Bizde pek az bulunan özellikler bunlar bence (hele bir de Boğaziçi’ndeyseniz, ÖSS sonucuyla ömrünü tamamlayan, çok fazla küçük dağ yaratıcısı ile yaşamaya alışmanız lazım).
Konferansta çalışmanın dışında yemekler de tertip edildi ve değişik insanlarla tanışma fırsatı doğdu. Çoğu doktora öğrencisi veya doktora sonrası araştırmacı. Çok iyi programlama biliyorlar genel de. Hepsinin dahil olduğu açık kaynak bir proje var ve mümkün olduğunca kendi aralarında alışveriş yapmaya çalışıyorlar. Çok teknik bir konuşma, bir an paylaşım üstüne güzel bir sohbete dönüşebiliyor. Açıkçası bunları görmek benim çok hoşuma gitti. Konferansta tanıştığım EPFL’den bir araştırmacı beni Freiburg’a sinirbilimcilerin başka bir Python çalıştayına çağırdı. O da 2 hafta kadar önceydi, oraya katıldım. Başka bir elemandan şimdiye kadar okuduğum en iyi programlama kitabını öğrenmiş oldum: The Pragmatic Programmer. Birlikte iş yaptığımız için insanlarla daha yakından tanıştık. Python bilgisi dışında bana kattığı farklı güzel şeyler oldu. Berlin’i de unutmamak gerek.
Vel hasıl-ı kelam, bilimsel Python programlama öğrenmeye meraklıysanız; sadece teknik olmasın, biraz da yazılıma dair bakış açıları öğreneyim derseniz birebir. Ayrıntılı bilgi programda var. Sinirbilim kardeşi bir alanda iseniz kullandığınız açık kaynak modüllerin yazarları orada olabilir, bakmak lazım. Bu arada, Varşova’nın soğuğu da cabası!