Hoşgeldiniz

Bloğumuza hoşgeldiniz. Ana Sayfada en son yayınlanan yer almaktadır. Diğer konulara üstteki menü ve sağdaki Blog Arşivi' nden bakabilirsniz.

15 Ağustos 2010 Pazar

Stallman ve GNU Projesi (2)

Stallman ve GNU Projesi (1)

Özgür Yazılım Vakfı

Emacs
kullanımına olan ilgi artarken, başkaları da GNU projesine dahil oldu ve yeniden kaynak arayışına başlamanın zamanı geldiğine karar verdik. Böylece 1985 yılında yazılım geliştirmeye katkı sağlayan vergiden muaf bir hayır kurumu olan Özgür Yazılım Vakfı’nı kurduk. Özgür Yazılım Vakfı(FSF) Emacs teyp bandı dağıtım işini de üstlendi; daha sonra bunlara diğer özgür yazılımiarı da ekleyerek(GNU olsun olmasın) ve özgür el kitaplarını satarak bu işi genişletti.
FSF bağış kabul etmekteyse de gelirinin çoğu özgür yazılım satışlarından ve bunlarla ilgili hizmetlerden gelir. Bugün, kaynak kodu CD’leri, Çalıştırılabilir yazılım içeren Cdler, (değiştirme ve yeniden dağıtma özgürlüğüne sahip)güzel basımlı el kitapları, (tercih ettiğiniz platforma göre inşa ettiğimiz)lüks dağıtımlar satmaktadır.
Özgür Yazılım Vakfı çalışanları pek çok GNU yazılım paketi yazıp bunlara destek hizmeti vermektedir. Bunların en göze batan iki örneği C kütüphanesi ve kabuğudur. GNU C kütüphanesi, GNU/Linux sisteminde
kullanılan her programın Linux ile haberleşmesini sağlayan şeydir. Özgür Yazılım Vakfı çalışanlarından Roland McGrath tarafından geliştirilmiştir. Pek çok GNU/Linux yazılımının kulladığı kabuk olan BASH(Bourne Again Shell) FSF çalışanı Brian Fox tarafından geliştirilmiştir.
Bu programlara kaynak sağlamamızın nedeni, GNU projesinin sadece araçlar veya geliştirme ortamından ibaret olmaması idi. Amacımız eksiksiz bir işletim sistemi idi ve bu programlar amacımıza ulaşmak için gerekliydi.
“Bourne Again Shell” programının adı, Unix sistemlerinin klasik kabuk programı olan “Bourne Shell” programına atıfta bulunan bir şakadır.

Özgür Yazılım Desteği

Özgür yazılım felsefesi, geniş çaplı ticaret pratiğini reddetse de ticarete karşı değildir. İş dünyası kullanıcıların özgürlüğüne saygı gösterdiği sürece başarılarının devamını dileriz.
Emacs’ın kopyalarını satmak bir çeşit özgür yazılım ticaretidir. FSF bu işi üstlenince ekmeğimi kazanmak için başka bir yol bulmam gerekti. Geliştirdiğim özgür yazılımlarla ilgili hizmetler verecektim. Bu, GNU Emacs ile nasıl programlama yapılacağını, GCC’nin nasıl yapılandırılacağını ve çoğunlukla GCC’nin
yeni platformlara uyarlanmasını öğretmeyi içeriyordu.
Bugün bu çeşit özgür yazılım işlerini bir çok şirket yapmaktadır. Kimileri CD-ROM üzerinde yüklü özgür yazılım derlemeleri satmakta, diğerleri sorulara cevap vermekten, yazılım hatalarını düzeltmeye ve yazılımlara büyük çaplı
yeni özellikler ekleme gibi geniş yelpazeye yayılan hizmetler vermektedir. Hatta yeni özgür yazılım ürünlerini piyasaya süren şirketleri bile görüyoruz.

Teknik Amaçlar

GNU’nun temel amacı özgür yazılımdı. GNU’nun Unix’e teknik bir üstünlüğü olmasa da
kullanıcıların işbirliği yapmasına izin vermek gibi toplumsal bir üstünlüğü vardı, kullanıcıların özgürlüğüne saygılı olmak gibi ahlaki bir üstünlüğü vardı.
Ama bilinen iyi standartları işimize uygulamamız oldukça doğaldı-Örneğin veri yapılarının dinamik olarak keyfi sabit limitlere göre atanması ve gerektiğinde 8-bitlik kodların elden geçirilmesi gibi.
Ayrıca 16-bitlik makinelere destek vermemeye karar vererek (o zamanlar, GNU sistemi bittiğinde 32-bitlik makinelerin standart hale geleceği bariz idi) Unix’in düşük hafızaya odaklanmasını reddettik ve 1 megabaytı geçmediği sürece hafıza kullanımını azaltacak hiçbirşey yapmayacaktık. Çok büyük
boyutlu dosyaların işlenmediği programlarda programcıları tüm girdi dosyasını çekirdeğe yazıp I/O konusunda endişe etmeden girdi dosyasının içeriğini tarama konusunda teşvik ettik.
Bu kararlar, çoğu GNU programlarının Unix sistemindeki eşdeğer programlarını aşmasını sağladı.

