Özgür Yazılım Felsefesi’nin Omurgası GNU’yu Anlamak

GNU nedir?

Bu yazıda GNU projesine ve onun özgür ve açık kaynaklı yazılım davasını savunmadaki önemli rolüne bakıyoruz.

Özgür yazılımla ilgileniyorsanız ve Unix, Linux gibi işletim sistemleriyle ilgiliyseniz, şüphesiz GNU kısaltmasıyla birçok kez karşılaşmışsınızdır. Dolayısıyla, GNU’nun ne olduğu hakkında merak içerisindeyseniz, endişelenmeyin; yalnız değilsiniz.

Yazımızın ilerleyen bölümlerinde, GNU’nun özgür yazılım ilkelerinin nasıl bir devrimi ateşlediğini ve bu felsefenin günümüzde halâ  geçerliliğini sürdürdüğünü göreceğiz.

Ancak, başlamadan önce 1970’lere dönelim ve GNU’ya yol açan nedenlere bir bakalım.

Öyleyse gelin bu heyecan verici yolculuğa birlikte çıkalım ve GNU kısaltmasının ve onun dayandığı Özgür Yazılım Felsefesinin arkasında nelerin yattığını ortaya çıkaralım.

GNU’nun Doğuşu

Hikayemiz 1971’lerde, yetenekli matematikçi ve Harvard Üniversitesi’nde fizik birinci sınıf öğrencisi olan 18 yaşındaki Richard Stallman’ın, kariyerine MIT Yapay Zeka Laboratuvarı’nda tamamen özgür yazılım kullanan bir grupta çalışarak başlamasıyla başlıyor.

Evet, özgür yazılım. O zamanlar, yani 1970’lerde, yazılımın ücretsiz olarak dağıtılması oldukça yaygındı. Ancak 1980’lerin başında bu durum kökten değişti.

Şirketler yazılımlarının patentini topluca almaya başladı ve özgür yazılımın payının önemli ölçüde azaldı. Bu, programcıların özgürce işbirliği yapması, kodu paylaşması ve üzerinde çalışması şeklindeki teamülleri büyük ölçüde bozdu.

Özel mülk yazılımların ve kısıtlayıcı lisansların istilacı dalgasından bıkan Stallman, yazılımın herkes tarafından serbestçe erişilebildiği, değiştirilebildiği ve dağıtılabileceği bir dünya tasavvur etti.

Bütün bunlar onun özgür yazılım ilkelerini desteklemeye ve savunmaya kararlı bir organizasyon kurma kararını etkiledi. Nunun sonucunda 1983’te Stallman, tamamen özgür bir işletim sistemi yaratmaya yönelik iddialı bir çaba olan GNU Projesini duyurdu. Vizyonu, tüm yazılım kullanıcılarının sahip olması gerektiğine inandığı dört temel özgürlük etrafında şekilleniyordu:

  • Programı herhangi bir amaç için çalıştırma özgürlüğü.
  • Programın nasıl çalıştığını inceleme ve değiştirme özgürlüğü.
  • Yazılımın kopyalarını yeniden dağıtma özgürlüğü.
  • Yazılımı geliştirme ve bu iyileştirmeleri toplulukla paylaşma özgürlüğü.

GNU Nedir?

Stallman, ilhamının Unix işletim sisteminden farklılığını vurgulayarak “GNU”yu, “GNU Unix Değildir(GNU’s Not Unix)” ifadesinin kısaltması olarak belirledi. Başka bir deyişle, Unix işletim sisteminin, GNU’ya ilham vermesine rağmen farklı olduğunu ve özgür olmadığını söylemenin eğlenceli bir yolu!

Bir dakika, Unix özgür bir işletim sistemi değil mi? Burada hemen, yüzyılın başında çok popüler hale gelen ve günümüzde Unix’in eşanlamlısı olarak yaygın şekilde kullanılan BSD işletim sistemleriyle karıştırılmaması gerektiğini söyleyelim.

Unix tescilli bir işletim sistemidir, yani kapalı kaynaktır. Unix, AT&T’nin Bell Laboratuarlarında geliştirildi ve GNU’nun 1980’lerde ortaya çıktığı dönemde önde gelen kapalı kaynaklı işletim sistemiydi. BSD ise “Unix benzeri” bir işletim sistemidir ve açık kaynak olduğundan pek çok çeşidi vardır.

