Tuesday, August 28, 2007

Bizim gözümüzden açık kaynak...

Yaklaşık bir hafta süren Mersin-Ankara tatilimden yeni döndüm, gayet güzel geçen bir aile ziyaretleri silsilesinden sonra insan açıkçası kendini pek bir toplamış olarak buluyor... Annenin yemekleri, kayınvalidenin börekleri ve sonu gelmez tek yönlü kalori alışverişi... En nihayetinde ayağımın tozuyla toplulukta ne var ne yok diye RSS'lerimi karıştırırken daha önceleri de canımı sıkan ve yeniden aklıma gelen bir konu oldu ve birkaç kelimeyi bu konu ile ilgili olarak yazma ihtiyacı hissettim.. Açık kaynak uygulamalara nasıl bakıyoruz?...

Açık Kaynak mı? Muhakkak bedavadır alalım...

Başlamadan önce Açık Kaynağın ne olduğunu/olmadığını anlamamız gerekiyor. Birincisi açık kaynak bedava olmaktan öte özgürlük ile daha çok bağdaşır.Yani kod geliştirirken, dağıtırken veya kullanırken özgür olabilmek açık kaynağın getirdiği fırsatlardır. Bunun getirdiği bir sürü avantaj vardır ki, bunlar için ayrı ayrı bir sürü yazı yazılmıştır. Yani bu yazıyı okumaya devam etmeden önce kafanızdaki açık kaynak=bedava eşitliğini bir süreliğine bırakmanız veya kafanızda biraz gerilere itelemeniz gerekiyor.

Hayır!! Açık Kaynak bu şirketin kapısından içeri adım atmayacak!! Bu kadar...

Zaman zaman etrafımızda, çalıştığımız yerde görürüz, Açık kaynak öcüymüş gibi bir tavır sergilenir.Bu tavır genellikle büyük ölçekli, kurumsal şirketlerde gösterilir. Ve en temelde iki sebebi (ya da öyle olduğu söylenir) vardır. İlki, güvenlik açıklarından dem vurulur.. İkincisi, destek ve dokümantasyon olmadığından yakınılır.

Öncelikle güvenlikten bahsedelim. Güvenlik açığı heryerde olabilir. Sisteminin mükemmel işlediğini düşünen bankalarda dahi güvenlik açıkları vardır. Her programda olduğu gibi açık kaynak uygulamalarda da güvenlik açıkları vardır. Ama uygulamada geliştirme/kullanma olarak katılımcı sayısı (ki bu açık kaynak topluluğu oluyor) fazla ise güvenlik açıkları zaman içerisinde bulunmuş ve düzeltilmiş/düzeltiliyordur. Eğer bundan yana çok şüphe duyuluyorsa kodlar nasıl olsa elimizde bakabiliriz değil mi? Bu noktada sanki kapalı kaynak kodlar biraz daha güvensiz gibi duruyor (içeride ne olup bittiğini bilmememiz açısından).

Destek ve dokümantasyona gelirsek, açık kaynak uygulamalar ölçeklerine bağlı olarak ücret karşılığında destek ve dokümantasyon sağlarlar. Tabi açık kaynağı bedava olarak niteleyip, ardından "nereden çıktı bu masraf" dersek afallarız tabi... Yukarıda da belirttiğim gibi açık kaynak her zaman bedava anlamına gelmez. JBoss lisans ücreti ödemezsiniz, ama JBoss ON için CPU başına bir lisans ücreti ödemek zorundasınızdır...

Nasıl yani açık kaynak hiç mi para kazanmıyor?

Açık kaynak uygulamalar Microsoft'un aksine lisans ücreti talep etmezler, bunun yerine dokümantasyon ve destek, zaman zaman da yardımcı entegre modüller asıl para getiren kısımlardır. Bununla ilgili Matt Asay'in Open Road'daki "Why Microsoft fears open source more than other proprietary vendors do" yazısı lisanslama ve dokümantasyon/destek arasındaki farkı ve bununla ilgili Microsoft ve Açık Kaynak arasındaki görüş farklılıklarını çok güzel anlatmış. Bir göz atmakta fayda var.

Eee iyiymiş bu açık kaynak