Bilgisayar Bağışları

GNU projesinin itibarı arttıkça insanlar projeye Unix çalıştıran makinalar bağışlamaya başladı. Bunlar oldukça faydalıydı çünkü GNU’nun bileşenlerini geliştirmenin en kolay yolu bunu Unix sistemi üzerinde yapmak ve sistemin bieşenlerini birer birer değiştirmekti. Ama buradan ahlaki bir sorun doğdu: Unix’in kopyasına sahip olmak bizim için doğru muydu acaba?
Unix sahipli bir yazılımdı(hala öyle) ve GNU projesinin felsefesine göre sahipli yazılım
kullanmamalıydık. Ama nefsi müdafa sırasında kullanılan şiddetin meşru olmasındaki akıl yürütmeyi burada da kullanarak başkalarının sahipli yazılımkullanmayı bırakmasını sağlayacak bir program yazmak için sahipli yazılım kullanmanın meşru olduğu sonucuna vardım.
Ama bu masum bir kötülük olsa da sonuçta kötülüktü. Bugün elimizde hiç Unix kopyası yok çünkü onların yerine özgür işletim sistemlerini getirdik. Makinelerin işletim sistemini değiştiremeseydik onun yerine makineyi değiştirirdik.

GNU Görev Listesi

GNU projesi ilerledikçe, gittikçe artan sayıda sistem bileşeni bulundukça veya geliştirildikçe eksikliklerimizi listelemek faydalı hale geldi. Bunu eksik kalan parçaları yazacak programcıları işe almak için
kullanacaktık. Bu liste GNU Görev Listesi diye bilinmeye başladı. Unix sistem bileşenlerinin yanısıra eksiksiz bir işletim sisteminin sahip olması gereken çeşitli yazılımları da listeledik.
Bugün GNU görev listesinde pek az Unix bileşeni kalmıştır. Çok elzem olmayan bazı bileşenler dışında bütün işler tamamlanmıştır. Ama liste, “uygulamalar” dediğimiz projelerle doludur. Dar bir
kullanıcı grubundan fazlasının ilgisini çeken programları işletim sistemine dahil etmek her zaman faydalıdır.
Listede
oyunlar bile vardı ve bu en başından beri böyleydi. Unix’te oyunlar vardı ve doğal olarak GNU’da da olmalıydı. Amaoyunlar için uyumluluğun sorun teşkil etmemesi nedeni ile Unix’te var olan oyunların listesini takip etmedik. Bunun yerinekullanıcıların sevebilecekleri geniş bir oyun yelpazesini listemize dahil ettik.

GNU Kütüphane GPL(LGPL)

