Teknoloji

Özgür Yazılım

Günümüzde bilgisayar kullanıcıları olarak bizler çeşitli amaçlar için farklı birçok yazılım kullanıyoruz. En temelinde kullandığımız işletim sistemlerinden tutun çalışma ortamında kullandığımız yazılımlara veya eğlence amaçlı yazılımlara kadar her yazılımın kullanılma ve dağıtım gibi haklarını denetleyen (bir başka deyişle yazılımla ne yapıp ne yapamayacağımızı belirleyen) lisans türleri vardır. Bu lisans türlerini kullanıcılara sağladıkları haklara göre iki kategoride sınıflandırabiliriz: Sahipli yazılımlar ve özgür yazılımlar.

Gnu_meditate_levitate

Sahipli yazılımlar; yazılımın geliştirilmesi, dağıtılması gibi hakların geliştiricilerin elinde kalması şartıyla bilgisayar kullanıcılarının bu yazılımların kopyalarını kullanmalarına izin verir. Sahipli yazılım kullanan bilgisayar kullanıcılarının bu yazılımları değiştirme, paylaşma, kodlarını inceleme gibi hakları yoktur ve herhangi bir sebepten ötürü bu belirtilenlerin gerçekleştirilmesi lisans ihlaline yol açar. Örneğin Microsoft Windows Vista Starter işletim sisteminde teknik bir yetersizlik olmamasına rağmen bir kullanıcının aynı anda çalıştırabileceği uygulama sayısı en fazla üç olarak tanımlanmıştır ve dördüncü bir uygulama çalıştırmak isteyen bir kullanıcı var olan uygulamalardan birisini sonlandırmak zorundadır. Kullanıcının kendi avantajı için olsa dahi işletim sistemindeki bu kısıtlamayı kaldıracak bir müdahalede bulunması ise lisans ihlaline yol açar.

Özgür yazılımlar ise sahipli yazılımların aksine kullanıcılara sadece yazılımı kullanma hakkını değil, ayrıca bu yazılımları herhangi bir amaç için inceleme, değiştirme ve tekrar dağıtma hakları sağlayan yazılımlardır. Bir yazılımın özgür yazılım olarak nitelendirilebilmesi için şu dört şartı sunması gerekir:

  1. Her türlü amaç için yazılımı çalıştırma özgürlüğü,

  2. Yazılımın nasıl çalıştığını inceleme ve istek doğrultusunda değiştirme özgürlüğü,

  3. Yazılımın kopyalarını dağıtma özgürlüğü,

  4. Yazılımı geliştirme ve bu geliştirmeleri herkesin faydalanabilmesi için dağıtma özgürlüğü.

Kabul etmek lazım ki genellikle çoğumuz bilgisayarımıza bir program kurarken karşımıza çıkan veya yazılımla beraber bir dosya içersinde sunulan lisans sözleşmesini hiç okumadan kuruluma devam ederiz ama halbuki bu uzun metin içerisinde kurmakta olduğumuz bu programın hangi tür lisans ile dağıtıldığı, neler yapıp neler yapamayacağımıza dair bilgiler yer alır. Sahipli yazılım lisansları ile özgür yazılım lisanslarını karşılaştıracak olursak özgür yazılımların kullanıcılara daha fazla hak sağladığı görülmektedir.

Özgür yazılım kavramı dilimize İngilizcedeki “Free software” tanımından gelir. “Free” kelimesi hem “özgür”, hem de “bedava” anlamlarını taşıdığı için bir yanlış anlaşılma durumu ortaya çıkar. Özgür yazılımlar bedava, yani ücretsiz olmak zorunda değildir. Bazı durumlarda geliştiriciler özgür yazılımları ücretli olarak sunmayı tercih ederken bazı durumlarda ise ücretsiz olarak dağıtılan bir özgür yazılım için sunulan teknik destek gibi hizmetler ücretli olabilir.

Özgür yazılım kullanmak birçok konuda avantaj sunar. Örneğin özgür yazılımların kaynak kodları açık olduğu için bu programların nasıl çalıştığını gözlemleme şansımız bulunur, bu sayede de bir programın bizim haberimiz dahilinde olmadan başka bir iş yapıp yapmadığının farkında oluruz. Ayrıca yine kaynak kodların açık olması sayesinde bir yazılımda hata tespit edersek bu hataları düzeltebilir veya düzeltebilecek kişilerin haberinin olmasını sağlayabiliriz. Örneğin 2010 yılında 12 yaşındaki Alex Miller adındaki bir gencin Firefox web tarayıcısında kritik bir hata tespit etmesi üzerine bu yazılımın üreticisi olan Mozilla bu hatayı kapatmanın yanı sıra bu gence 3.000 Dolar para ödülü vermiştir[1]. Bunun gibi örnekler bize bir yazılımın geliştirme/hata düzeltme sürecinin tek bir şirkete bağlı kalmadığında daha etkin hale geldiğini göstermektedir.

Özgür yazılımların kaynak kodlarının her isteyene açık olması, kötü niyetli yazılım geliştiricilerinin bu kodlar içerisine kullanıcıya zarar verici nitelikte kendi eklentilerini yapmalarına da yol açtığı doğrudur. Ancak kodlar dünya üzerindeki herkese açık olduğu için bu zararlı kodların diğer katkıcılar tarafından tespiti ve kaldırılması da aynı şekilde mümkündür. 

Özgür yazılım kavramının ilk çıktığı yıllardan bu yana hem dünyada, hem de ülkemizde çeşitli gelişmeler yaşanmıştır. Özgür yazılım kavramı hakkında kısa bir giriş niteliği taşıyan bu yazının ardından ilerleyen yazılarımızda bu bilgileri de paylaşmaya çalışacağız.

[1] http://www.zdnet.com/blog/security/12-year-old-finds-critical-firefox-flaw-earns-3000-bounty/7524