Nasıl Yazılımcı Olalım? – I: Üniversiteli mi Alaylı mı?

Sıklıkla yazılımcı olmak isteyen arkadaşlardan bana fikir soran emailler geliyor. “Yazılımcı olmak istiyorum, ne okuyayım?” diye soruyorlar. Gerçi bu soruyu “Yazılımcı olmak istiyorum, ne yapmalıyım?” şeklinde soranlar da oluyor ama ben her halukarda “Yazılımcı olmak istiyorum, ne okuyayım?” sorulmuş gibi cevap vermeye çalışıyorum 🙂

Öncelikle şunu belirteyim en baştan: Bir şeyi ögrenmenin tek yolu üniversite okumak değildir. Hatta lise ya da ilkokul okumak ta değildir. Ama ilkokul-ortaokul-lise-üniversite gibi formal kurumlarla eğitim ve öğretim almak ve bir konuda bu yolla yetkinlik sahibi olmak, bir şeyi öğrenmenin zamanımızda en temel, en yaygın ve en kolay yoludur.

Alternatif öğrenme yolları olan insanlar farklı şeyleri deneyebilirler. Örneğin ABD’den bildiğim “home schooling” ya da “evde öğretim” bir alternatiftir. Okuldaki örgün egitimi değişik sebeplerle istemeyen ve evinde kendisi ve tuttuğu ögretmenlerle ya da ücretli kurslar yanında kilise-cami gibi cemaat organizasyonları vs. desteklerle çocuğunu eğiten ve ilkokul-ortaokul-liseyi bu şekilde bitirmesini sağlayan çok ciddi bir kitle var orada. Keşke bizde de devlet bu özgürlüğü bize tanısa; açık ki hem devlet olarak böyle bir özgürlük hem de toplum olarak böyle bir sorumluluk anlayışından çok uzağız malesef.

Ya da belki farklı toplumlarda etraftaki ilim sahiplerinden diz-dize eğitim alan kişiler vardır ya da aklıma gelmeyen başka yöntemler. Ama açık ki ülkemizde ne evden öğretim var ne de sektörümüzdeki bilgi ve tecrübeyi klasik yöntemlerle elde edebiliriz. Sektörümüze yönelik kurs vb. ögretim merkezlerinin zaten eğitim vermek gibi bir hedeflerinin olmadığını, öğretmek noktasında da yoğun bir bilgi ve eğitmen kirliliği içinde boğulduğunu, dersanecilik mantığıyla, daha çok umut sömürüsüne dönüştüğünü görmemek mümkün değil diye düşünüyorum. İyi hatırlıyorum, üniversite sınavında 3-4 sene bir şey yapamamış birinin bana elinde bu tür kurslardan birisinin broşürüyle gelip, 8-10 bin TL ödeyerek “Yazılım Mühendisliği” kursuna gitmek için bana akıl danışması, hele benim gibi birine bu yapması büyük cesaret işiydi 🙂 Burada bu konuyla ilgili güzel bir yazı var.

Yukarıda da bahsettiğim gibi, üniversite okuyarak formal bir yolla bir konuda bilgi sahibi olmak, bir şeyi öğrenmenin zamanımızda en temel, yaygın ve kolay yoludur. Lakin daha önce de bu blogda belirttiğim gibi, aslolan tutku, yetenek, gayret, azim ve disiplinli çalışma gibi sıfatlardır bir insanı bilgili, yetkin ve başarılı kılan. Bence bu noktada aslında bir insanın liseyi nerede ve nasıl okuduğu muhtemelen üniversiteyi nerede nasıl okuduğundan daha önemlidir.

Yazılım ve etrafındaki teknolojilerle ilgili herhangi bir formal eğitim görmemiş yani işletme, felsefe vb. çok farklı konularda eğitim görmüş ama belli ki tutukusu, gayreti, zekası ve akıllıca kararlarıyla kendini yetiştirmiş son derece yetkin insanlar gördüm ve beraber çalıştım. Bu insanlar bilgisayar mühendisliği vb. konularda eğitim görmemişlerdi ama şurası kesindi ki iyi eğitim almışlardı, disiplinli, çalışkan ve akıllı insanlardı. Ve bilgiye ve bilenlere karşı tevazu içindeydiler ki o seviyelere gelebildirler.