GNU C kütüphanesi GNU Kütüphane Genel Kamu Lisansı adı verilen ve kütüphanenin sahipli yazılımlar ile bağıntı kurmasına izin veren
özel bir Copyleft biçimi kullanır. Bu istisnanın nedeni nedir?
Bu bir prensip meselesi değildir, bizim kodlarımızı içeren sahipli programlarının bizim adımızı da taşıması gerektiğini söyleyen bir prensip yoktur. (Bizimle
paylaşılmayacağı belli olan bir projeye neden katkıda bulunalım?) C kütüphanesi veya başka herhangi bir kütüphane için LGPL kullanmak bir strateji meselesidir.
C kütüphanesi kapsamlı bir iş yapar; her sahipli sistem veya derleyici C kütüphanesi ile gelir. Öyleyse C kütüphanemizi sadece özgür yazılımın hizmetine vermek özgür yazılıma bir avantaj sağlamaz, sadece kütüphanemizin
kullanımı için caydırıcı olur.
Bu duruma istisna teşkil eden tek bir sistem vardır; GNU sisteminde(ve GNU/Linux’ta) GNU C kütüphanesi tek C kütüphanesidir. GNU C kütüphanesinin dağıtım şartları GNU sistemi için sahipli bir yazılım derlemenin mümkün olup olmadığını belirler. GNU sistemi üzerinde sahipli yazılımların bulunmasına izin vermenin ahlaki bir sebebi yoktur, ama bunu izin vermemek, satratejik olarak özgür yazılımların geliştirilmesini teşvik etmekten çok GNU sisteminin
kullanımı için caydırıcı olur.
Bu yüzden C kütüphanesi için Kütüphane GPL’i kullanmak iyi bir stratejidir. Diğer kütüphaneler için stratejik kararlar her durum için ayrı ayrı gözden geçirilmelidir. Bir kütüphane program yazımına yardımcı olacak
özel bir işleve sahipse GPL lisansı altında yayınlamak, kullanımını sadece özgür programlarla sınırlamak, onlara sahipli yazılımlar karşısında avantaj sağlayarak özgür yazılım geliştiricilerine yardım etmenin bir yoludur .
BASH için komut satırı düzenlemesi için geiştirilmiş bir kütüphane olan GNU Readline2‘ı gözönüne alalım. Readline, kütüphane GPL’i ile değil sıradan GNU GPL ile yayınlanmıştır. Bu muhtemelen Readine’ın
kullanımını bir miktar azaltmış olsa da bizim için kayıp sayılmaz. Ayrıca Readline’ı kulanabilmek için özgür hale getirilmiş bir uygulama, topluluğumuz için gerçek bir kazanç sayılır.
Sahipli yazılım geliştiricileri, paranın getiriği avantajlara sahiptir, özgür yazılım geliştiricilerinin biribirine avantaj sağlamaya ihtiyacı vardır. Umarım birgün
yeni yazılımların yapı taşlarını oluşturacak faydalı modüller sunan ve daha çok özgür yazılımın geliştirilmesine olanak sağlayan doğrultusu sahipli yazılım ile aynı olamayan , GPL kapsamı altında bulunan geniş bir kütüphane kolleksiyonuna sahip oluruz.

Kaşınan Yeri Kaşımak mı?

Eric Raymond der ki: “Her güzel yazılım, yazılım geliştiricinin şahsi bir kaşıntısını kaşımasıyla başlar”. Belki bazen böyle olur ama GNU sisteminin çoğu temel parçası eksiksiz bir işletim sistemine sahip olmak için geliştirilmiştir. Bir plan ve bir
vizyon dahilinde geliştirilmiştir, bir güdü dahilinde değil.
Mesela Unix türü sistemler C kütüphanesine ihtiyaç duyduğu için GNU C kütüphanesini geliştirdik, Unix türü sistemler kabuğa ihtiyaç duyduğu için BASH’i geliştirdik, Unix türü sistemler tar programına ihtiyaç duyduğu için GNU tar ı geliştirdik. Kendi geliştirdiğim programlar için de bu böye oldu-GNU C Derleyicisi, GNU Emacs, GDB ve GNU make.
Bazı GNU programları özgürlüğümüze yönelen belli tehditleri bertaraf etmek için geliştirildi. LZW3 patentleri yüzünden topluluğumuzun kaybettiği Compress programının yerini alması için gzip programını geliştirdik. LessTif’i geliştirmek üzere insanlar bulduk, yakın zamanda GNOME ve belli sahipli kütüphanelerden kaynaklanan sorunları belirlemek üzere üzere Harmony projeleri başladı. Şu anda populer sahipli şifreleme yazılımlarının yerini alması için GNU Privacy Guard(GNU Mahremiyet Koruyucusu) programını geliştiriyoruz çünkü
kullanıcılar özgürlükle mahremiyet arasında seçim yapmaya zorlanmamalıdır.
Tabi ki bu programları yazan kişiler bu işe ilgi duydular ve kendi ilgi ve ihtiyaçları uğruna pek çok
yeni özelliği bu programlara eklediler. Ama bu, programların varoluş sebebi değildir.

Beklenmeyen Gelişmeler

GNU projesinin başlangıcında GNU sistemini tamamlayıp bir bütün olarak yayınlayacağımızı hayal etmiştim. Böyle olmadı.
Sistemin her bileşeni Unix sistemi üzerinde geliştirildiğinden GNU sisteminin tamamlanmasından çok önce her parça Unix sistemi üzerinde ayrı ayrı çalışabiliyordu. Bu programlardan bazıları popüler oldu ve
kullanıcılar bunları geliştirdiler ve Unix’in uyumsuz versiyonlarına ve bazen de diğer işletim sistemlerine uyarlamaya başladılar.
Bu süreç programları daha güçlendirdi ve kaynak sağlayıcıların da katkı verenlerin de ilgisini GNU projesine çekti. Ama GNU geliştiricilerinin eksik bileşenleri tek tek yazmak yerine mevcut bileşenleri uyarlamak ve bunlara
yeni özelliklereklemek için harcadığı zaman asgari düzeyde çalışabilecek bir sistemin tamamlanmasını birkaç yıl geciktirdi.

