Açık Kaynak Kodlu Yazılımın Dezavantajları
CyanogenMod öldü, ana şirket Cyanogen tarafından öldürüldü. Topluluk parçaları almaya ve yeni bir proje oluşturmaya çalışıyor, LineageOS, koda dayalı. Ancak açık kaynaklı yazılımın tüm güneş ışığı, gökkuşağı ve stabilite olmadığını hatırlatır: Aslında, çok dağınık olabilir.
Bir proje açık kaynak olsa bile, topluma duyarlı olması bile gerekmez, güvenebileceğiniz bir yazılım çok daha az. Projeler değişiyor: Bazıları bir ya da iki geliştirici tarafından hobi olarak yönetiliyor, diğerleri bir çok büyük şirket tarafından ödenen geliştiricileri bir araya getiriyor, diğerleri ise tek bir ana şirket tarafından yönetiliyor. Her durumun kendine özgü sorunları ve draması var.
Açık kaynaklı yazılımı seviyoruz - yanlış anlamayın - ancak belirli zorluklar sunuyor. Bir kaç bakalım.
Açık Kaynak Genellikle, Gecikmeler ve Buzul Gelişim Hızına Uğradı
Birçok açık kaynaklı projenin, yeni sürümlerin hiç durmadan geciktiği, yeni özelliklerin yavaş yavaş geldiği ve zor ancak önemli özelliklere öncelik vermenin zor olduğu yavaş bir gelişme hızından muzdarip olduğu görülüyor.
Sadece Ubuntu'nun Unity 8 masaüstünü ve Mir görüntüleme sunucusunu başlatmaya çalıştığı “yakınsama” vizyonunu sağlamaya bakın. Linux masaüstünün bu yeni sürümünün yıllar önce kararlı olduğu düşünülüyordu, ama yine de değil. Proje, bir buzul hızında ilerledi, o kadar ki Canonical, Windows 10'dan önce akıllı telefonla PC tarafından kendi vizyonunu aldığı ve teslim ettiği kendi vizyonunu açıklayan Microsoft tarafından yumruklandı. Canonical, uzun zamandır vaat ettiği vizyonunu henüz sunmadı. Belki birkaç yıl içinde daha stabil olur.
Mozilla da önceliklendirme konusunda bazı zorluklar yaşadı. Firefox'ta çok işlemli ve sanal alan özellikleri sunmadı. Bunlar, tarayıcının güvenli kalması, çökmelerin tüm tarayıcıyı ele geçirmemesi ve çok işlemli işlemcilerden daha iyi faydalanması için kritik öneme sahiptir. Diğer tüm büyük tarayıcılar, nefretli Internet Explorer da dahil olmak üzere bu özellikleri sağlamıştır. Mozilla, bu özellikleri eklemek için “Elektroliz” projesini sundu, ancak çok zor olduğu için 2011'de durdurdu. Mozilla daha sonra 2013'te yeniden başlatmak zorunda kaldı. Bu özellik 2017 yılında gelmeye hazır görünüyor, ki bu gerçekten çok geç oldu. Bu arada, Mozilla, başarısız bir akıllı telefon işletim sistemi olan Firefox OS üzerinde çalışırken zaman kaybetti..
Bir proje bu kadar gönüllü geliştirici kullandığında, yapması eğlenceli olmayan zor işleri yapan insanları bulmakta zorluk çekebilir..
Dahili Drama Çatallar, Çatallar ve Daha Fazla Çatal Başlıyor
Açık kaynak kodlu bir projenin kaynak kodu, herkesin değişmesi için kullanılabilir. Mesele bu! Açık kaynaklı bir proje sevmediğiniz bir şekilde değişirse, o zaman siz veya topluluk bu eski kaynak kodunu alabilir ve üzerinde yeni bir proje olarak çalışmaya devam edebilirsiniz. Ancak topluluk projeleri çoğu zaman iç dramlara o kadar sarılır ki, olayları birden fazla projeye bölmek, insanları şaşırtmak ve yabancılaştırmak.
Örneğin, GNOME 3 piyasaya sürüldüğünde ve birçok GNOME 2 kullanıcısı mutlu olmadığında, açık bir bariz yol yoktu. Geliştiriciler GNOME kodunu MATE ve Tarçın gibi başka projelere yerleştirmek zorunda kaldılar. Bir masaüstü ortamı üçe dönüştü ve geliştirme kaynakları projeler arasında daha dağınık durumda. Sonuç olarak, topluluğun bu yeni projeleri hayata geçirmesi biraz zaman aldı..
Benzer şekilde, Oracle Sun'ı edindiğinde OpenOffice topluluğu da mutlu değildi. Hatta Oracle, tescilli ve açık kaynak kodlu olmayan bir ofis paketi olan StarOffice'i “Oracle Open Office” olarak değiştirmiştir. Topluluk, OpenOffice koduna dayanarak yeni bir çatal, LibreOffice oluşturmak zorunda kaldı. Birçok insan için fiili açık kaynak ofis paketi haline geldi, ancak diğerleri OpenOffice'i kullanıyor çünkü daha iyi çatal ve onu çevreleyen dramanın farkında değiller. OpenOffice, bir çok yerleşik isim tanıma özelliğine sahiptir..
Ve elbette, CyanogenMod var. Cyanogen Inc, CyanogenMod'un çevrimiçi hizmetlerine bir kez daha dikkat çekti, yani topluluğa LineageOS adında yeni bir CyanogenMod çatalı oluşturmaya zorlamak yerine, en popüler üçüncü parti Android ROM'u öldürmeyi tercih etti. Cyanogen neden CyanogenMod projesini topluma vermiyor? Cevap içsel drama gibi görünüyor (burada bir model görüyor musunuz?). Cyanogen, CEO’nun, “Google’ın kafasına bir kurşun sıkacağı” sözünü veren şirketti. Bunun yerine CyanogenMod'un kafasına kurşun sıktı..
Tüm bunlar, CyanogenMod'un sunucuları ve hizmetleri kapatılmadan önce çok az bildirim alan CyanogenMod kullanıcılarını incitmekle bitiyor. Telefonlar çalışmaya devam edecek, ancak uygun güncellemeler ve diğer hizmetler neredeyse bir gecede sigara içiyor. Kullanıcılar sadece LineageOS projesinin hızlı bir şekilde yerini alacağını ummalı.
Tüm Açık Kaynaklı Projeler Topluluğa Yönelik Değil
Açık kaynaklı projeler her zaman topluluk tarafından yönlendirilmez. Bir programın açık kaynak olduğunu söylemek, kodun istediğiniz şeyi yapmak için kullanılabileceği anlamına gelir. Yazılımı geliştiren şirketin mutlaka bir topluluk projesi olarak çalıştırması gerekmiyor veya projeyi diğer yazılımlarını tanıtmak için kullanma konusunda ilgileri olabilir..
SiyanogenMod buna iyi bir örnektir. Cyanogen Inc. bir kez ortaya çıktığında, CyanogenMod'u gerçekten önemsemediler. Cyanogen'in yeni hedefi, CyanogenMod'un projeyi öldürdükten sonra büyük isim tanıma işlemiyle ticaret yapan üreticilere Cyanogen Modular OS platformunu pazarlamak oldu. Belki de paranın olduğu yer burasıdır.
Oracle, OpenOffice'i hiç önemsemedi, ancak başlangıçta adını “Open Office” adıyla markalaştırarak StarOffice tescilli ofis paketinin satışlarını artırmak için kullanmak istedi. Daha sonra gönüllü geliştiricilerin çoğu ayrıldıktan sonra projeyi Apache'ye bağışladı.
Google, Android'i tam açık kaynaklı bir proje olarak da umursamıyor, bu yüzden “Android Açık Kaynak Projesi” nin (veya “AOSP”) daha fazla parçasının geride kalmasının nedeni de bu. Google, Android'i açık tutmak istiyor, bu nedenle üreticilerin özelleştirmesi kolay, ancak klavye ve çevirici gibi açık kaynaklı uygulamalar gittikçe modası geçmiş hale geliyor. Tüketici Android cihazında Google, kendi kapalı kaynaklı klavyesini, çeviricisini ve diğer uygulamalarını bir araya getirir. Google bir Android açık kaynaklı çekirdeğe bağlı görünüyor, ancak insanların Google'ın yazılımı ve hizmetleri olmadan kullanabileceği bir açık kaynaklı işletim sistemi değil. Sonuçta, Android Açık Kaynak Projesi'ni geliştirmek, Google’ın Android cihazlarına rakip olan Amazon’un Fire OS’ine yardımcı oluyor. Bunun amacı ne?
Açık Kaynak Milyonlarca Kullanılmasına Rağmen Ciddi İnsan Gücü Yoksun Olabilir
Bir proje açık kaynak ise, herkes büyük şirketlere bile katkıda bulunmadan bunu kullanabilir. Bu, yaygın olarak kullanılan önemli bir projede ciddi bir insan gücü ve kaynak eksikliği bulunduğunda sorunlara yol açmaktadır..
Bunun sonuçlarını 2014'te Heartbleed güvenlik boşluğu ile birlikte gördük. Heartbleed, OpenSSL'deki bir güvenlik açığından yararlandı. OpenSSL, birçok dev teknoloji şirketi ve yüz binlerce web sunucusu tarafından kullanılan önemli bir şifreleme kütüphanesidir. Ancak, dışarıda çalışmaksızın yalnızca bir tam zamanlı çalışanı ve bağışlarda yılda 2000 dolar aldı. Proje, ticari destek sözleşmelerinden ve danışmanlık hizmetlerinden ilave para aldı, ancak yalnızca tam zamanlı çalışan tek bir çalışan, Google ve Facebook gibi milyarlarca dolarlık şirketler tarafından kullanılan kritik bir altyapı parçası için şok edici derecede düşük görünüyor.
Heartbleed, bu kritik yazılımın ne kadar yetersiz olduğuna dikkat çekti, bu yüzden büyük teknoloji şirketleri her yıl OpenSSL'in ve “Temel Altyapı Girişimi” nin bir parçası olarak diğer önemli projelerin gelişimini finanse etmek için para biriktirmeyi taahhüt ettiler..
Bu özel hikaye için iyi bir sonuç var, elbette ama sadece buna çok dikkat çekildiği için. Altyapınızı etkinleştirmek için açık kaynak kodlu bir projeye güveniyorsanız, buna bağlı olarak sona ermek kolaydır ve başkasının yeterince iyi koruduğunu varsayalım. Başka hangi önemli açık kaynaklı proje eleştirel olarak destekleniyor? Başka büyük bir problem olana kadar farketmeyebiliriz.
Resim Kredisi: snoopsmaus