21 Şubat 2013 Perşembe

Biyoinformatiğe Nasıl Başladım 3

Benim için sıkıntılarla geçen bir dönemin ardından nihayet yazılarıma devam ediyorum. Bu arada, Deniz'in yazısına mutlaka bir göz atmanızı öneriyorum; farklı bakış açılarıyla oluşturacağı yazılarını da merakla bekliyorum.

Toplumsal karakterimize işlemiş birkaç olumsuz özellikten biri de, bilgi ve birikime önem ver(e)mememiz. Hele yaptığınız şey uzmanlık gerektiriyorsa, birçok sıkıntıdan muzdarip oluyorsunuz. Bunlardan ilki, belki haftalarca uğraşıp didinerek elde ettiğiniz deneyimleri paylaştığınız kişilerin sanki kendileri aynı çabayı vermiş gibi, sizi herhangi bir şekilde referans vermeden sizden aldıkları bilgiyi rahatça paylaşabilmeleri. Maalesef bu tür çekinceler nedeniyle de bu blog başlaması gerekenden çok daha sonra hayata geçti. Oysa bilgiyi üreten toplumlara baktığımızda, paylaşılan bilgilerin çok hızlı bir şekilde yayılabildiğini ve kullanılabilir hale geldiğini görüyoruz; temel motivasyonun referans verebilme alışkanlığıyla ilgili olduğunu düşünüyorum. 

Bir diğer olumsuz özellik ise, bilgiyi üretme kabiliyetimizi kaybedeli çok uzun zaman oluşu ve bu nedenle de herhangi bir şeye ihtiyacımız olduğunda -tabir yerindeyse- parası neyse veriyor oluşumuz. Örneğin, internet tabanlı teknolojileri dünyada en çok kullanan milletlerden birisiyiz ancak kullandığımız cihazların plastiği de dahil olmak üzere neredeyse hiç bir parçasını biz üretmiyoruz. Hadi diyelim ki donanım üretim trenini kaçırdık; yazılımlarını da biz üretmiyoruz. Böyle olunca, sizin ortaya koyduğunuz şey ne denli değerli olursa olsun, "bizden" olduğu için kendine bir yer bulamıyor ve benimsenmiyor. Öyle olunca da ortaya komik durumlar çıkıyor; son teknoloji ürünü projelerin geliştirilmesini desteklemek üzere büyük hibeler veriyoruz ancak ne bunların çıktıları yerli pazarda kendine yer bulabiliyor (istisnalar müstesna), ne de yabancı teknoloji bağımlılığından kurtulabiliyor. Söylenecek çok şey var ancak odağımı kaybetmek istemiyorum.



Okulda yaşadığım hayalkırıklığının ardından yine de o zamanlar biyoinformatik olarak adlandırıldığını bilmediğim alanla ilgilenmeye devam ettim. Aslında yaptığım şey, çoğunlukla wikipedia makaleleri okumak ve bu alanla ilgilenenlerin kişisel web sayfalarına göz atmakta ibaretti. Bu arada, yazın birşeyler öğrenmek için bir yazılım firmasında 4 haftalık bir staj deneyimi elde ettim. Burada çok kritik bir şey öğrendim, hikayesi şöyle: Çalıştığımız birimdeki yönetici abimiz bir görev verdi; yapmam gereken şey, web tabanlı bir dosya yükleme arayüzü hazırlamaktı ve bunu JSP (Java Server Pages)'de yapacaktım. O zamanlar henüz rapidshare veya megaupload tarzı siteler yoktu ve işin kötüsü o dönemdeki HTML altyapısı da büyük dosyaların yüklenmesi için pek de uygun değildi (bunu çok sonradan öğrendim). Neyse, iki haftalık süre dolmuştu ve benim elimde sadece çabaladığımı gösterir birkaç döküman vardı ancak çalışan bir prototip oluşturamamıştım. Büyük bir emek harcadığım için bir takdir bekliyordum ancak tam tersi bir tepkiyle karşılaştım. O gün çok bozulmuştum ancak zaman geçtikçe çok kıymetli bir ders aldığımı farkettim. Şu bağlamda bir söz sarf etmişti o abimiz:
"Gerçek hayat akademiye benzemez. Akademide bir ödevi tamamlayamasan bile çözüm yaklaşımın doğruysa ve birşeyler yaptıysan en kötü ihtimalle C (2/4) gibi bir not alırsın. Ancak iş dünyasında, veya gerçek hayatta, önemli olan şey görevi bitirebilmektir. Ya A vardır, ya da F. Kimse yarım kalan bir işin parasını ödemez."

Bu söylenen sözü tüm akademik alanlara genelleştirmek yerine, temel bilimler bağlamında düşünebiliriz. Uygulamalı bilimler ise gerçek hayatın kurallarına daha yakın; ortaya somut bir şey koymak çok önemli. Benzer bir hayat dersini, aktif olarak akademi dışında hayatını sürdüren ve Bilkent'te Yazılım Mühendisliği dersi veren bir hocamızdan almıştım; çalışmayan prototipimiz bize D'ye malolmuştu. Oysa çalışması dışında her şeyi tamdı projemizin :))

Biyoinformatikle uğraşırken, ortaya koyduğunuz şeyin çalışabilir, çalıştırılabilir veya tekrarlanabilir bir şey olması çok kıymetli. Ancak böyle bir şeyi oluşturuken gerekli disiplini ve yaklaşımı nasıl ve kimden öğrenebilirsiniz? Detaylar bir sonraki yazıda :)


Sözün özü:
Bir şeyin teorisini geliştirmek çok kıymetlidir, ancak ortaya konan şeyin somutlaşması veya en azından somutlaştırılabilir olması gerçek değerini ortaya çıkarır. Konu biyoinformatik olduğunda ise bunun ya bir yazılım, ya da bir rapor olduğunu söyleyebiliriz.



Proje:
Mevzu bir yazılım geliştirmek olduğunda, kullanılabilir en iyi arayüzün bir web sayfası olduğunu söyleyebiliriz. HTML'in nasıl bir şey olduğunu keşfetmek adına basit bir web sayfası yapıp, içerisine en az iki sütunlu ve iki satırlı (2 x 2) bir tablo ekleyelim. İlk sütuna yazdığınız şeyler kalın ve italik olsun, ikinci sütundaki metinde ise en az bir web sayfasına (örneğin bu blog) link verilsin. Tamamladığınızda HTML kaynak koduna bir göz atın, düşündüğünüzden çok daha kolay olacağını göreceksiniz.

Meraklısına:
Bilkent Üniversitesi'nde verilen CS319 kodlu dersin ders kitabını edinmenizi veya en azından içindekiler kısmına bir göz gezdirmenizi öneririm. Buna ek olarak, web tabanlı teknolojiler hakkında fikir sahibi olmak için www.codecademy.com/ adresindeki basit ve aşamalı derslere de mutlaka bir göz atın.