GNU Hurd

1990 yılına gelindiğinde GNU sistemi tamamlanmak üzereydi; eksik olan tek temel bileşen çekirdek(kernel) idi. Çekirdeğimizi Mach üzerinde çalışan sunucu işlemleri şeklinde geliştirmeye karar verdik. Mach, Carnegie Melon ve daha sonra Utah Üniversitesinde geliştirilen bir mikro-çekirdekti; GNU Hurd, Mach üzerinde çalışan bir dizi sunucu işlemi(veya “gnu sürüsü”) idi ve Unix çekirdeğinin yaptığı pek çok işi yapıyordu. Çekirdeği geliştirme çalışmalarına başlamamız, Mach’in söz verildiği gibi özgür yazılım haline gelmesini beklememizden dolayı gecikti.
Bu tasarımı seçmemizin sebeplerinden biri işin en zor tarafı gibi görünen kaynak seviyeli bir hata ayıklayıcı olmadan çekirdek programlarının hata ayıklamasını yapmaktan kaçınmak içindi. İşin bu kısmını Mach’te yaptık ve Hurd sunucularının
kullanıcı programları olarak hata ayıklamasını GDB ile yapmayı umuyorduk. Ama bunu başarmak oldukça zamanımızı aldı ve birbirine mesaj gönderen çok işlem-kodlu sunucular, hata ayıklamasını daha zor hale getiriyordu. Hurd’ün düzgün bir biçimde çalışmasını sağlamak yıllar aldı.

Alix

En başta GNU çekirdeğinin ismi Hurd olarak düşünülmemişti. Orijinal ismi Alix-o zamanlar sevgilim olan kadının adı- idi.O, bir Unix Sistem yöneticisi idi ve isminin Unix isimlendirme tarzına ne kadar uyumlu olduğunu belirti ve arkadaşlarına şakadan “birisi ismimi çekirdeğe vermeli” dedi. Bir şey demedim ama Alix ismini bir çekirdeğe vererek ona sürpriz yapmak istedim.
Bu böyle devam etmedi . Çekirdeğin ana geliştircisi olan Michael Bushnell (Şimdi Thomas) Hurd ismini tercih etti ve Alix’i çekirdeğin belli bir kısmına karşılık gelecek biçimde yeniden tanımladı. Bu kısım sistem çağrılarını tutup Hurd sunucularına
mesaj göndererek onları yerine getirecekti.
Sonunda Alix ile ayrıldık ve o ismini değiştirdi; bundan bağımsız olarak Hurd tasarımı, C Kütüphanesinin sunuculara doğrudan mesaj gönderebileceği şekilde değiştirildi ve Alix bileşeni tasarımdan çıkarak yok oldu.
Ama bu gelişmeler olmadan önce, bir arkadaşı Hurd’ün kaynak kodu içinde Alix ismine rastlamış ve bundan ona söz etmişti. İsim, işe yaramıştı.

Linux ve GNU Linux

GNU Hurd, üretimde
kullanmak için hazır değildi. Neyse ki 1991 yılında başka bir çekirdek mevcuttu; Linus Torvalds Unix uyumlu başka bir çekirdek geliştirip Linux ismini vermişti. 1992 civarında Linux’u daha tam olarak bitmemiş GNU sistemi ile birleştirince tamamen özgür olan bir işletim sistemi meydana geldi.(Tabi bu ikisini birleştirmek oldukça esaslı bir işti) bugün Linux sayesinde GNU sisteminin bir versiyonunu çalıştırabilmekteyiz.
Biz bu sistem bileşimine GNU sistemi ve Linux çekirdeğinin bileşimini vurgulamak için GNU/Linux diyoruz.

Gelecekteki Zorluklar

Geniş bir yelpazeye yayılan özgür yazılımları oluşturmadaki yeteneğimizi kanıtladık. Bu, yenilmez ve durudurulmaz olduğumuz anlamına gemez. Pek çok zorluk, özgür yazılımın geleceğini belirsizleştirmektedir; bunlarla başa çıkmak beki de yıllarca sürecek azimli bir uğraş ve sabır gerektirecektir. İnsanların özgürlüklerine değer verdiğinde ve onu kimsenin almasına izin vermedikleri zaman gösterdikleri bir çeşit kararlılık lazım olacaktır.
Bundan sonraki dört kesimde bu zorluklar tarışılacaktır.

