Açık kaynak kodlu yazılım, yazılım özgürlüğünü amaçlar ve bilgisayar kullanıcılarının yazılım üzerinde kullanım, dağıtım ve değiştirme özgürlükleri olduğunu vurgular.
Yazılımların donanımlar ile dağıtıldığı dönemlerde, bir donanım satın alındığında ihtiyacı olan yazılımla birlikte gelirdi ve o yazılım sadece o donanımla beraber çalışabilirdi. Bu durumda o yazılımı belirli sınırlar çerçevesinde dilediğiniz gibi değiştirme ve geliştirme imkânınız vardı. Zamanla kişisel bilgisayarların yaygınlaşması, farklı karmaşık yazılımların ortaya çıkması, beraberinde yazılım üreticilerinin ürünlerini korumaya yönelmesine ve telif haklarına başvurmasına, ö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 oldu. Artık satın aldığınız bir yazılım ürününü çevrenizdekilerle paylaşmanız mümkün olmadığı gibi, kaynak kodlara erişip değişiklik yapma imkanınızda ortadan kalkmış oldu.
Ancak yazılım ürünlerinin açık kaynak kodlu yazılım olarak dağıtılması ile bu sınırlamalar ortadan kalkmaktadır.
Ticari bir sır olarak da görülebilecek bir kaynak kodun ücretsiz bir şekilde paylaşılmasının arkasında yatan sebepler şunlar olabilir:
Açık kaynak kodlu programın kullanımı genelde ücretsizdir ve düzenlenmesini herkes için açık tutar. Açık kaynaklı yazılımlar içinde özgür bir yazılım lisansı ile lisanslanmış olan yazılımlar, özgür yazılım sınıfına girerler. Tüm özgür yazılımlar, aynı zamanda açık kaynaklı yazılımlardır. Ancak her açık kaynak yazılım, özgür yazılım olmayabilir.
1970’li yıllarda Richard M. Stallman, MIT’nin Yapay Zekâ laboratuvarlarında serbest yazılımı bir yaşam şekli olarak benimsemiş bir grupla beraber 1980’li yılların başına kadar yazılım geliştirici olarak çalışmıştır. Bu grup ile olan birlikteliğinin sona erişinin ardından kendisini o dönemlerde ivme kazanan bazı akımlardan dolayı benimsenmeye başlanılmış yeni bir sosyal sistem içerisinde bulmuştur, Stallman bir röportajında o günleri şu şekilde nitelendirmekte:
“Kendimi özgür olmayan (kaynak kodu kapalı olan) yazılımların hâkim olduğu ve kullanıcıların yardımsız bırakıldığı, parçalanmış ve birlikte çalışmanın korsanlık olarak nitelendirildiği çirkin bir sosyal sistemin içinde buldum. Bu tür bir yaşantıyı reddettim. Ancak işimi özgürlüğe ve birlikte çalışmaya adadığım zaman yaptıklarımdan gurur duyabileceğime karar verdim.”
Ve 1984 yılında tamamen özgür yazılımların meydana getirdiği bir işletim sistemi ve işletim sisteminin araçlarının geliştirilmesi çalışması böylece başlamış oldu, işte bu çalışmanın adı GNU idi. Yazılan özgür yazılımların bir şemsiye altında toplanması için 1985 yılında yine Stallman tarafından FSF (Özgür Yazılım Vakfı) kuruldu ve GNU yazılımları korumak üzere GPL (Genel Kamu Lisansı) adı verilen yazılım lisansı duyuruldu. GPL lisansı ile lisanslanan özgür yazılımların amaçları özgürlüklerini korumaktan başka bir şey değildir.
Richard Stallman
Telif hakkı ve lisans bildirimlerinin korunması şartlarını barındıran bir izin belgesidir. Lisanslı çalışmalar ve değişiklikler kaynak kodu olmadan dağıtılabilir.
GNU General Public License v3.0 (GNU GPLv3)
Yazılımı yeniden dağıtmak ve değiştirmek için özgürlük sağlamaktır. Bu nedenle, GNU yazılımını kamuya açık hale getirmek yerine, “copyleft” uygulamayı tavsiye eder. Copyleft değiştirerek ya da değiştirmeyerek yazılımı dağıtan kişinin, yazılımı kopyalamak ve değiştirmek isteyen kişilere bu özgürlüğü aktarmaları gerektiğini söyler. Copyleft, her kullanıcının özgürlüğe sahip olmasını garantileyen, bir programın (veya başka bir çalışmanın) özgür yazılım haline getirilmesi, programın tüm değiştirilmiş ve genişletilmiş sürümlerinin de özgür yazılım haline getirilmesi için genel bir yöntemdir.
Apache
Apache Yazılım Vakfı (ASF) tarafından yayımlanmıştır. Tüm yazılım sürümlerini telif hakkı koruması altına alır. Lisans, özgür ve açık kaynak kodlu yazılımın geliştirilmesi için kaynak kodlarının kullanımına da izin vermektedir.
- Güvenilirlik: Açık kaynak kodlu bir yazılım, doğası gereği geliştirilmesi sürecinden kullanımı zamanına değin on binlerce göz tarafından denetlenmektedir. Var olması muhtemel bir güvenlik problemi ya da kötü niyetli bir programcı tarafından bilinçli olarak yerleştirilebilecek bir kod parçası yazılım kullanıcının eline ulaşmadan tespit edilmekte ve hızla düzeltilmekte ya da kullanıcıya ulaşması engellenmektedir.
- Esneklik: Kaynak kodu açık bir yazılım hızla ve kolaylıkla yeni bir sistem üzerinde çalışacak şekilde yeniden yapılandırılabilmekte, bir kısmı çıkarılarak kapsamı daraltılabilmekte ya da eklenen yeni fonksiyonlarla kapsamı genişletilebilmektedir.
- Uygulama Desteği: Çok geniş bir yelpazede ve çeşitlilikteki birçok açık kaynak kodlu özgür yazılım her gün duyurulmaktadır. Herhangi bir konudaki ihtiyaç açık kaynak kodlu yazılımlarla hızlı ve kaliteli bir şekilde çözüme kavuşturulabilmektedir.
- Sağlamlık: Yine açık kaynak kodlu yazılımların doğal geliştirme süreci içerisinde çok sayıda insan tarafından denenmeleri ve kaynak kodlarının gözden geçirilmesi sonucunca ortaya yüksek kalitede, satabil ve kuvvetli yazılımlar çıkmaktadır.
Bugüne kadar kendi yazdığı yazılımın kaynağını sır olmaktan çıkaranlar arasında o yazılımdan gelir elde etme yaklaşımları bakımından bazı düzenlemelerin başarılı olduğu çeşitler vardır:
Bir sürü yetenekli yazılımcının, neden maaş almadan ürünün üretimine katkıda bulunduklarını anlamak oldukça zor. Örneğin neden Apache, Perl ve Sendmail gibi büyük ürünler özgür yazılımdır ve ücretsiz temin edilebilirler? Ekonomik açıdan bakıldığında özgür yazılım geliştirmedeki bu özelliklerin büyük bir kısmının çözümü “kariyer kaygısı” ile açıklanabilir.
Özgür yazılım gelişiminin geleceği ve kullanım alanları geçmişten gelen ve ezber olmuş ekonomik modeller ile ölçülmemelidir. Ancak buna rağmen konunun daha önceki literatürlerde geçen “teknolojik yenilik” kavramı ile yakından ilgili de vardır. Özgür yazılımların geliştirilme süreci, diğer birçok sektörde görülen “kullanıcı odaklı yenilik” kavramının değişik bir şeklidir. 1976 yılında geliştirilen Rosenberg ve 1988 yılında geliştirilen Hippel’in çalışmalarında belirttiği gibi; belirli kullanıcılar için geliştirilmiş kişisel çözümler sonradan daha geniş kitlelerin sorunlarının çözülmesinde kullanılmıştır.
Gelişmekte olan ülkelerde, yeteneklerin düşük maliyetler ile gelişmesi özgür yazılımın promosyonu açısından önemlidir. Ancak gelişmiş ülkeler ile kıyaslandığı zaman maliyetlerin de özgür yazılım kullanılması açısından önemli olduğunu görürüz. Gelişmiş ülkelerde yapılan toplam sahip olma maliyeti çalışmalarına göre, özgür yazılım kullanımı toplam kullanım ve bakım maliyetlerine çok fazla yansımamaktadır. Bunun nedeni gelişmiş ülkelerde ücretlerin yüksek ve özgür yazılım lisans ücretlerinin göreli olarak düşük olmasından kaynaklanmaktadır. Gelişmiş ülkelerde yapılan toplam sahip olma maliyetleri çalışmaları, bu ülkelerde lisans giderlerinin toplam maliyetlerde %5-10; bakım, entegrasyon, destek ve eğitim hizmetlerinin ise %60- 85 arasında olduğunu göstermiştir. Ücretlerin yüksek olması ekonominin emek yoğun bileşenlerinin toplam maliyetler içerisinde daha büyük paya sahip olmasına neden olmaktadır. Özgür yazılım kullanımından meydana gelen kesin tasarruf sıfır lisans ücreti olduğu için, bu çalışmalarda lisans maliyetlerinden doğan avantajlar net olarak görülememektedir. Buna karşın, ücretlerin düşük olduğu gelişmekte olan ülkelerde, lisans ücretlerinin toplam sahip olma maliyetleri içerisindeki payı çok daha büyüktür.
Bu ilişki ülkedeki lisans ücretleri fark edilebileceği gibi, gelişmekte olan ülkelerdeki alım gücü açısından, indirim yapılmış bile olsa ticari yazılımların lisans ücretleri çok fazladır. Amerika’da, gerekli olan standart yazılımlar için (Örneğin Windows 10 + Office 365) ödenmesi gereken lisans ücreti $560 civarındadır. Bu bedel Güney Afrika’nın 2.5 ay, Vietnam’ın ise 16 ay ötesindedir. Bu Amerika’da tek bir kullanıcı için, sırasıyla, $7,541 ve $48.011 lisans ücreti demektir ve istenen bu miktarın karşılanamayacağı çok barizdir. Yine aynı yönteme bakılarak lisans ücretlerine yapılacak herhangi bir indirimin bu maliyetleri önemli miktarda azaltmayacağı ve bu indirimlerin uzun dönem refahtan çok kullanıcıları arz edilen yazılımlara bağımlı olma amaçlı olduğu görülmektedir.
Korsan yazılım kullanım oranı ile etkin yazılım lisans ücreti doğru orantılıdır. Yazılım ücreti arttıkça korsan yazılım kullanım oranı da artmaktadır.
Zekanıza değil de hislerinize hitap eden ifadeler ile size bir şeyler satılmaya çalışılıyorsa, muhtemelen kandırılıyorsunuz demektir.
Siyasette yapılan hatalar yerli ve milli lafları ile kapatılmaya çalışılırken bu hikâyeye yazılımcıların da inanmış olması oldukça vahimdir. Yerli ve milli arama motoru, yerli işletim sistemi, yerli ve milli robotlar, milli mesajlaşma yazılımları vs. gibi tamamen hislere hitap ederek insanları kandırma amacı olan iddialar ile sunulan yazılımların var olduğuna gerçekten inanmaya başlanıyor. Bu emekler elbette takdir edilesidir ama bunu pazarlarken yerli ve milli ifadeleri ile pazarlanan ürünlerdeki hangi ayıplar örtülmeye çalışıyorlar diye merak etmiyor değilim. Yerli ve milli diye pazarlanan ürünün parçasından üretimi için kullanılan araçlarına kadar çoğu kısmı dışarıdan geliyor. Orada yerli ve milli olan sadece parçaları birleştiren kişi.
Bir belediye yukarıdan gelen bir emirle Pardus’a geçiyoruz diye Windows işletim sistemine Pardus duvar kâğıdı koymak suretiyle yerli ve milli insanları kandırmaya devam etme kararı almıştı. Hangisi daha vahim: Bu kadar cahil olmak mı yoksa milleti kandırmak için Windows’u Pardus diye pazarlamak mı?
Pardus’un meydana gelmesi için hemen hemen her şey neredeyse yüzyıldır yurtdışında geliştiriliyor ve ülke olarak buna bir gram katkımız olmadı. Bakalım bu yerli ve milli işletim sistemimiz olan Pardus’un neleri yurtdışından geliyor:
Eğer bir değişim yapmak istiyorsak bunu tüm dünya ile entegre olarak yapmalıyız. Gelişmiş ülkeler arasındaki bilgi alışverişi ve rekabet birbirlerini geliştirmekle sonuçlanıyor. Volkswagen son model bir araba yaparken, içine Apple tarafından üretilmiş yazılımlar eklerse ortaya kaliteli bir ürün çıkar. Benzer şekilde yazılım mühendislerinin dışarıya açılmaları, İngilizce öğrenmeleri, yurtdışında ki yazılımcılar ile de bir şeyler yapmaya çalışmaları ve bu şekilde oluşturdukları ağlarda yeni şeyler geliştirmeleri gibi adımları atmaları çözümün bir parçasıdır. Bugün milyonlarca yerli ve milli mühendisin para kazanmasına ve ailelerini geçindirmeye yarayan kodlar bu düşünce ile geliştirilmiş açık kaynak kodlu kütüphaneler, uygulamalar, web siteleri, framework’lerdir. Açık kaynak kodlu projelere dünyanın her yerinden insanlar katkı sağlar.
İçinde bulunduğumuz ekonomik tedirginlik ve dengesizliklerden dolayı bana göre bir teknoloji firmasının bu durumda yapacağı en önemli değişiklik finansal giderlerini dert etmek olmalıdır. Bu nedenle açık kaynağın getireceği fırsatlardan yararlanmak mantıklı olacaktır. Bununla beraber çeşitli açık kaynak komitelerinden alınacak yazılım geliştirme desteği de fayda sağlayacaktır.
Farklı uzmanlıklardaki kişilerin birlikte çalışması, mevcut durumdan çok daha iyi sonuçlar verebilir. Kolektif bir çalışma planı bir teknoloji firması için oldukça verimlidir. Bu sebeple açık kaynak komitelerinin desteği ile çok daha verimli çalışmaların yapılması beklenen bir durumdur. Özellikle şirketin içinde bulunduğu Agile dönüşüm süreci ile hem doğrudan müşteri hem de farklı açılımlar yapılması piyasa şartlarında hız ve esneklik açısından çok daha fazla önem kazanmaktadır. Bazı belirgin noktalardaki çözüm arayışının şirket dışında, özellikle de açık kaynakta aranması doğru bir yaklaşımdır.
Bu çözüm arayışı elbette çift taraflıdır. Bir taraftan şirket içerisindeki projelere çözüm ararken, diğer taraftan da Doğuş Teknoloji’nin geliştirdiği çözümün piyasada kullanılması olumlu sonuçlar doğuracaktır. Hem kaynak paylaşımı hem de piyasada tanınırlık açısından bu önemli bir konudur. Bu da açık kaynağın önemli bir avantajıdır.
Doğul Teknoloji’nin açık kaynaklı çözümlere yönelmesi hem şirket içerisinde hem de topluma fayda sağlanan bir çözümün desteklenip yaygınlaştırılmasında önemli bir potansiyel taşımaktadır. Bu çözümleri geliştirmek için bir araya gelen farklı topluluklar ve kurumlar global boyutta farklı yetenek ve çözümleri de beraberinde getireceklerdir. Bu sebeple, Doğuş Teknoloji tarafından bir açık kaynak programlama platformu geliştirmek ya da çözümün bir parçası olmak, yeni ürünün tasarlanmasına imkan sağlayacağı gibi, kurumun piyasada daha da tanınmasına ve bazı belirgin alanlarda daha fazla söz sahibi olmasının da önünü açmış olacaktır.
Genelde piyasada popüler olmuş marka değeri taşıyan çoğu ürünün sunduğu imkanların bir kısmı şirketlerde kullanılmaz. Bu durum Doğuş Teknoloji’nin piyasadan temin ettiği ürünler için de geçerlidir. Ancak imkanlar kullanılmıyor diye elbette fiyatlandırma politikalarında bariz bir değişiklik olmaz. Bu da şirketlere ekonomik olarak yük olmaktadır. Diğer taraftan tüm imkanlar bir ihtiyacı karşılıyor olsa dahi ücretsiz ya da daha düşük ücretli piyasadaki yeni oyunculara imkan sağlamak gerekir. Şu an Doğuş Teknoloji içerisindeki en sıcak konu veri tabanı mimarisidir. Mevcutta kullanılan Microsoft ürünü olan MSSQL oldukça yüksek maliyetli bir çözümdür. Bu ürüne alternatif olarak kullanılabilecek ve benzer imkanlar sunan ürün olan PostgreSQL ise tamamen ücretsizdir. Benzer bir konu olarak tüm clientların neredeyse standart olarak barındırdığı ofis paketleri de oldukça yüksek fiyatlı Microsoft ürünleridir. Elbette ücretsiz bir alternatif olarak Libre Office ya da Open Office tercih edilebilir. Benzer bir konuda projelere ait repoların saklanması ve versiyonlanması için tercih edilen platform ile ilgildir. Önceden kullanılan TFS yine bir Microsoft ürünüydü ve yüksek lisans maliyetine sahipti. Aynı ihtiyacı BitBucket gibi bir alternatif ile çözmek ekonomik açıdan fayda sağlayacaktır.
https://teknolojiprojeleri.com/programlar/acik-kaynak-kod-ozgur-yazilim-nedir-nasil-yazilir
https://tr.wikipedia.org/wiki/Açık_kaynak
http://yunus.hacettepe.edu.tr/~elcin.keles12/calismalarim/BBY262/web06/avantajlariVeDezavantajlari.html
https://en.wikipedia.org/wiki/Open-source_software
https://opensource.com/resources/what-open-source
https://forum.pardus.org.tr/t/acik-kaynak-sadece-kaynak-koda-erisim-anlamina-gelmez
https://shiftdelete.net/2016-yilinin-en-iyi-acik-kaynak-kodlu-projeleri-78609
https://medium.com/@kurtulussahin/neden-ozgur-yazilim-f8fd02363f7d
https://insights.stackoverflow.com/survey/2018/
http://www.minepla.net/2015/05/visual-studio-code-nedir-ne-degildir/
https://www.pardus.org.tr/donusum/
https://medium.com/@atarikguney/yerli-ve-milli-yazılım-safsatası-2b3cc8d81ab
https://webrazzi.com/2018/03/13/stackoverflow-2018-anketine-gore-yilin-en-populer-programlama-dilleri-ve-diger-yazilim-araclari/