Dünyada giderek yayılan “Açık Kaynak” , “Özgür Yazılım” ve “Linux” kavramları artık ülkemizde de oldukça ilgi görür oldu. Ben de bu konular hakkında iki makale yazmak istedim. Bunlardan biri açık kaynak ile birisi de Linux ile ilgili. Bu yazıda açık kaynak kodun ne olduğu, özgür yazılımın ne olduğu, avantajlarının neler olduğu ve GPL-LGPL lisanlarının ne oldukları sorularının cevaplarını bulacaksınız.
Nedir Bu Açık Kaynak?
Bilgisayarla haşır neşir olduğumuz bu günlerde bu terimi sıkça duyar olduk. Linux ve Android için bu terim sıkça kullanılıyor. İşletim sistemi Windows olan bir bilgisayara program kurarken size .exe uzantılı bir dosya verilir ve onunla programı kurarsınız. Fakat bu .exe sadece programı kurar. Siz uygulamaya müdahale edemez, kodlarını göremezsiniz. Açık kaynakta ise size uygulamanın kodları da verilir. Siz kaynak kodları görebilir, inceleyebilir, değiştirebilir, kullanabilirsiniz. Örneğin kullandığımız Android cihazlara dikkat edersek Samsung başka, HTC başka, LG başka bir arayüz ile karşımıza gelmektedir. Bu açık kaynak kod ile olmaktadır. Kullanıcılar kaynak kodu diledikleri gibi değiştirip yayınlayabiliyorlar.
Avantajları Nelerdir?
Kuşkusuz en göze çarpan avantajı yazılan uygulamadaki kodların incelenip, inceleyen kişinin tecrübe ve bilgi kazanmasıdır.
Açık kaynak kodlu yazılımlar güvenlik açısından da çok güvenilirdir. Kapalı kodlu bir yazılıma sadece programı yazanlar müdahale edebilir.Açık kodlu yazılımlarda ise iyi derecede kodlama bilen herkes bu koda müdahale edebildiği için virüslerle ve tehditlerle hemen başa çıkılabilir.
Diğer bir avantaj ise ekonomik yöndendir. Açık kaynak kodlu yazılımların çoğu ücretsizdir. Bu durumda gidip büyük miktarlarda para verip yazılımlar satın almak yerine karşılığı olan açık kaynak kodlu yazılımlar kullanılarak bu para bilişimin daha da gelişmesine kullanılabilir ya da o sırada acil olan bir başka işe. Burada bir noktaya da değinmek gerekiyor. Genel bilinen kanı açık kaynak kodlu yazılımın ücretsiz demek olduğudur. Açık kaynak kodlu yazılım demek ücretsiz yazılım demek değildir. Pekala bir kişi açık kaynak kodlu bir yazılım geliştirip bunu ücret karşılığı da verebilir.
Ayrıca açık kaynak kodlu yazılım devamlıdır. Yani bir kişi açık kaynak kodlu yazılımı geliştirip dağıtıp geliştirmeyi bırakırsa başka birisi geliştirmeye devam edebilir.
Özgür Yazılım Kavramı
Açık kaynağın yanında birde özgür yazılım kavramı vardır. Bu kavramlar aynı şeyi ifade ediyorlar gibi görünse de aslında ifade ettikleri aynı şey değildir. Çünkü özgür yazılım başlatılan ve devam ettirilen bir sosyal harekettir. Özgür yazılım özgür olmayan yazılımın sosyal problem olduğunu ve terk edilip özgür yazılıma geçilmesini gerektiğini bildirir. Açık kaynak kod ise özgür olmayan ve kullanılan yazılımın da bir çözüm olduğunu fakat ideal bir çözüm olmadığını söyler. Özgür yazılım felsefi olarak olaya bakarken açık kaynak kod programın geliştirilmesi, kodlanması ve iyileştirilmesi ile ilgilenir. Bu nedenle yazılımlara bakarken şunu unutmamak gerekir. Her açık kaynak kodlu yazılım özgür yazılım değildir ama tüm özgür yazılımlar açık kaynak kodludur.
Özgür yazılımın tarihçesi hakkında bilgi almak için Vikipedi sayfasına buradan ulaşabilirsiniz.
GPL ve LGPL Kavramları
GPL (General Public License) Türkçesi ile “Genel Kamu Lisansı” yazılan yazılımın telif haklarının alınması sağlar, dağıtımı sırasında kaynak kodların beraberinde verilmesini şart koşar ve 4 özgürlüğün korunmasına çalışır.
- Programı sınırsız kullanma özgürlüğü.
- Programın çalışmasını anlama ve değiştirilmesine imkan sağlanması
- Dağıtım özgürlüğü
- Değiştirilmiş halinin dağıtım özgürlüğü
LGPL ise “Kısıtlı Genel Kamu Lisansı” demektir. Bu lisans ile kaynak kodların tamamını açmadan bir kısmını göstererek özgür yazılım yazmış olursunuz. GPL hakkındaki Vikipedi sayfası için buraya, LGPL için buraya tıklayabilirsiniz.
Açık kaynak ve özgür yazılımı elimden geldiğince anlatmaya çalıştım. Okuduğunuz için teşekkürler. Esen kalın.
[…] Bilgisayarla haşır neşir olduğumuz bu günlerde bu terimi sıkça duyar olduk. Linux ve Android için bu terim sıkça kullanılıyor. İşletim sistemi Windows olan bir bilgisayara program kurarken size .exe uzantılı bir dosya verilir ve onunla programı kurarsınız. Fakat bu .exe sadece programı kurar. Siz uygulamaya müdahale edemez, kodlarını göremezsiniz. Okumaya devam et… […]