Gizli Donanımlar

Donanım üreticileri, donanım ayrıntılarını gizlemeye gitgide daha çok meyletmektedirler. Bu da Linux ve XFree864‘nın yeni donanımları destekleyebilmesi için sürücülerin yazılmasını zorlaştırmaktadır. Şimdi tamamen özgür sistemlerimiz var ama geleceğin bilgisayarlarını destekleyemediğimiz taktirde onları elimizde tutamayacağız.
Bu sorun ile başa çıkmanın iki yolu vardır. Programcılar, donanımları nasıl destekleyeceklerini bulmak için ters-mühendislik yapabilir. Geriye kalanlarımız ise özgür yazılımlar tarafından desteklenen donanımları tercih edebilir; sayımız arttıkça, donanımların gizliliği, kendi kendini mağlup eden bir politika haline gelecektir.
Ters mühendislik zor bir iştir; bu işin üstesinden gelmeye yetecek kadar kararlı programcılarımız olacak mı? Özgür yazılımın bir prensip meselesi olduğu ve özgür olmayan sürücülere hoşgörü gösterilemeyeceği konusunda güçlü bir kamuoyu yaratabilirsek buna cevabımız “evet” olacaktır. Büyük kısmımız özgür sürücüleri
kullanabilmek için fazladan para ve zaman harcayacak mıdır? Özgürlüğe kavuşma kararlığımız yaygınlaşırsa buna cevabımız “evet” olacaktır.

Özgür Olmayan Kütüphaneler

Özgür bir işletim sistemi üzerinde çalışan özgür olmayan bir kütüphane, özgür yazılım geliştiricileri için bir tuzak işlevi görür. Kütüphanenin çekici
özellikleri yemdir; kütüphaneyi kullanırsanız tuzağa düşersiniz çünkü yazılımınız özgür bir işletim sisteminin parçası olamaz. (Açık konuşacak olursak, programınızı sisteme dahil edebiliriz ama o kütüphane olmadan çalışmaz) Daha da kötüsü sahipli bir kütüphane kullanan bir program popüler olursa diğer masum programcıları da tuzağa çekebilir.
Bu sorunun ilk örneği 1980′li yıllardaki Motif5 araç takımı(toolkit-Ç.N) idi. Henüz ortalıkta özgür işletim sistemi yoksa da sonradan onlar için yaratabileceği sorun barizdi. GNU projesi buna iki şekilde tepki verdi: özgür yazılım projelerine Motif’e destek oldukları kadar özgür X araç takımı programcıklarına da destek olmalarını söyleyerek ve programcılara Motif’in yerini alabilecek bir program yazmalarını söyleyerek. Bu işin tamamlanması yıllar aldı; Hungry Programmers adlı programcı grubu tarafından geliştirilen LessTif’in çoğu Motif uygulamalarını destekleyecek kadar güçlü hale gelebilmesi ancak 1997 yılında mümkün oldu.
1996 ve 1998 yılları arasında KDE masaüstü adlı önemli bir özgür yazılım derlemesinde Qt adı verilen özgür olmayan Grafik
Kullanıcı Arabirimi(GUI) araç takımı kütüphanesi kullanıldı.
Özgür GNU/Linux sistemleri KDE’yi
kullanamıyordu çünkü kütüphaneyi kullanamıyorduk. Ama özgür yazılıma sadık kalmak konusunda kararsız olan bazı ticari GNU/Linux dağıtıcıları yetenekleri yüksek fakat özgürlüğü az olan bir sistem sistem yaratarak KDE’yi sistemlerine eklediler. KDE grubu insanların Qt kullanmasını etkin bir biçimde teşvik ediyordu ve milyonlarca yeni linux kullanıcısının aklına bunun sorun olabileceği gelmedi. Durum vahim gibi gözüküyordu.
Özgür yazılım topluğu bu soruna iki şekilde tepki verdi:GNOME ve Harmony
GNOME(Gnu Ağ Nesne Modeli Çevre Ortamı) GNU’nun masaüstü projesi idi. 1997 yılında Miguel Icaza tarafından başlatılan ve Red Hat Software’in desteği ile geliştirilen GNOME benzer bir masaüstü imkanlarını yalnızca özgür yazılımları kulanarak sağlamak üzere yola koyulmuştu. C++ dışında pek çok programlama dilini desteklemek gibi teknik avantajları da vardı. Ama ana amacı özgürlüktü: Özgür olmayan hiçbir yazılımı
kullanmamak.
Uyumlanabilir bir kütüphane olan Harmony KDE yazılımarını Qt’yi
kullanmadan çalıştımak üzere tasarlanmıştı.
1998 Kasımında Qt geliştiricileri, Qt’yi özgür yazılım yapacak bir lisans değişikliğine gittiklerini duyurdular. Tabi ki bunun tam nedenini bilmenin imkanı yok ama sanırım bu kısmen topluluğun Qt’nin özgür yazılım olmamasından kaynaklanan soruna kesin tepki vermesi sayesinde olmuştu. (
Yeni lisans sakıncalı ve insafsız olduğundan dolayı hala Qt kullanmaktankaçınmakta fayda vardır.)6
Bir daha ki cazibeli özgür olmayan kütüphaneye tepkimiz ne olacak? Tüm toplum tuzaktan uzak durmanın gereğini anlayacak mı? Ya da bir çoğumuz konfor uğruna özgürlükten vazgeçip ciddi bir problem mi yaratacak? Geleceğimiz felsefemize bağlıdır.

Yazılım Patentleri

Karşıaştığımız en kötü tehdit algoritma ve özelliklerin
kullanımını 20 yıla kadar erteleyebilecek olan yazılım patentlerinden gelmektedir. LZW sıkıştırma algoritmaları 1983 yılında uygulanmaya başlandı ve biz halen düzgün sıkıştırılmış GIF dosyaları oluşturabilecek özgü yazılımlar üretemiyoruz. 1998 yılında MP3 yapımına yarayan özgür bir program patent davası yüzünden dağıtımdan kaldırıldı .
Patentlerle başa çıkmanın yolları vardır: patentin geçersiz olduğuna dair kanıtlar arayabiliriz ve o işi yapmak için alternatif yollar arayabiliriz. Ama iki yöntem de bazen işe yarar; ikisi de işe yaramadığında patent, tüm özgür yazılımları kullanıcıların kullanmak istediği bir özellikten mahrum kalmaya zorlayabilir. Böyle olursa ne yaparız?
İçimizden özgürlük aşkına özgür yazılıma değer verenler her halükarda özgür yazılımın yanında yer alacaktır. Patentli özellikler olmadan işimizi yapmayı başaracağız. Ama özgür yazılımın teknik olarak üstün olmasını bekleyenler patentlerin bir özelliğin
kullanılmasını engellemesi durumunda buna “başarısızlık” diyecektir. Bu yüzden “katedral”7 modeli yazılım geliştirmenin pratik etkinliğinden ve bazı özgür yazılımların güvenilirliğinden ve gücünden bahsetmek faydalı olsa da burada durmalıyız. Özgürlükten ve prensiplerden bahsetmeliyiz.

Özgür Belgelendirme

Özgür işletim sistemlerimizdeki en büyük eksiklik yazılımdan kaynaklanmaz- Eksiklik, sistemlerimizin içerebileceği iyi özgür yazılım el kitaplarının olmamasıdır. Belgelendirme herhangi bir yazılım paketinin en temel kısmıdır; önemli bir özgür yazılım iyi bir özgür el kitabı ile gelmiyorsa bu büyük bir eksiktir. Bugün bir sürü eksiğimiz var.
Özgür belgelendirme tıpkı özgür yazılım gibi
fiyatla değil özgürlük ile alakalıdır. Özgür bir el kitabında aranacak ölçütler özgür yazılımda aranacakların hemen hemen aynısıdır: Bu bütün kullanıcılara kesin bir özgürlük sağlama meselesidir. Programın her kopyasında el kitabının bulunabilmesi için kağıt üzerinde veya çevrimiçi dağıtıma (ticari satış dahil) müsaade edilmelidir.
Değiştirme izni de çok önemlidir. İnsanların her tür makale ve kitabı değiştirme iznine sahip olması gerektiğini sanmıyorum. Örneğin sizlerin ve benim eylem ve
görüşlerimizi belirten bu ve bunun gibi makalelerin değiştirilmesine izin vermek zorunda olduğumuzu sanmıyorum.
Fakat değiştirme özgürlüğünün özgür yazılımın belegelendirmesi için bu kadar önemli olmasının
özel bir nedeni vardır. İnsanlar yazılımı değiştirme haklarını kullanıp o yazılımın özelliklerinden bazılarını çıkardıklarda veya bazı özelliklerieklediklerinde, özenli iseler el kitabını da değiştireceklerdir-Böylece değiştirilmiş program ile ilgili doğru ve kullanılabilir bilgi sunabilirler. El kitabı, programcıların özenli olmasını sağlamaz ve işi bitirmek toplumumuzun ihtiyaçlarını karşılamaz.
Değişikliklerin nasıl yapılacağı ile ilgili bazı sınırlar koymak çok büyük sorun yaratmaz. Örneğin asıl yazarın telif hakkı uyarısının, dağıtım şartlarının, yazarların listesinin muhafaza edilmesi sorun yaratmaz. Değiştirilmiş versiyonların değiştirildiğine dair not eklenmesi, hatta teknik içerikli olmadıkarı sürece değiştirilemeyecek veya silinemeyecek bölümlerin olması da sorun değildir. Bu türlü kısıtlamalar sorun yaratmaz çünkü özenli bir programcıyı, el kitabını değiştirilmiş programa
uygun hale getirmekten alıkoymazlar. Başka bir deyişle özgü yazılım topluluğunun el kitabından tam olarak yararlanmasını engellemezler.
Ama, el kitabının “teknik” içeriğinin değiştirilmesi, daha sonra bilinen tüm ortam ve kanallardan dağıtılabilmesi mümkün olmalıdır. Aksi taktirde kısıtlamalar topluma mani olur, el kitabı özgür olmaz ve başka bir el kitabına ihtiyaç duyarız.
Özgür yazılım geliştiricileri geniş kapsamlı el kitapları hazırlayacak bilince ve kararlılığa sahip olacak mıdır? Geleceğimiz, bir kere daha, felsemize bağlıdır.

