Kaynak: www.freepik.com

Yılın Sorusu: Yazılıma Nereden Başlanır?

Mehmet Eyüpoğlu
Kodluyoruz
Published in
4 min readAug 13, 2020

--

Yazılım sektöründeki nitelikli yazılımcı tartışması ve yetişen yazılımcı sayısının mevcut açığı kapatmayacak ölçüde olması sanırım herkesin malumu. Pandemi süreciyle birlikte yaşadığımız aşırı dozlu teknoloji kullanımı ve teknolojik gelişmelerin hiç olmadığı kadar hızlanması bu yazılımcı açığını daha da artıracak gibi görünüyor. Yazılım sektörünün bu gerçeklerinden bağımsız olarak, Aralık 2019’da tam zamanlı yazılım geliştirici pozisyonunda çalışmaya karar verdiğimde de yukarıda ifade ettiğim düşüncelere ve öngörülere sahiptim.

7 ay içerisinde yazılım geliştirici olarak tam zamanlı bir işe girme serüvenim belki ayrı bir yazının konusu olabilir. Fakat bu yazıda anlatmak istediğim konu bu süreçte ve sonrasında en çok ihtiyaç duyduğum becerilerin neler olduğu ve yazılım kariyerine başlamadan önce bunların nasıl elde edileceğidir.

Yazılım geliştirici olmaya niyet eden herkes gibi ben de Udemy, YouTube gibi mecralardan içeriğini ve kalitesini anlamadan programlama dersleri alarak başladım. Bununla birlikte, “yazılıma nereden başlanır?” sorusu da sürekli kafamda duruyordu. Geriye dönüp baktığımda ise bu sorunun cevabını dağınık birçok kaynaktan elde ettiğimi ama eğitim sürecime çok etkisi olmadığını farkettim. Tüm branşlara hitap edebilecek, sonrasında istediğim alana evirebileceğim bir tavsiye ya da programlamaya giriş dersi bulamadığımı ifade etmem gerekir.

Pandemi dönemine denk gelen Kodluyoruz React Bootcamp’ına kabul edilmem ile birlikte soru sorabileceğim, zihnimde oturmayan konuları tartışabileceğim, eğitim sürecinin yıpratıcı psikolojik etkilerini azaltabileceğim bir ortam bulmam ise benim için işleri tamamen değiştirdi. Her ne kadar Kodluyoruz’da iyi bir eğitim almış olsam da hem eğitim sürecinde hem de iş yaşamımda algoritmik düşünme, veri yapıları, nesne tabanlı programlama gibi bilgisayar bilimlerinin temel konularında halen sıkıntı yaşıyorum. Geriye dönüp baktığımda, bu konuların iyi seviyede öğrenilmeden herhangi bir branşa yönelmenin çok sağlıklı olmadığını gözlemliyorum.

Yazılıma nereden başlanır?

Bu sorunun cevabı yazılımda hangi alanda ne yapmak istediğinizle alakalı olarak değişir. Fakat yazılıma yeni başlayanların yazılımdaki alanlarla (web programlama, mobil programlama, makine öğrenmesi, veri bilimi, gömülü yazılım sistemleri, sistem ve ağ yönetimi, siber güvenlik vb.) alakalı pek fazla bilgisi olmadığı ve neyi neden seçmesi gerektiğini bilmediğini görüyorum. Bu anlamda, daha kapsayıcı bir dersle yazılıma adım atmanın daha garanti bir yaklaşım olduğunu söyleyebilirim. İşte bu noktada, çoğu alanı kapsayacak şekilde tasarlanmış, sonrasında istediğiniz yöne evirebileceğiniz temel bir bilgisayar bilimleri dersinden bahsetmek istiyorum.

CS50, Harvard Üniversitesi’nde ana branşı bilgisayar bilimleri olmayan birçok öğrencinin aldığı efsanevi bir temel bilgisayar bilimleri dersidir. Bu ders, yıllar içerisinde Prof. David J. Malan ve ekibi tarafından geliştirilerek çevrimiçi ortamda herkesin erişimine açıldı. Yüzbinlere ulaşan öğrenci sayısı ile CS50, insanoğlunun eksponansiyel bir hızla ilerleyen teknolojiyi yakalama çabası olarak da tanımlanabilir.

Kodluyoruz, Nisan ayı itibariyle CS50’yi Türkçe’ye tercüme ettiğini ve kısa sürede kullanıma açacağını duyurdu. 30000 üzeri başvuru alan CS50, medyada ve yazılım çevrelerinde ilgi ile karşılandı.

Yazılıma CS50 İle Başlayalım

Bilgisayar bilimlerinin temel kavramlarını öğrenmeden yazılım projeleri geliştirmenin yer yer sıkıntılar doğurduğunu ve zamanla psikolojik etkilerinin meydana geldiğini belirtmem gerekir. Yukarıda bahsedilen CS50 dersinin yazılımda hangi alanı hedeflediğinizin önemi olmaksızın, sizi istediğiniz kariyere sağlam bir temelle hazırlayacağını söyleyebilirim. “Yazılıma nereden başlamalıyım” sorusunun artık raflardan inme vaktinin geldiğini düşünüyorum.

David J. Malan Kodluyoruz için CS50'yi anlatıyor.

Yalnızca yazılımda kariyer hedefleyenler değil, aynı zamanda dijital okur yazarlık ve teknoloji genel kültürü edinmek isteyenler de kısa sürede bu dersi bitirerek teknoloji trendlerini doğru yorumlayacak becerilere sahip olabilirler.

Peki CS50 size neler öğretiyor?

CS50 genel itibariyle algoritmik düşünme ve problem çözme becerileri üzerine tasarlanmıştır. Algoritmalar, veri yapıları, enkapsülasyon, güvenlik ve yazılım mühendisliği gibi konseptlerde doyurucu bir eğitim programına sahip. Scratch ile başlayan eğitim, C, Python ve SQL ile devam ediyor. Sonrasında ise yöneleceğiniz alana bağlı olarak HTML, CSS, JavaScript (Web Programlama) ve Java, Swift (Mobil Programlama) öğrenebilirsiniz.

CS50, yazılıma yeni başlayanlar için zaman zaman zor konular barındırıyor. Bu noktada, çalışma grupları ile bu dersi almak ya da sosyal ağlar üzerindeki benzer tartışmaları takip edip soru sormak gerekir. Bunun için aşağıdaki sosyal ağlara katılıp yeni bir tartışma açabilir ya da mevcut tartışmalara müdahil olabilirsiniz. Bunun için Kodluyoruz CS50 Discord Kanalı (Türkçe) ve CS50'nin diğer sosyal ağlarına katılmayı ihmal etmeyin. CS50'yi tamamlamaya müteakip, CS50'nin diğer programlarına ise buradan ulaşabilirsiniz.

Yazılıma nereden başlayacağınızı halen bilmiyorsanız, yukarıda ifade ettiğim görüşlerime eklemek istedikleriniz varsa ya da CS50 konusunda benimle iletişime geçmek isterseniz bana twitter, linkedin ya da e-posta yoluyla ulaşabilirsiniz.

--

--