Şimdi konuya geri dönelim. Özgür yazılımın ilkelerini yaymak ve GNU Projesi’ni desteklemek için Stallman, 1985 yılında Özgür Yazılım Vakfı’nı (FSF) kurdu.

Aynı yıl, GNU Projesi’nin arkasındaki motivasyonu, hedefleri ve felsefeyi özetleyen, bir eylem çağrısı işlevi gören, programcıları projeye katılmaya ve kullanıcıları da girişimi desteklemeye teşvik eden ve artık bir efsane olan GNU Manifestosu’nu yayınladı.

Bir dipnot olarak, “özgür yazılım” ve “açık kaynak” terimleri bazen birbirinin yerine kullanılsa da, incelikli felsefi farklılıkların bulunduğunu belirtelim. İlki kullanıcı özgürlüklerini vurgularken, ikincisi işbirlikçi ve şeffaf geliştirme metodolojisine odaklanır.

Tamam, şimdiye kadar ideolojik açıdan GNU projesinin arkasında nelerin olduğunu ortaya koyduk. Peki bunun yazılım tarafıyla nasıl bir ilişkisi var?

GNU, bizim ifade ettiğimiz anlamda bir işletim sistemi değildir. Bir işletim sisteminin oluşturulmasını sağlayan GNU, çok çeşitli çekirdek yazılım araçlarını altında toplayan bir şemsiyedir ve bunların kullanılması, işletim sistemini GNU yapar.

Dahası, GCC ve Bash kabuğu gibi GNU araçları yazılım geliştirmede temel olmuştur.

Dolayısıyla GNU Projesi, programlar, araçlar ve yardımcı programlar da dahil olmak üzere birçok yazılımın yapı taşını geliştirmek için çok çalıştı. Ancak kritik bir parça eksikti; yazılımın kalbi olan çekirdek. Ve Linux’un devreye girdiği yer de tam burasıdır.

GNU + Linux: Mükemmel Bir Eşleşme

Hikayeyi biliyorsunuz aslında. Yıl 1991 ve Helsinki Üniversitesi’nde 21 yaşındaki Finlandiyalı bilgisayar bilimi öğrencisi Linus Torvalds, bir işletim sistemi çekirdeği yazıyor.

Artık Torvalds’ın başlı başına bir yazılım parçası olan bir çekirdeği var ama pratikte çekirdeğin, kendisiyle etkileşime girecek ve tam bir işletim sistemi oluşturacak araçlar ve yardımcı programlar olmadan çok az  değeri var.

GNU Projesi ise tüm bu araçları geliştirmiş, ancak etkileşim kurabileceği çekirdeği geliştirmemiş.

Ve olması gereken şey oluyor!

Torvalds, GNU Projesi tarafından geliştirilen araçları ekleyerek çekirdeğini eksiksiz bir işletim sistemi haline getiriyor. 25 Ağustos 1991’de yazılım sektörünü sonsuza dek değiştirecek “hobi projesini” tamamladığına dair artık efsaneleşen duyuruyu yapıyor.

Gerisi malum.

Bu bizi, 30 yılı aşkın bir süredir, bazen şaka, bazen de ciddi tartışmalara yol açan önemli bir soruya götürüyor.

Linux mu, GNU/Linux mu? Hangisi doğru?

Buraya kadar olan gerçekleri özetlemek gerekirse…

Ortada iki iddialı proje vardı.

Bunlardan ilki, tamamen özgür bir işletim sistemi yaratma vizyonuyla 1983 yılında Richard Stallman tarafından başlatılan GNU’ydu. GNU pek çok kullanışlı araç ve yardımcı program geliştirdi ancak hayati bir parçayı, yani işletim sisteminin kalbi olan çekirdeği ıskalamıştı.

Daha sonra 1991 yılında Linus Torvalds adında genç bir kodlayıcı Linux çekirdeğini tanıttı. Bu, bir yapbozun son parçasını bulmak gibiydi! GNU bileşenleriyle eşleştirildiğinde eksiksiz ve özgür bir işletim sistemi doğdu.

İşte isimlerle ilgili ebedi tartışmalar bu noktada başladı! Birçok kimse, işletim sisteminin tamamını “Linux” olarak adlandırmaya ve çekirdeğe atıfta bulunmaya başladı. Ancak diğer bir kısım, GNU Projesi’nin önemli katkılarını onurlandırmak ve yazılım özgürlüğü felsefesini vurgulamak için adın “GNU/Linux” olması gerektiğini düşündü.