Özgürlükten Bahsetmeliyiz

Tahminlere göre bugün Debian GNU/Linux ve Red Hat GNU/Linux gibi GNU/Linux sistemlerinin on milyon
kullanıcısıvardır. Özgür yazılım öylesine pratik avantajlar geliştirmiştir ki kullanıcılar sadece pratik nedenlerden dolayı akın etmektedir.
Bunun iyi sonuçları barizdir: özgür yazılım geliştirmek konusuna artan ilgi, özgü yazılım iş dünyası için daha fazla müşteri ve şirketleri sahipli yazılım ürünleri üretmek yerine özgür yazılım üretmeye teşvik etmek için daha fazla güç.
Ama yazılıma olan ilgi, temelinde yatan felsefe hakkındaki bilinçten daha hızlı büyümektedir ve bu sorun yaratır. Yukarıda saydığımız zorluklara ve tehditlere karşı koyma yetimiz özgürlükten taviz vermeme azmimize bağlıdır. Toplumun bu azme sahip olduğundan emin olabilmek için topluluğumuza
yeni katılan kullanıcılara bu fikirleri yaymalıyız.
Ama bunu yapmayı beceremiyoruz:
yeni kullanıcıları topluluğumuza çekmek için gösterdiğimiz çabalar onlara topluluğumuzun üyesi olmanın kurallarını öğretmek için harcadığımız çabaları kat kat aşıyor. İkisini de yapmaya ve iki çabayı dengelemeye muhtacız.


Açık Kaynak”

1998 yılında topluluğumuzun bir kısmı “özgür yazılım” kelimesini
kullanmayı bırakıp bunun yerine “açık kaynak” demeye başlayınca yeni kullanıcılara özgürlükle ilgili şeyler öğretmek zorlaştı.
Bu kelimeyi tercih edenlerin bazısının “free”(özgür) ve “gratis”(bedava) kelimeleri arasındaki anlam kargaşasından kaçınmak gibi geçerli nedenleri vardı. Diğerleri ise özgür yazılım hareketi ve GNU projesini harekete geçiren ilkenin ruhundan kendilerini ayırmak ve bunun yerine yetkililerin ve ticari kulanıcıların ilgisini çekmeyi amaçlamıştı. Çoğu, karı özgürlüğün, toplumun, ilkelerin üstünde gören bir ideolojiye sahipti. Bu yüzden “açık kaynak” ın dili yüksel kaliteli, güçlü yazılım yapmaya odaklanmıştır ama özgürlük, toplum ve ilke gibi fikirlerden kaçınır.
“Linux” dergileri bunun açık örneğidir-GNU/Linux’ta çalışan sahipli yazılımların reklamları ile doludurlar.
Yeni Motif’ler ve Qt’ler ortaya çıktığında bu dergiler kullanıcılara bunlardan kaçınmalarını mı söyleyecektir yoksa bunların reklamlarını mı yayınlayacaktır?
İş dünyasının desteği topluma çeşitli yönlerden katkı sağlayabilir, aynı zamanda, faydalıdır. Özgürlük ve ilkelerden daha az söz ederek onların desteğini
kazanmak korkunçtur, yoksullarla kentliler arasındaki eğitim uçurumunu daha da derinleştirir.
“Özgür Yazılım” ve “Açık Kaynak”, üç aşağı beş yukarı aynı yazılım kategorisini tanımlar ama yazılım ve değerler ile ilgili farklı şeyler söyler. GNU Projesi, sadece teknolojinin değil de özgürlüğün önemli olduğunu ifade etmek için “özgür yazılım” terimini
kullanmaya devam etmektedir.

Dene!

Yodanın felsefesi(“Deneme yoktur”) kulağa hoş gelse bile bana göre değil. İşimin büyük kısmını, işi yapabilecekmiyim diye endişelenerek, yaptığımda amacıma ulaşmama yetip yetmeyeceğinden emin olmadan yaptım. Ama yine de denedim çünkü şehrim ile düşmanım arasında benden başka kimse yoktu. Bazen kendimi bile şaşırtarak başarılı oldum.
Bazen başaramadım ve şehirlerimden bazıları düştü. Hemen tehdit altında olan başka bir şehir buldum ve savaşa hazırlandım. Zaman içerisinde tehditleri bulup diğer hackerları bana katılmaya çağırarak kendimi şehrime siper etmeyi öğrendim.
Bu günlerde yalnız değilim. Saf tutmaya uğraşan bir hacker birliği gördüğümde bu şehrin şimdilik ayakta kalacağını anlıyorum, ferahlık ve haz duyuyorum. Ama tehlikeler yıldan yıla büyüyor ve şimdi de Microsoft, topluluğumuzu açıktan açığa hedef alıyor. Özgürlüğümüzün geleceği garanti altında değil. Garanti altında olduğuna inanmayın! Özgürlüğünüzü korumak istiyorsanız onu savunmaya hazırlıklı olmalısınız.
*Aslı, Açık Kaynaklar: Açık Kaynak Devriminden Sesler;(O’Reilly, 1999)’de yayınlanmıştır Bu makale “Özgür Yazılım Özgür Toplum :Richard M. Stallman’dan Seçme Makaleler” kitabında yer alır.(Boston:GNU Press, 2004) ISBN 1-882114-99-X, www.gnupress.org Bu uyarının konulması kaydıyla makalenin herhangi bir ortamda eksiksiz ve tam olarak kopyalanması ve dağıtımı serbesttir.

1Hack gibi çeşitlilik arzeden bir kavram hakkında bir tanım yapmak zor olsa da bence bu eylemlerin ortak noktası şakacılık, zekilik ve keşiftir. Öyleyse «hack etmek» demek mümkün olanın sınırlarını şakacı bir zeka ile keşfetmektir. Şakacı zekayı sergileyen eylemlerin «hack değeri» vardır. Yanlış anlaşılmayı düzeltmek için hack etme ile güvenlik ihlali arasına bir ayrım koyarak-güvenlik ihlali için «crack etme» (kırma-Ç.N.) terimini
kullanarak bize yardımcı olabilirsiniz. Bunu yapan kişiler «cracker»lardır. Bazıları aynı zamanda hacker olabilir, tıpkı satranç oyuncusu veya golfçü olabilecekleri gibi. Ama çoğunluğunun hackerlık ile alakası yoktur.(“Hack Üzerine”RMS;2002)

2GNU Readline kütüphanesi,
kullanıcıların yazılan komut satırlarını düzenlemesini sağlayan programların kullanması için bir dizi işlev sunar.

3Lempel-Ziv-Welch algoritması verilerin sıkıştırılması için kullanılır.

4Xfree86, ekran donanımınıza(fare, klavye, vs.) arayüz oluşturan bir masaüstü ortamı sağlar. Değişik platformlar üzerinde çalışabilir.

5Motif, X pencereleri üzerinde çalışan bir arayüz ve pencere yöneticisi idi.

62000 yılı Ekim ayında Qt’nin GNU GPL lisansı altında yayınlanması sorunu kökten çözdü.

7Muhtemelen “ ‘pazar’ modeli yazılım geliştirmenin” demek istemiştim, alternatif olmasına rağmen o zamanlar
yeni ve tartışmalıydı.



Stallman ve GNU Projesi (1)

KAYNAK : http://yazlimciyim.blogspot.com/
Bu yazı, sahibinin izni ile burada yayınlanmaktadır.
Yazının Sahibi : tuxweet ' te Ugurcan377 (Uğurcan Ergün)

Hiç yorum yok:

Yorum Gönder