Bu duruma bir de tersinden bakalım. Üniversite okumuş olmak bilgilenme ve yetkinlik kazanma için her şeyi çözüyor mu? Tabi ki çözmüyor. Bilgisayar mühendisliği eğitimi almış olmasına, hatta lisede çok iyi yerlerde okumuş, üniversiteye giriş sınavlarında derece yapmış olmasına rağmen herhangi bir sistemli çalışma disiplini kazanmamış (daha doğrusu muhtemelen çok iyi sahip olduğu halde üniversitede ya da sektörde çalışırken kaybetmiş), bakkal vari iş yapan, ya da en temel örneğin işletim sistemi kavramlarından habersiz, yazdığı programın karmaşıklığı sorulduğunda ilk defa duymuş gibi davranan kişilerle de karşılaştım. İyi BM bölümlerinden mezun olup, daha doğru düzgün isimlendirme yapamayan, örneğin bana “Akın bey şöyle 5 dakikada bize threadleri anlatırmısınız” diyen insanlarla da karşılaştım. Bilgi ve tecrübe bu kadar da aşağılanmaz ki? Değişik kişilere atfedien Bu kadar cehalet ancak tahsille mümkün olur” bu olsa gerek. Benim 10 yaşındaki kızım, bilgiye ve bilene böyle yaklaşmıyor.

İki senelik meslek yüksek okulu bilgisayar programcılığından mezun ama pek çok bilgisayar mühendisinden daha çalışkan, daha güzel iş çıkaran kişiler de gördüm.

Sonuçta durum şu: Kimse kalkıp ta “doktor olmak istiyorum, tıp okumalı mıyım?”diye sormuyor. Bereket sormuyor 🙂 Ama “yazılımcı/programcı olmak için üniversite okumak gerekli midir?” sorusu üzerine internette tonla tartışma var. Nedir yazılımcı/programcı olmayı bu kadar basit gösteren şey bize? Ben en temel Java eğitimlerine “java” kelimesinin tarihi ve batılı dillere geçişiyle başlıyorum. Anlamak böyle bir şey çünkü, kendisinin bile 10 gün sonra ne yaptığını anlamadığı, üç-beş PHP cümlesini bir araya getirerek bir web sayfası yapmayı programcılık ya da yazılımcılık olarak gören zihniyetteki kişileri, diş çektirmek için eli alet görmüş bir nalbanta falan göndermek lazım bence 🙂

Her hangi bir üniversite bitirmediği halde kendini yetiştirmiş kişiler de gördüm ama hakikatten iyi olanları o kadar nadir ki. Bu türden kişilerin, ileri konularla uğraşacak noktalara gelebilmesine rağmen, en temel konularda hem bilgi ve beceri hem de yöntem açısından eksik ve sıkıntılı olduklarına defalarca şahit oldum. Bunun en temel sebebi ise “eğitim” eksikliği, yani formal olarak bilgi ve beceri aktarımının olmaması. Bilgi ve beceri, aynen bir binanın temelsiz olamaması gibi ancak sistemli bir şekilde üst üste konarak elde edilecek şeylerdendir. Bir şeyi öğrenmenin en kolay, en basit yolu ise olsa olsa sistemli öğrenme olabilir. Sadece birilerinin yaptıklarına bakarak, internetten kod örnekleri indirip çalıştırarak hatta sağlam ve ciddi bir şekilde kitap okuyarak bile gerekli yetkinlikleri elde etmek hem zordur hem de uzun yoldur, çok vakit kaybettirir. Nihayetinde bu riskleri almak yerine doğru düzgün, sistemli bir eğitim almak zaruridir.

Bu noktada “yazılımcı/programcı olmak için bilgisayar mühendisliği okumak gerekli midir?” sorusunun cevabını bir sonraki yazıda vermeye çalışacağım.

 

Toplam görüntülenme sayısı: 9554