Artık, “GNU/Linux”, işletim sisteminin kökeni ve değerlerinin daha kapsamlı bir resmini çiziyor. Aynı zamanda “Linux”, özgür yazılım dünyasına yeni gelenler, deneyimli profesyoneller ve devlet kurumları tarafından kolektif bir terim olarak kullanılarak gündelik konuşmalarda daha yaygın kullanılıyor.

Yani evet, “GNU/Linux” doğru adlandırmadır. Ancak, ona yalnızca “Linux” demek, GNU Projesi’nin önemini ve katkısını hiçbir şekilde azaltmaz. Her ne kadar tamamen teknik olarak Linux yalnızca çekirdeğe atıfta bulunsa da, GNU/Linux, işletim sisteminin dünya çapında toplu olarak kullanılan adıdır.

GNU’nun Günümüz Yazılım Dünyası Üzerindeki Etkisi

GNU’nun özgür yazılım erişimi felsefesi, yazılım kullanımının demokratikleştirilmesinde ve yeniliğin teşvik edilmesinde her zaman çok önemli olmuştur. Özgür Yazılım Hareketi’ne öncülük ederek ve sayısız açık kaynak girişiminin temelini atarak yazılım dünyasında silinmez bir iz bıraktı.

GNU ve Linux geliştiricilerinin ortak çabaları, dünya çapında milyonlarca sunucu, masaüstü bilgisayar ve gömülü sistem üzerinde çalışan, tescilli işletim sistemlerine geçerli bir alternatif haline gelen sağlam, ölçeklenebilir ve ücretsiz bir işletim sistemi ortaya çıkardı.

GNU Projesi’nin etkisi aynı zamanda kurumsal dünyaya da yayılıyor. Başta IBM, Google, Facebook olmak üzere teknoloji devleri, topluluk odaklı geliştirmenin değerinin farkında olarak açık kaynaklı yazılımlardan yararlanıyor.

Aynı zamanda Linux, çoğu web sunucusuna güç vererek internetin omurgası haline geldi ve modern küresel bilgi altyapısını destekleyen bulut bilişim ve sanallaştırma teknolojileri için fiili standart oldu.

Dünya çapındaki eğitim kurumları ve araştırma kuruluşları da, yeni teknolojileri öğrenmek, öğretmek ve geliştirmek için GNU araçlarının ve Linux işletim sisteminin gücünden yararlanıyor.

Peki GNU’nun modern yazılım dünyası üzerindeki etkisi?

Tek kelimeyle, muazzam!

Sonuç olarak, Richard Stallman tarafından 40 yıl önce başlatılan GNU Projesi, yazılım ve bilgi işlem tarihinde meydana gelen en önemli “şey”lerden biridir ve bugün dünyanın bilgi altyapısını büyük ölçüde yönlendirmekte ve şekillendirmektedir.

Bitirirken…

1983 yılında Richard Stallman tarafından başlatılan GNU Projesi, özellikle yazılıma ilişkin özgürlük felsefesi üzerine kurulmuştur. Bu proje bir dizi program, kütüphane ve geliştirme aracından daha fazlasıdır ve yazılımın maliyet ve haklar açısından özgür olduğu bir dünya vizyonunu, bir hareketi temsil ediyor.

Bir pasta satın aldığınızı, alırken satıcının size bunu paylaşılamayacağınızı, değiştiremeyeceğinizi ve hatta nasıl yapıldığını bile anlayamayacağınızı söylediğini hayal edin. İşte kapalı kaynaklı yazılım böyle çalışır. Ve tam bu noktada GNU ve Özgür Yazılım Hareketi devreye girer!

Bunu tersine çevirerek yazılımı anlamamıza, geliştirmemize ve dünyayla paylaşmamıza olanak tanıyıp yeniliği, topluluk işbirliğini ve kullanıcı kontrolünü teşvik ediyorlar.

GNU ve Özgür Yazılım Hareketi’nin öyküsü, ideallerin ve topluluğun muazzam gücünün bir kanıtıdır. GNU’nun doğuşu yalnızca bir projenin başlangıcı değil, daha özgür ve daha kapsayıcı bir dijital dünyaya giden yolu aydınlatmaya devam eden bir hareketin şafağıydı.

Dijital çağ gelişmeye devam ederken, GNU’nun ilkeleri teknoloji, haklar ve özgürlükler arasındaki karmaşık etkileşimin yönetilmesinde hayati önem taşımaya devam edecek.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir