Açık Kaynak Kod Nedir? Özgür Yazılım Nedir? Ne İşe Yarar? Nasıl Yazılır?

Özgür ve açık kaynak kodlu (AKK) yazılım; yazılım özgürlüğünü amaçlayan ve bilgisayar kullanıcılarının kullandıkları yazılım üzerinde kullanım, dağıtım, değiştirme özgürlükleri olduğunu vurgulayan özgür yazılım hareketi ile beraber ortaya çıkmıştır. Ağırlıklı olarak Avrupa Birliği tarafından kullanılan bir ifadedir.

Yazılımların donanımla dağıtıldığı dönemlerde, donanım aldığınızda yazılımı da beraber gelirdi ve o yazılım sadece o donanımla beraber çalışabilirdi; o yazılımı dilediğiniz gibi değiştirme, biçimlendirme șansınız vardı. Yavaş yavaş kişisel bilgisayarların yaygınlaşması, farklı karmaşık yazılımların ortaya çıkması, beraberinde yazılım üreticilerinin yazılımlarını korumaya yönelik olarak telif haklarına başvurmasına ve önceden donanımı kullanan uzman kişilerin değiştirebilmesi için açık kaynak olan kodların kapatılmasına, yazılımla beraber dağıtılmamasına neden olmaya başladı. Artık aldığınız bir yazılımı arkadaşlarınızla paylaşmanız, kaynak kodlara erişiminiz olmadığı için dilediğiniz şekilde değiştirme olanağınız elinizden alınmış oldu.

İlginizi Çekebilir: Atara ATAR Diyen Güvenlik Yazılımı

Özgür Yazılımın Gelișimi

Bilgisayar endüstrisindeki ve kullanıcılardaki kültür değișiminden rahatsız olan Richard Stallman, 1983 yılında GNU (“GNU’s Not Unix- GNU Unix değildir”) projesini bașlattı. GNU işletim sistemi ișleyiși ve geliștirme çalışmaları Ocak 1984 yılında bașlarken, Ekim 1985 yılında Özgür Yazılım Vakfı kuruldu. Richard Stallman bu vakfın kuruluşuyla birlikte, özgür yazılım tanımını ve “Copyleft” kavramını, herkes için yazılım özgürlüğü görüșünü ortaya attı.

Copyleft Nedir?

Kısaca Copyleft ifadesini açıklarsak; İngilizcedeki Copyright teriminin zıt anlamlısıdır. Telif haklarının belirli bölümlerinden yazarı tarafından belirtilen șartlar altında feragat edilmiș olan bir esere işaret eder. Hukuki anlamda, Copyleft aslında Copyright kavramıyla tanınan hakların taraflar arası düzenlenen bir sözleșme yerine, bir tarafı anonim olan bir sözleșme ile paylașılması anlamına gelir

Özgür yazılım, özgürlükleri korumaya yönelik bir akımın adıdır. Özgür yazılım denildiği zaman, İngilizcedeki “Free Software” ifadesinin ilk kelimesinin (“free”) çift anlamlı olması dolayısıyla olușan yanlıș anlamayı önlemek için özellikle vurgulanması gereken, “Free software” denildiği zaman “free beer” (bedava bira) değil “free speech” (ifade özgürlüğü) kavramının akla gelmesi gerektiğidir.

İlginizi Çekebilir: 16 Yaşında Geliştirdiği Yazılımla Stanford Üniversitesi’nden Tam Burs Aldı

Özgür yazılımın temelinde kullanıcının bir yazılımı çalıștırma, kopyalama, dağıtma, inceleme, değiştirme ve geliştirme özgürlükleri yatar. Daha kesin ve açık bir ifadeyle, özgür yazılım kullanıcılar için aşağıdaki özgürlükleri tanımlar:

  • Her türlü amaç için programı çalıştırma özgürlüğü (özgürlük 0).
  • Programın nasıl çalıștığını inceleme ve kendi gereksinimleri doğrultusunda değiștirme ve uyarlama özgürlüğü (özgürlük 1). Program kaynak koduna erișim bunun için bir ön șarttır.
  • Yeniden dağıtma ve toplumla paylașma özgürlüğü, böylece komșularınıza yardım edebilirsiniz (özgürlük 2).
  • Programı geliștirme ve gelişmiş haliyle topluma dağıtma özgürlüğü, bu özgürlüğün amacı tüm topluluğun geliștirmelerden yararlanmasını sağlamaktır (özgürlük 3).

Program kaynak koduna erişim bunun için de bir ön șarttır. Bir program bütün kullanıcılara yukarıdaki hakları tanıdığı zaman, özgür bir yazılım olur. Özgür bir yazılıma sahip olduğunuz zaman kopyalarını aynen ya da değiștirerek, ücret karșılığı veya ücretsiz, herkese ve her yerde dağıtma özgürlüklerine sahip olursunuz. Bu özgürlüklere sahip olmak, kimseden izin almamayı ve izin için hiçbir bedel ödememeyi de içerir.

Özgür Yazılımın Yararları

Sayısal bilgi teknolojisi, bilginin güncellenmesini ve kopyalanmasını kolaylaștırarak insanlığa katkıda bulunmaktadır. Bilgisayarlar bu işlemleri hepimiz için daha kolay hale getirmeyi vaat etmektedirler. Bu kolaylaștırma, herkes tarafından istenmemektedir. Telif hakları sistemi bilgisayar yazılımlarının birer “sahibi” olmasını getirmekte ve bu ‘sahipler’in çoğu, ilgili yazılımların potansiyel faydalarını kamu ile paylașmak istememektedirler.

Kullandığımız yazılımların yalnızca kendileri tarafından kopyalanabilir ve değiștirilebilir olmasını istemektedirler. Bu sahiplilik, yazılımların üzerinden așırı derecede kar elde etmeyi amaçlayan yazılım tekellerinin savunduğu ve sektörel bağımlılığı arttıran bir araçtır. Bağımsızlık için özgür yazılım, özgür/açık standartlar ve özgür kültürün önemi yüksektir.

İlginizi Çekebilir: Bitcoin Nedir? Nasıl Üretilir? Ne İşe Yarar?

Bir başka önemli yarar, özgür yazılımların kar amacı güdülmeden ve genellikle bedelsiz olarak dağıtılmasıyla ortaya çıkar. Günümüzde ağırlıklı olarak bir bilgisayarın maliyetini donanımdan ziyade oldukça yüksek olan yazılım lisans ücretleri oluşturmaktadır. Bu bilgisayarların maliyetini düşürmek ve kullanabilecek kişilerin sayısını arttırmak, bu bilgisayarlarla birlikte özgür yazılımın dağıtılmasının teşvik edilmesinde yatmaktadır. Özgür yazılımın yararlarını temel başlıklar halinde özetlersek:

  • Yazılım tekellerinin dayatmalarına karșı durmak, bağımsızlık.
  • Bir yazılım veya teknoloji hakkında gelișmiș uzmanlașma, yenilikçilik.
  • Kaçak (korsan) yazılım kullanımının önlenmesi.
  • Yazılımların açık kaynak kod olması, onlara yönelik güvenilirlik ve güvenlik açısından önemlidir.
  • Uyumlu çalıșma, uyumlu standartlar.
  • Șeffaflık, bilgilenme hakkının yerine getirilmesi.
  • Veri paylașılabilirliği.
  • Kod uyarlama ve tekrar kullanım, kullanıcı gereksinimine duyarlılık ve esneklik.
  • Maliyet.

Özgür Yazılım İçin Neler Yapılabilir?

Özgür yazılımın bu yararları için yaygınlaștırılması önemlidir. Zorunlu olarak sahipli yazılımlarla birlikte satılan donanım ürünlerini kullanıcıların tercihleri doğrultusunda diledikleri gibi satın alabilecekleri bir hale getirmek atılacak ilk adım olmalıdır. Kullanıcıların bilinçlendirilmesi, özgür yazılımı neden kullanmaları gerektiğinin anlatılması ve rahatça kullanabilecekleri özgür yazılımların tanıtılması bilgisayar konusunda uzman olmayan kullanıcılar için önemlidir. Belli bir destekten yoksun olan kullanıcılar, özgür yazılımın kulaktan duyma bir șekilde zor olduğunu düșündükleri için kullanmaktan kaçınabiliyor.

Özgür ve açık kaynak kodlu yazılım ile açık standartlar, bilginin aktarılması ve özgürce kullanılması açısından bağımlılığı önleyen kavramlardır. Açık standartlar, birlikte ișlerliği ve veri paylaşımını kolaylaștırır. Açık standartları desteklemeyen, kendi standartlarını zorlayan yazılımların diğer yazılımlarla haberleșmesi ve veriyi herkesin (ilgili yazılımı kullanmadan) erișebileceği bir eksenden çıkarması söz konusudur.

Hükümetlerce alınacak kararlar, yalnız kurumları değil, șirketleri ve çalışanları da doğrudan etkiliyor. E-devlet sürecinde hükümetlere düșen çok fazla görev olmasına rağmen bunları dört ana maddede toplamak mümkün:

  • Kamusal bilgiye özgür erişimi sağlamak.
  • Kamusal verinin devamlılığını sağlamak.
  • Kamunun geneline ve vatandaşlara ait verilerin güvenliğini sağlamak.
  • Gereksiz kamu harcamalarından kaçınmak.

Özellikle son iki maddenin gerçekleștirilmesinde, ülkeler e-devlet projelerini gerçekleștirmek için özgür yazılımı tercih etmektedirler. Verilerin güvenliğini, içerisinde ne barındırdığını bilmediğiniz, kapalı kodlu sahipli bir yazılımla sağlayamazsınız. Gereğinde açık kaynak bir projeyi ulusal bir şekilde tekrar yaratmanız gerekir. Gereksiz kamu maliyetlerini en az indirmek ve yazılımda dıșa bağımlılığı azaltmak için de açık kaynak kod yazılımı önemli bir araçtır.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Açık Kaynak Kod Nedir? Özgür Yazılım Nedir? Ne İşe Yarar? Nasıl Yazılır?

0