Şüphesiz açık kaynak (open source) filozofisi biz programcıların hayatını derinden etkiledi. Açık kaynağın bize sağladığı bariz iki avantaj var. Bunlar:
- Başkalarının, bu başkaları çoğu zaman usta olarak tabir edebileceğimiz yetenekli programcılar, yazdığı kodlara bakarak kendimizi programcı olarak geliştirebiliriz.
- Açık kaynaklı programları lisans bedeli ödemeden kullanabiliriz.
İkincisi çok bariz olarak karşılaştığımız bir durum. Hibernate, Spring, Eclipse.. bu meşhur açık kaynaklı programların kullanılmadığı proje sayısı çok az ya da yok gibi.
Birileri, bir yerlerde oturmuşlar, bizim hayatımızı kolaylaştırmak için gece, gündüz demeden açık kaynaklı programlar oluşturmak için çalışıyorlar. Neden bunu yapıyorlar acaba?
Bunun çeşitli sebepleri olabilir. Örneğin:
- İdealistler ve dünyayı iyileştirmek istiyorlar.
- Bu işten para kazanmak istiyorlar. Açık kaynaklı ürünleri satmak imkansız, ama destek sağlayarak para kazanmak mümkün.
- Bir açık kaynaklı ürün oluşturarak piyasada tanınmak ve ün salmak isteyenler olabilir.
- IBM gibi firmalar açık kaynaklı ürünlerin oluşturulmasına destek vererek Microsoft gibi firmaların oluşturdukları monopolleri kırmak isteyebilirler. Nitekim Eclipse IBM tarafından geliştirilmiş ve daha sonra açık kaynak olarak bizlerin kullanımına sunulmuştur. IBM’in amacı Java ekosistemini güçlendirmek ve Java’nın .NET platformuna alternatif oluşturmasını sağlamaktır.
- Belli bir teknolojinin yayılmasını sağlamak için açık kaynaklı programlar oluşturulabilir. Örneğin Java’nın daha yaygın hale gelmesini sağlamak için sahip olduğu ekosistemi oluşturan hemen, hemen her parça açık kaynaklıdır.
- Bir ürünün yayılmasını sağlamak için ürün açık kaynaklı yapılabilir. Örneğin JetBrains firmasının IntelliJ IDEA isminde açık kaynaklı kod geliştirme ortamı bulunuyor. Community Edition ismini taşıyan bu sürüm programcıların temel ihtiyaçlarını karşılarken, JetBrains bu ürünün profesyonel sürümlerini oluşturup, satarak para kazanıyor.
Bu listeye eklenti yapmak zor değil. Benim ilk düşündügümde aklıma gelen noktalar bunlar. Peki bize bu kadar muazzam getirisi olan bir akım için biz programcılar neler yapıyoruz ya da yapabiliriz? Sayalım:
- Açık kaynaklı ürünleri kullanarak belli teknolojilerin öne çıkmasına destek verebiliriz. Linux örneğinde olduğu gibi bu monopollerin kırılmasını ya da dengede tutulmasını sağlayabilir.
- Açık kaynaklı ürünlerin geliştirilmesine katkıda bulunabiliriz. Açık kaynaklı projelerin çoğu gönüllü olan programcılar sayesinde geliştirilebiliyor.
- Açık kaynaklı ürünlerin kullanımında keşfettiğimiz hataları gerekli yerlere bildirerek, bu hataların giderilmesine katkıda bulunabiliriz. En ideal olanı bu hataları gidererek, projeye doğrudan destek saglamaktır.
- Açık kaynaklı projelerin sürdürülebilmesi için parasal destekte bulunabiliriz, yani bağış yapabiliriz.
Eclipse benim yıllardan beri kullandığım açık kaynaklı bir araç. Bugün Eclipse Foundation için belli bir miktarda bağış yaptım. Ne kadar bağışladığım önemli değil. Önemli olan bağışın kendisi. Yıllardan beri freelancer olarak çalıştığım birçok projede Eclipse’i kullandım. Eclipse olmasaydı başka bir ürünü kullanırdım. Ama Eclipse vardı ve onu kullandım. Bunun karşılığında hiçbir bedel ödemedim. Eclipse bana programcı olarak çok şeyler kattı. Para kazanıp, hayatımı sürdürmeme destek oldu. Yaptığım bağış okyanusta bir damla bile olsa, damlaya, damlaya göl olur sözünü unutmamak lazım. Bağışı yaptıktan sonra Friend Of Eclipse ünvanina sahip oldum :) Ne güzel….
Çoğu programcı kullandıkları araçların açık kaynaklı olduklarına pek kafa yormadan hergün bu araçları kullanarak, işlerini yapıyorlar. Aynı şekilde çoğu programcının kullandıkları açık kaynaklı programların kodlarını inceleyip, daha iyi bir programcı olmak için çaba sarfettiklerini düşünmüyorum. Çoğu programcı bu ürünleri kullanırken keşfettikleri hataları bir yerlere bildirmiyorlar, çünkü birileri bunu yapar diye düşünüyorlar. Çoğu programcı commiter olarak açık kaynaklı projelere destek vermiyor, çünkü bunun için zamanları yok ya da zamanlarının olmadığını düşünüyorlar. Çoğu programcı lisans bedeli ödememek için bahsettiğim açık kaynaklı programları kullanıyorlar. Hepsini topladığımızda açık kaynaklı akımı desteklemeyen, egoistçe kullanan ve hiçbir şey geriye vermeyen bir programcı kitlesi oluşuyor. Ama üzülmesinler, yapabilecekleri bir şey var. Hiçbir şey yapamıyorlarsa, o zaman açık kaynaklı projelere bağış yapabilirler. Bu şekilde fayda sağladıkları projelerin devam etmelerini sağlayabilirler. Kullanıkları açık kaynaklı ürünler olmasaydı hayatlarının programcı olarak ne kadar daha zor olacağını düşünmeleri yeterli.
Her programcıyı kullandığı açık kaynaklı araçları desteklemek için bağış yapmaya davet ediyorum. Bağış bir Lira’da olsa damlaya damlaya göl olur.
Not: Bağış yapanlar bu yazıya yorum bırakarak, hangi açık kaynaklı projeyi desteklediklerini bildirebilirler.
EOF (End Of Fun)
Özcan Acar