Açık kaynak trendi özellikle Sun CEO'su Jonathan Schwartz'ın katkıları ve vizyonu ile önce OpenOffice, sonra OpenSolaris ve ardından OpenJDK ile ivme kazandı. Sun'ın bu çabasına yakın zamanda IBM de OpenOffice.org topluluğuna katıldığını açıklayarak bir anlamda destek oldu. Sonra sırası ile birçok geniş ölçekli program trend değiştirip kodlarını açma kararı aldılar. Bunun en son örneği ise VMWare oldu. RedHat Fransız Eğitim Bakanlığı ve İsveç'te büyük ölçekte bir ilaç portali olan Fass.se'nin tüm server'larını (IBM ve Solaris'ten) RedHat Linux'e geçirdi.

Biz ne yapıyoruz peki?

Bu kadar yazıdan sonra etrafımda neler olduğunu bir toparlarsam, sırasıyla aşağıdaki sonuçları çıkarabilirim.

1.Hala açık kaynak bir uygulama gördüğümüzde kalitesiz ve ucube muamelesi yapıyoruz (Ve hatta lisanslı ürünlerin web sayfalarını inceleyip, aynı ürünün açık kaynak bir şekilde yapılamayacağına kendimizi inandırıyoruz)
2.Açık kaynağın bedava olmaktan öte paylaşımcı, sürekli geliştiren ve öğretici bir topluluk olduğunu anlamakta zorlanıyoruz.
3.Biz geliştirdiğimiz uygulamaları sanki dünyada kimse yazamazmış gibi, kodları kapalı ve lisanslı satmaya çalışıyoruz. (Tamam bu biraz fazla oldu, ama öyle)

Yukarıda yazdığım sonuçlar ile kimseyi suçlamıyorum..Sadece dünyanın yöneldiği trendi hala görmemekte ısrar ediyoruz. Benim vurgulamak istediğim nokta bu.

Hmm tabi bunları söyledikten sonra şunları da ekleyeyim, OpenOffice kullanıyorum, Sun Server'lar üzerine Solaris 9 yerine OpenSolaris veya RedHat kuralım diye her fırsatta ısrar ediyorum. Firefox favorim. Eclipse'ten daha iyi bir IDE tanımıyorum. Konfigürasyon Yöneticiliğini yaptığım projenin Kaynak Kodları Subversion'da (Starteam'den geçtik) tutuluyor. Sürüm sistemi Hudson/CruiseControl ve Ant kullanılarak yapılıyor. Vesaire, vesaire, vesaire...

2 comments:

Anonymous said...

Genellikle güvenlik (Kriptografi ve network güvenliği) ile ilgili konularda dünyada detayları bilinen algoritmalar ön plana çıkar. Bunun nedeni bu algoritmalari yıllarca bir sürrü zeki insanin kırmayı denemiş olmasıdır. Hatta bunu kurallaştırmak gerekirse, söz konusu algoritma güvenliğini algoritmanin detaylarının gizliliğinden değil, gizli anahtarın güvenilirliliğinden alır. Aksi bütün denemeler zaman içerisinde hep sorun yaratmıştır.

Bu yazılım içinde doğru. Açık kaynak kodun orasını burasını kurcalayan o kadar çok insan varki, yazılımın adaptasyon ve doğal seleksiyon süreci çok daha hızlı olgunlaştırıyor ürünü.

Benim daha önce çalıştığım projelerden şu anda ismini vermeyeceğim birkaç lisansli ve pahalı kapalı kod ürünle deneyimlerim oldu. Bu ürünlerde çeşitli yerlerde sorun yaşadığımızda teknik destek ekiplerinden günlerce haber bekledik. Bir kaç özel durumda yurt dışından insanlar geldi. Fakat günün sonunda sorun sizin sorununuz olduğu sürece, bu taşıma su yaklaşımı sorun yaratıyor. Buna ülkemizdeki yabancı kaynaklı firmalarin teknik desteğinin yetersizliğide eklenince sorunların çözümü günlere yayılıyor veya çözülemiyor.

Açık kaynağı bu açıdan özgürlük olarak görmek çok önemli. Elinde kodların olması, sorunların çözülebilirliğini arttırıyor. Kaldı ki çoğu firma artik dual lisans yöntemi kullanıyor. Bir tane açık kaynak lisansi ve bir tanede yazılım desteği olan Kurumsal paralı lisans ile ortaya çıkıyor. Durum böyle iken bana kodları kapalı bir paralı ürünün ne avantajı olduğunu söyleyebilirmisiniz? Özellikle Türkiye'deki teknik destek yetkinliğini göz önüne alırsak...

Anonymous said...

Biz geliştirdiğimiz uygulamaları sanki dünyada kimse yazamazmış gibi, kodları kapalı ve lisanslı satmaya çalışıyoruz. cümlesi çok hoşuma gitti. Bazen kendimizi olduğumuzdan daha fazla nimetten sayıyoruz.Ama bunun altında yaptığımız işi çok iyi yaptığımızı düşünmekten başka şeyler de yatıyor gibi geliyor.

Bence Open Source=Er Meydanı. yazdığı koda güvenen adam açar kodunu. Eğer kem küm ediyorsa ya adam gibi dokümante etmemiştir yada güvenlik açıklarıyla kevgire döner diye korkuyordur.

Bana diğer firmaların yani lisans üreticyle ürün satan firmaların birden open source 'a merak salması da pek samimi gelmiyor. Ciddi stratejik planlar var içinde ama yine de Open Source kazanıyor. Microsoft 'un da Open Source 'dan çekinme nedeni "kara cahil Bill Gates Amca" başka da bir gerekçesi yok. Vaktinde Bill amca 'nın ve MS yetkililerinin Open Source ile ilgili yaptığı TALİHSİZ açıklamalar aklıma geldikçe eve gidip format c /x : yapasım geliyor.

Kolay gelsin. Acımızı güzel paylaşmışsın Oğuz Abi.