Aslında sırada bekleyen yazı, çok daha teknik ve deneysel bir yazı idi. Ancak işler yolunda gitmeyince o yazının çıkması uzadı. Tam da bu esnada, youtube’da bambaşka bir meseleyi araştırırken aşağıdaki videoya rastladım.
Öğrencilerim yada eski öğrencilerim hep bana hangi programala dilinin daha iyi olduğunu yada hangi programlama dilleri ile daha kolay iş bulunabileceğini soruyorlar. Aklıma bir blog yazısı ile bu sorulara yanıt vermek geldi.
Aslında yıllardır söylediğim bir söz var:
Hangi dilin kullanılacağına proje karar verir
Yani sorunun en temel cevabı yapacağınız işin gereksinimleri ile verilecektir.
Ancak bu da tek başına yeterli değil. Programlamadan para kazanmak isteyen herkes öncelikle başkalarının projelerinde çalışmaya odaklanır, bu durumda yatırım yapması gereken programlama dilinin de en çok iş ilanı olan dil olduğu sonucuna varacaktır. Elbetteki kendisi gibi düşünen kişi sayısı da çok olduğundan, en çok istihdam yapılan programlama dili aynı zamanda en çok elemanın olduğu dil de olur. Videoda bu tezimi PHP dili kanıtlıyor! Buradan varmak istediğim sonuç, çok sayıda programcının olduğu mecrada maaşların da düşük olacağıdır 🙂
Peki “bence” doğru olan düşünme şekli ne olmalı?
Diyelim ki, bir projede istihdam olmak yerine kendi projenizi geliştireceksiniz. O zaman hangi dili biliyor olmayı yeğlerdiniz?
Mümkün olduğunca bağımsız olmalı
Açık kaynak olmalı .NET bu tanıma uymuyor. Windows ortamı ve Microsoft’a bağımlı. Oysa büyük projeler, (Google, Facebook, Twitter vb.) tamamen bağımsız oldukları için büyük olabilmişlerdir.
Mümkün olduğunca popüler olmalı
Çünkü, proje esnasında pek çok problem ile karşılaştığımız ve yardım edecek birilerini aradığımız için popüler olmalı. Kimsenin kullanmadığı teknolojiler sizi yapayalnız bırakır. Ayrıca hazır kütüphanler bulmak proje geliştirme hızını çok arttıracaktır.
Proje ölçeğine dikkat edilmeli
Şöyle ki; Kurumsal bir proje için kullanıcı sayısı az olacağı için genellikle performans sorunları yaşanmaz. Bu durumlarda PHP ideal bir seçim olabilir. Çünkü hazır pek çok kütüphane ve framework seçeneği var. PHP ile bir web uygulaması geliştirmek oldukça hızlıdır. Benzer şekilde Ruby ve Java da bu iş için uygun olacaktır.
Ancak trafiği yüksek bir proje olacaksa, daha az sistem kaynağı ile daha çok iş yapabilmek için Python’u tercih etmek gerekir.
Biliyoruz ki Facebook trafiği yüksek bir site olmasına rağmen PHP ile geliştirilmiş ve halen aynı teknoloji üzerine gitmeye devam etmektedir. Sürekli olarak da performans sorunları ile mücadele etmektedirler. Bu durum Facebook’u bir AR-GE çalışmasına götürdü ve HHVM icat edildi. Tabi bu başka bir yazı konusu 🙂
Framework seçenekleri:
Belki önemsiz gibi görünüyor ama, bazen kullandığınız framework o kadar iyidir ki, programlama dilinin diğer eksiklerini bile göz ardı edebilirsiniz. Örneğin Symfony 2x, Tornado Framework.