Tecrübeniz arttıkça ve sektörde ilerledikçe açık kaynak ve Linux'tan nefret etmeye başlarsınız. Açıklarım bi ara nedenini.
Açık kaynaktan nefret etmek mi? Neden nefret edeyim ? Bana daha farklı düşünme kapıları açan bir yapıyı neden kullanmayayım ? Ben sektörde programcı olarak çalışıyorum. Bazı yazılımlar için biz de para ödüyoruz yalan değil. Satın aldığımız yazılımı kendimiz geliştirmemiz bizim için daha maliyetli olacağından bunu yapıyoruz. Bu şekilde kendi yazılım projelerimize odaklanıp daha iyi işler çıkarmaya çalışıyoruz. Fakat bunun dışında açık kaynak kodlu o kadar iyi projeler var ki bunlar projelerimizde kullanılmayı hak ediyor. Mesela PrimeFaces. Java programlama dilinin web tarafındaki teknolojilerinden olan Java Server Faces 2.0'ın eklentilerinden biri. Gerçekten ciddi emek sarfedildiği çok belli olan harika bir ürün. Üstelik bedava ve açık kaynak kodlu. Aslında Java'da açık kaynak kodlu bir programlama dilidir. Arkasında da dehşet bir destek vardır. İnşaallah ileride de Java'nın tüm haklarına sahip olan Oracle, Java'yı açık kaynak kodlu olarak bedava sunmaya devam eder.
Açık kaynak kodlu projeleri kullanmanın ciddi riskleri olabilir buna da katılmadan edemeyeceğim. Bize seminer için Microsoft'ta Windows 8'in geliştirilmesinde çalışan bir mühendis gelmişti. O beyefendi bize Windows 8'in hazırlanmasında 1 yazılım geliştiriciye karşılık 1 de test mühendisinin çalıştığını söylediğinde oldukça şaşırmıştık. Yazılım test ekipleri, yazılımı geliştiren programcı ekiplerine göre genellikle daha mütevazi yapıda olur algısı yerle bir oldu tabii. Windows'ları düşünün. Bunca saldırıya, her gün başka başka şekillerde karşısına çıkan kötü niyetli virüslere rağmen işletim sistemi yine de ayakta kalmayı başarıyor. Bir arabanın müşterinin beğenisine sunulmadan önce zorlu testlerden geçirilmesi gibi Windows'da zorlu test süreçlerinden geçiriliyor. İşte ürün kavramı bu demek. Her şeyiyle kendisinden beklenen amaca hizmet eden, güvenli yapıda ve arkasında ciddi teknik desteği olan.
Bu anlamda arkasında ciddi topluluk desteği olan, dokümantasyonu tam olan ve forumlarında ciddi bir paylaşım ortamı olan açık kaynak kodlu projeleri ben kullanırım çünkü bu proje artık bir ürün hüviyetini kazanmaya başlamıştır. Paralısı varken de pek tabii ki açık kaynak kodlu olanı tercih ederim.
Kimi açık kaynaklı projeler de vardır. Arkasında ciddi bir yazılım geliştirici ekip yoktur. Size yeterli destek veremezler. Bu açık kaynaklı projeyi kullanarak hazırladığınız yazılımlarda ciddi bir risk alıyorsunuz anlamına gelebilir. Bu senaryoda açık kaynak kodlu projeyi deneyen çok az kişi vardır. Bu da açık kaynak kodlu projenin hatalarını kapatan daha az insan var demek. Siz de potansiyel kurban olabilir verilerinizi, paranızı yada sektördeki itibarınızı kaybedebilirsiniz.
Ama yine de açık kaynaklı kodlu projeler her zaman incelenmeyi hak eder vay adama bak problemi tereyağından kıl çeker gibi nasıl çözmüş demek için. Bu projeler amatör ruhla sadece birilerine faydam dokunsun diye hazırlanmıştır. Programlama yeteneklerimizi üst seviyelere çıkarmak için de ideal araçlardır. Hele bir de iyi hazırlanmış bir projeye rast gelmişsek hiç bir programlama kitabının bize öğretemeyeceği bilgileri ve tecrübeleri kazanacağız demektir.