GNU/kWindows

Son zamanlarda benzersiz bir karışım hakkında çok konuşuluyor: GNUtamamıyla özgür işletim düzeni— ve Microsoft Windows —özgürlüğü reddeden, kullanıcıyı denetleyen, gözetim düzeni. Ayrıca ortalıkta çok fazla yanlış bilgi var. Düşüncelerimi sizlerle paylaşacağım.

Bu konuyu tartışmadan önce bazı terimleri açıklığa kavuşturmamız gerekiyor: Kullanıcılar “Linux” işletim düzeni hakkında konuştuklarında aslında Linux çekirdeği eklenmiş GNU işletim düzenine atıfta bulunurlar; biz buna GNU/Linux (ya da GNU+Linux) işletim düzeni diyoruz. Çeşitli biçimlerde GNU işletim düzenini kullanıyorsanız komut satırından tanıdık gelecek bir çok yazılım GNU yazılımıdır: bash, (g)awk, grep, ls, cat, bc, tr, gcc, emacs ve diğerleri. Linux bir çekirdektir ve işletim düzeninin yapmaya çalıştıklarını destekler: işlemleri, hafızayı, dosya düzenlerini ve daha fazlasını yönetir, çekirdeğin çeşitli eylemleri gerçekleştirmesini yöneten düzen çağrılarını sağlar, bu eylemler yeni işlemleri çatallamak ya da hafızayı tahsis etmek gibidir. Bu önemli bir ayrımdır —tüm bu yazılımı “Linux” olarak adlandırmak hatalı olduğu gibi tamamıyla özgür Unix ikamesi olan GNU tasarısını göz ardı etmektedir.

İsimlendirme sorunu oldukça yaygındır, GNU/Linux işletim düzeni kullanıyor olsa bile çoğu kullanıcı GNU'nun ne olduğunu bilmemektedir. Son olarak GNU Bash'tan “Linux Bash” olarak bahseden makale okudum; bu adeta GNU tasarısına, 26 yıldır Unix-benzeri düzenlerde (Apple'ın sahipli Mac OS X'i dahil) en geniş kullanıma sahip kabuğu yazan tüm yazarlara atılan bir tokattır.

GNU çoğunlukla Linux çekirdeğiyle kullanılmaktadır ama durum her zaman böyle değildir. Örneğin GNU kendi çekirdeği Hurd ile çalışabilir (GNU/Hurd). BSD çekirdeği olan bir düzende çalışabilir (örn. GNU/kFreeBSD). Ama bugün bir ay önce bile duymayı beklemeyeceğiniz birşeyden bahsetmek istiyorum: GNU ve Windows çekirdeği. Bu karışım GNU/kWindows (GNU ile Windows çekirdeği) olarak atfedildi.[1]

Anlaşılana göre Microsoft ve Canonical Linux düzen çağrılarını Windows'un anlayabileceği türe çeviren bir uyumluluk katmanı, altdüzen yazmak için birlikte çalışıyor. Yani, Linux çekirdekli bir düzen için derlenmiş yazılım çağrı çevirme ile Windows üzerinde çalışacak. Bir çok makale bu düzeni “Windows üzerinde Ubuntu” ya da “Windows üzerinde Linux” olarak adlandırıyor. Yanılgı şu ki bu düzen Linux çekirdeğini kapsamıyor, GNU işletim düzeninin Linux yerine Windows'un çekirdeğiyle çalıştığına tanıklık ediyoruz.

Bu Microsoft için yadsınamaz bir teknik yarardır: Windows kullacıları GNU/Linux'tan ya da Apple'ın özgürlüğü reddeden Mac OS X'i gibi diğer Unix benzeri düzenlerden tanımış olabileceği ortamlarda geliştirme yapmak istiyor. Fakat bunun hakkında düşününce önemli bir kavramı göz ardı ettiğini anlıyoruz:

Kullanıcılar bir işletim düzeni adı olarak “Linux"tan bahsettiklerinde GNU hakkında konuşmaktan kaçınıyor. Ve GNU'dan bahsedilmesinden kaçınarak ayrıca GNU'nun üzerinde kurulduğu temel ilkeleri tartışmaktan kaçınmış oluyorlar, bu ilkeler tüm kullanıcıların yazılımdan dört ana özgürlüğü temin etmesi fikridir: yazılımı her amaç için kullanabilmek, yazılımı anlayabilmek ve ihtiyaca göre düzenleyebilmek (ya da sizin için bunu başkasının yapabilmesi), yazılımı diğerleriyle paylaşabilmek, değişikliklerinizi başkalarıyla paylaşabilmek. Bu dört özgürlüğe saygılı yazılımlara özgür yazılım diyoruz.

Özgür yazılım gerçekten önemlidir, saldırıya açık olan kullanıcıların geliştirme esnasında (yazılım geliştiricilerin ya da şirketlerin değil) kendisinin denetimini temin eder. Kullanıcının bu dört özgürlüğünü ihmal eden herhangi bir yazılım özgür olmayan (ya da sahipli), özgürlüğü reddeden yazılımdır.  Bunun anlamı herhangi bir özgür olmayan yazılımın yeteneği ve verimi önemsizdir, benzer görevi yerine getiren özgür yazılımdan daima aşağıda olacaktır.

Herkes özgürlükten ya da özgür yazılım felsefesinden konuşmak istemez. Bu anlaşmazlık "açık kaynak” geliştirme yöntembiliminde sonuçlanmıştır, özgür yazılımın faydalarını gerekli fikirsel hususları tartışmadan şirketlere satmaktadır. “Açık kaynak” felsefesinde eğer özgür olmayan bir yazılım daha iyi özelliklere ve verime sahipse o kesinlikle daha iyidir, çünkü “açık kaynak” geliştirme yöntembiliminden üstün gelmiştir, özgür olmayan yazılım her zaman kötü bir şey olarak sayılmaz.

Tüm bunları bir araya getirelim: GNU adında özgür bir işletim düzenine sahibiz. Genellikle Linux çekirdeğiyle birlikte kullanılıyor ve ikisi birlikte GNU/Linux işletim düzeni olarak adlandırılıyor. Ama şimdi GNU/Linux'u alıp Linux'u kaldırıp ve onun yerine Windows çekirdeğini eklediğimiz bir duruma sahibiz, kar sağlayan GNU/kWindows. GNU kullanıcı özgürlüklerine değer verir. Windows ise tam tersini yapar.

Kullanıcılar neden bunu istiyor? Yani, belki de Mac OSX'te GNU araçlarını istemeleriyle aynı sebeptir, kullanmak istedikleri yazılımları kullanmak istiyorlar ayrıca GNU'da beğendikleri teknik faydaları istiyorlar. “Açık kaynak” felsefesini ele aldığımızda —çünkü eğer bir kullanıcı özgürlüğüne değer veriyorsa GNU/Linux gibi tamamıyla özgür bir işletim düzeni kullanmalıdır. Eğer bir kullanıcı zaten Windows kullanıyorsa GNU yükleyerek bir takım özgürlükler kazanır, artık düzeninde özgürlüklerine değer veren daha fazla yazılıma sahiptir ve bu yüzden böylesi onun için daha iyidir.

Peki ya bugün GNU/Linux kullanıyorsanız? Bu durumda GNU/kWindows düzenine geçmek büyük bir gerileme demektir, bunu yaparken özgürlüklerinizi Microsoft'a teslim etmiş olursunuz. Microsoft'un özgürlüğü reddeden gözetleyici düzeninde ne kadar parlak özellikler tanıttığının bir önemi yok, özgürlüğünüze saygı duyan bir işletim düzeni her zaman birincil tercih olmalıdır. Kullanıcıların GNU'nun sağladığı teknik yararlar için GNU/kWindows düzenine geçmemesi adına elimizden gelenin en iyisini yapacağız.

Birazı gerçek birazı felsefik olmak üzere elimizde bir takım sorunlar var:

İlkin, lütfen GNU/kWindows'u “Windows üzerinde Linux” (bununla ilgili başka bir biçimde) olarak atfetmeyin, yanlış bilgiyi yaymak durumu karıştırmanın ötesinde GNU işletim düzeni üzerinde çalışan binlerce yazarı göz ardı etmektir. “Windows üzerinde Ubuntu” olarak anmazsanız en iyisini yapmış olursunuz, bu tam yanlış bir ifade sayılmaz -Ubuntu'nun dağıttı GNU'yu kullanıyorsunuz- ama hala GNU Tasarısından bahsetmiyor. GNU'dan bahsedersek, kullanıcılar tasarıyla ilgili sorular sorabilir ve belki de kendi kendilerine sonuç ararlar. Özgür yazılım felsefesini okuyacaklar ve umarım sorunları, evvela daha önce farkında olmadıkları sorunları anlamaya başlayacaklar.

İkinci olarak, GNU/kWindows düzeni kullanan birisi gördüğünüzde kibarca nedenini sorun. Onlara sadece bu teknik yetenekleri sağlayan değil ayrıca özgürlüğü sağlayan daha iyi işletim düzeninin olduğunu söyleyin! Özgür yazılımın ne olduğunu söyleyin ve onlarla özgür yazılımı bağdaştırın ve neden önemli olduğunu anlamalarını sağlayın.

GNU'dan yarar sağlayan daha fazla insan görmek iyi ama ne için burada bulunduğumuzu ya da adımızı çok fazla anmadan, kullanıcıları diğer taraftan sahipli gözetim düzenine çekerek, böyle satıldığında mutlu olamayız.

[1] Bu isim Richard Stallman’dan gelmektedir. GNU Tasarısının kurucusudur.

Lisans: Bu metin CC BY-SA 4.0 lisansı altında dağıtılan “GNU/kWindows” metninden tercüme edilmiştir. Özgün metin Mike Gerwitz tarafından yazılmıştır. Tercüme metni CC BY-SA 4.0 altında lisanslanmıştır.

9 Nisan 2016

Posted In: canonical, gnu, GNU/kWindows, gnu/linux, hurd, linux, linuxgezegeni, microsoft, Özgür yazılım, tercüme, ubuntu, windows

GNU/kWindows

Son zamanlarda benzersiz bir karışım hakkında çok konuşuluyor: GNU —tamamıyla özgür işletim düzeni— ve Microsoft Windows —özgürlüğü reddeden, kullanıcıyı denetleyen, gözetim düzeni. Ayrıca ortalıkta çok fazla yanlış bilgi var. Düşüncelerimi sizlerle paylaşacağım. Bu konuyu tartışmadan önce bazı terimleri açıklığa kavuşturmamız gerekiyor: Kullanıcılar “Linux” işletim düzeni hakkında konuştuklarında aslında Linux çekirdeği eklenmiş GNU işletim düzenine atıfta … Okumaya devam et "GNU/kWindows"

9 Nisan 2016

Posted In: canonical, gnu, GNU/kWindows, gnu/linux, hurd, linux, linuxgezegeni, microsoft, Özgür yazılım, tercüme, ubuntu, windows

Ring hakkında yoğun bir hafta

Son birkaç ayın ardından, GPLv3 lisansı altında ve henüz beta mertebesinde olan Ring; özgür-kaynak yazılım, geliştirici ve siber güvenlik dünyasında bir coşku yarattı.

Birçok İnternet ve haberleşme sanayii ile sürdürülebilir kalkınma sanayii işleticileri yakın ilgi gösteriyor. Birkaç hafta önce Brüksel'deki FOSDEM 2016‘da olduğu gibi, Singapur'da FOSSASIA ve 30. yılını kutlayacak ünlü Özgür Yazılım Vakfının Boston'da düzenleyeceği LibrePlanet müzakerelerinde aynı anda tanıtılacak, Ring ana başlık olacak.

Bu vesileyle, Savoir-faire Linux'un başkanı Cyrille Béraud özgür yazılımın ne ve niçin olduğunu daha iyi anlamak adına Ring'in detaylarına girecek, birçok uzmanın mırıldandığı gibi bu yazılım İnternet tarihinde bir mihenktaşı olabilir.

Bize Ring'in tam olarak ne olduğunu açıklar mısınız?

İlk olarak şunu bilmenizi isterim ki Ring açık kaynaklı bir yazılımdır ve bu nedenle kamu yararınadır. İşlevsel açıdan bakıldığında insanlar bunun bir nevi Skype ya da Hangout olarak göreceklerdir.

Ring dünyanın neresinde olursa olsun iki ya da daha fazla insan arasında şifrelenmiş görüntülü, sesli ve çok yüksek nitelikte yazılı iletişim kurmayı sağlar. Linux, Windows, Mac/OSX ve Android'de mevcuttur, sonraki birkaç ay içerisinde iOS'ta da olacaktır. GPLv3 lisansı altındaki kaynak kodlarıyla birlikte dağıtılmıştır.

image

Yine de şu noktaya dikkat çekmek istiyorum, Ring henüz genç, kırılgan ve pek çok durumda düzgün işlemeyebilecek bir yazılım. Bununla birlikte her gün iyileştiriliyor, standart ortamda ve evsel kullanım için gayet iyi çalışıyor.

Ama Ring'i aynı işleve sahip diğer yazılımlardan ayıran ne?

Ring bir merkezi sunucu olmadan noktadan noktaya iletişim kurmaya imkan sağlıyor. Bu belirleyici bir unsur. Ring evvela bir dağıtık iletişim platformu. Sunucuları yönetecek işletmenlere ihtiyaç yok, her bir aramanız ile ilgili daha fazla maliyet yok, Ring her zaman daha fazla özgürlük ve güvenlik sunuyor. Profesyonel bağlamda birçok kuruluş Ring'in esnekliğinden faydalanabilir. Ring, herkes için maliyetsiz ve konumdan bağımsız, güvenli biçimde iletişim imkanıdır.

Teknik olarak biz kendini kanıtlamış teknolojileri taban alıyoruz: ffmpeg/libav, GnuTLS, pjsip ve diğerleri. Bununla birlikte Ring çekirdeğindeki yeniliğimize ilişkin, biz DHT'lerin (Dağıtık Hash Tabloları) konseptini kullandık. Kendi kütüphanemiz OpenDHT'yi geliştirdik, sadece GitHub üzerinde mevcut, ICE ve SIP kurallarıyla birleştirildiğinde; yönlendiricileri, güvenlik duvarlarını geçerek, bir kullanıcı ya da ekipman, özel bir ağda olsa bile yerini saptamaya ve eğer bunlardan biri muhatabın kullanıcı bilgisini bulunduruyorsa dünyanın neresinde olursa olsun, gerçek zamanlı yüksek güvenlikli iletişim kanalı kurmaya yarıyor.

image

Ring'in bu özelliği ayrıca açık ve tanınmış standartları kullanması sayesinde, bu platform İnternet üzerinde gerçek evrensel hiyerarşik olmayan iletişim dizgesini oluşturmaya yarıyor, sadece iki insan arasında iletişimi değil, genel olarak iki ya da daha çok nesnenin iletişimini sağlıyor. Bu noktadan bakıldığında, Ring etrafında yaptığımız mevcut yenilikler pek çok olasılığın ve sanayi uygulamalarının halka da açılmasını sağlıyor. Biz şuan deneyevimizde çok hafif gömülü sistemler üzerinde şekillenen pek çok prototipe sahibiz, Ring; ev otomasyonuna ya da veri edinme dizgelerine bağlanabiliyor.

Bu tanıtımı bitirmeden şunu belirtmek çok önemli; Ring düşük kipte ve İnternetten tamamen bağlantısını koparmış halde bile işlevini sürdürebiliyor. Afrika'da ya da Hindistan'da kalitesiz bağlantısı olan yalıtılmış bir köy düşünün. İnternet bağlantısı koptuğunda Ring'in dağıtık dizgesi kendisini node'lara bağlayarak hedefe ulaşabilir ve çalışmaya devam edebilir. Örneğini verdiğimiz dünya ile bağlantısı kopmuş bu köyde oturanlar kendi aralarında iletişime devam edebilirler. Bu noktadan bakıldığında Ring sürdürülebilir kalkınmaya katılabilir ve iletişim altyapısını geliştirememiş ülkelerdeki ekonomiye ve demokrasiye katkıda bulunabilir.

Gördüğünüz gibi Ring birçok güce sahip! Ring'i yapabilmek, altında yatan teknolojileri daha fazla insana ulaştırabilmek, her bir insanın ve dünya çapında herkesin kendi Ring kullanımını elde edebilmesi için Ring bir özgür yazılım olmak zorundaydı.

Ring'in arkasında bir ekonomik model var mı ve kısaca Savoir-faire Linux'u tanıtır mısınız?

Elbette Ring'in arkasında bir ekonomik model var. O özgür yazılımlardan bir tanesi. Özgürce herkese açık olarak hazırladığımız kullanım değerleri yarattık. Bu kullanım değerleri bir hizmetler ekonomisi yarattı. Elbette bu ekonomi açık ve rekabetçi pek çok değer yarattı. Ring konusunda Savoir-faire Linux kendi konumuna sahip. Bu ekonomi; değiş tokuşu ve işbirliğini taban almaktadır, böylece az sayıda insanın zenginliği sahiplenmesi ve devrilebilen ekonomiyi kendine ters bellemiştir.

Savoir-faire Linux merkezi Montreal'de bulunan, Kanada içinde Quebec ve Toronto'daki, Fransa içinde Paris'teki takımlarıyla birlikte Kanadalı bir hizmet şirketidir. Bir ortaklık vasıtasıyla Fildişi Sahilleri'nde de bulunmaktayız.

Tümü açık teknolojilerde uzmanlaşmış, yüksek dereceli 110 mühendisimizle birlikte savunma ve gömülü elektronik sektöründe, bankacılık ve sigortacılık sektöründe Desjardins ile, yazılım mühendisliği sektöründe Kanada Uzay Ajansı ile, yönetim bilişim sektöründe Organisation Internationale de la Francophonie ile ve çeşitli yerel teşebbüslerle varlığımızı sürdürüyoruz.

Ayrıca, özgür yazılımın dünya çapındaki aktörleriyle sağlam bağlar oluşturmak bizim için çok önemli. Ayrıca Linux çekirdeği gibi pek çok özgür tasarıya katkıda bulunduk.

Savoir-faire Linux değerler etrafında zenginlik yaratmaktır. Her zaman başarılı olamayız ama her gün, geçen 15 yılda, içimizdeki şu iki tutkuyla çalışmamıza değer katmaya devam ediyoruz: özgürlük ve mükemmelik.

Not: Yazıdaki birkaç cümleyi etkili olarak tercüme edemediğim için çıkardım. Bazı noktalarda birebir tercümeden sakındım. Özgün metin 18 Mart 2016′da yayınlandı, ikinci paragrafta bahsi geçen müzakereler de 20 Mart 2016′da gerçekleşti fakat anlam bütünlüğünü bozmamak adına filleri gelecek zaman kipinde tercüme ettim.
Lisans: Bu metin CC BY 4.0 lisansı altında dağıtılan “An Intensive Weekend about Ring” metninden tercüme edilmiştir. Özgün metin Cindy Marchi tarafından yazılmıştır. Tercüme metni CC BY 4.0 altında lisanslanmıştır.

4 Nisan 2016

Posted In: free software, gplv3, linux, linuxgezegeni, open source, opendht, ring, savoir-faire linux, tercüme

Ring hakkında yoğun bir hafta

Son birkaç ayın ardından, GPLv3 lisansı altında ve henüz beta mertebesinde olan Ring; özgür-kaynak yazılım, geliştirici ve siber güvenlik dünyasında bir coşku yarattı. Birçok İnternet ve haberleşme sanayii ile sürdürülebilir kalkınma sanayii işleticileri yakın ilgi gösteriyor. Birkaç hafta önce Brüksel’deki FOSDEM 2016‘da olduğu gibi, Singapur’da FOSSASIA ve 30. yılını kutlayacak ünlü Özgür Yazılım Vakfının Boston’da … Okumaya devam et "Ring hakkında yoğun bir hafta"

4 Nisan 2016

Posted In: free software, gplv3, linux, linuxgezegeni, open source, opendht, ring, savoir-faire linux, tercüme

Müziğe Evet, Yağlı Saçlara Hayır

Aydınlanma
 Her şey, yeni bir eve taşınmamla başladı. Önceden iş yerine varmam 5 dakika sürüyordu. Bu süre, bir anda 45 dakikaya çıkınca aydınlanma yaşadım ve bazı insanların neden müzik olmadan yapamadığını anladım: bu yol (ve bazen de hayat), başka türlü çekilecek gibi değildi.

Aydınlanma sürecim, daha önce anlam veremedim bir çok şeyi de anlamamı sağladı. Örneğin "yolu bilmek ile yolda gitmek" aynı şey değildi. Bu koduğumun yolu, git git bi türlü bitmiyordu ama yolu bilmek için Google Map'e bakmak yeterliydi. Ayrıca o bilgenin, Ferrari'sini neden sattığını da artık çok iyi anlamıştım.

Neyse, bu yeni hayatımda artık müziğe daha çok yer verecektim. İşyerinde bilgisayar ile çalışırken de radyo dinlemeye karar verdim ve yoldayken dinlediğim Radio Slow Time'ın Internet üzerinden yaptığı yayını buldum. Artık bilgisayar başına oturunca bir konsol açıyor ve şu komutu çalıştırıyordum:


mplayer http://46.20.7.104/

Ama hayat bu kadar basit değildi ve yeni zorluklar beni bekliyordu.

Yağlı Saçlar
 İnsanlığın en büyük sorunu ile yüzleşmem de bu vesile ile oldu. Radio Slow Time, reklam kuşaklarında çağımızın vebası "yağlı saçlar" konusunda bilinçlendirici yayınlar yapıyor, bunun bir son olmadığını, hala bir umut olduğunu anlatıyordu.

Önceleri çok önemsemedim. "İnsanlar, o mucize şampuanı nasıl olsa alır, yağlı saçlar sorunu da kısa sürede çözülür" diye düşündüm ama cahil halkımız, her zamanki tavrı ile bu sorunu da görmezden geldi. Israrla o mucize şampuanı almadılar.

Artık önümde iki seçenek kalmıştı. Ya o mucize şampuanı ben alıp milletin yağlı saçlarını zorla yıkayacaktım ya da reklam kuşağı başladığında mplayer'ın sesini kısacaktım. Birinci yöntem bana pek pratik görünmedi.

Sessizlik
mplayer'ın sesini kapatmak için işimi yarım bırakıp mplayer'ın açık olduğu masaüstüne geçmek, sesi kapatmak ve tekrar çalıştığım masaüstüne dönmek iyi bir çözüm değildi. Bir kısayolla bu işi halletmem gerekiyordu.

Biraz araştırma yapınca mplayer'da slave mod diye bir şey olduğunu öğrendim. Slave moddayken mplayer, input noktasına gönderilen komutları algılıyor ve gerekli işlemi yapıyordu. Yani artık mplayer'ı şu şekilde başlatacaktım:

mkfifo /tmp/mplayer.pipe
mplayer -slave -input file=/tmp/mplayer.pipe http://46.20.7.104/


Sesi açıp kapatmak için de input noktasına (yani named pipe'a) şu komutu göndermem yeterliydi:

echo mute > /tmp/mplayer.pipe

Bu komutu, bir kısayola bağlayınca düşündüğüm oldu ama hala yolunda gitmeyen bir şeyler vardı.

Özgür İrade, Aslında Bir Yanılsama mı
"Hayatımızı reklamlar yönetiyor" derlerdi de inanmazdım. İnsanın aklı vardı, neden duyduğu bir şeyden bu kadar etkilensindi ki... Ama geldiğim duruma bakar mısınız? Reklam kuşağından kurtulacam derken farkında olmadan Pavlov'un köpeğine dönmüştüm. Reklam başlayınca otomatik olarak kısayola tıklıyordum.

Bu insanlık dışı durumdan kurtulmam gerekiyordu. Özgürlüğümü yeniden kazanabilmek için daha çok bilgi sahibi olmalı ve öğrendiklerimi eyleme dökmeliydim. Yeniden araştırmaya başladım.

mplayer çıktılarını inceleyince kanalın, yapılan yayınla ilgili bazı bilgiler gönderdiğini gördüm. mplayer çalışırken şu şekilde çıktılar geliyordu:

ICY Info: StreamTitle='"YASMIN_LE - "NO TENGO';StreamUrl='&artist=
A:1464.9 (24:24.8) of 0.0 (unknown)  0.8% 40%
ICY Info: StreamTitle='"","Title" - V1","Code"';StreamUrl='&artist=
A:1479.3 (24:39.2) of 0.0 (unknown)  0.8% 40%
ICY Info: StreamTitle='"SAM_SMITH - RITING'S O';StreamUrl='&artist=
A:1751.3 (29:11.3) of 0.0 (unknown)  0.8% 40
ICY Info: StreamTitle='"Reklam","","":';StreamUrl='&artist
A:2003.0 (33:23.0) of 0.0 (unknown)  0.8% 40%


Çıktıdan da görüleceği gibi StreamTitle kısmında yayınlanacak şarkı ile ilgili bazı bilgiler vardı. Reklam başlayacağı zaman da bu kısımda Reklam yazıyordu. Reklam yazısını gördüğüm anda mute komutunu otomatik tetikletirsem artık özgürdüm.

Konsolun Kalbine Giden Yol, Borudan Geçer
Konsolla aranız iyi ise "|" (yani pipe, Türkçe'siyle boru) ile herhangi bir komutun çıktısını, başka bir komuta girdi olarak gönderebileceğinizi biliyorsunuzdur. mplayer çıktısını bir while döngüsüne yönlendirilsem ve bu döngü içinde bazı kontroller yapıp uygun anda mute komutunu tetiklersem bu iş olabilirdi. Komutu hazırladım:

mplayer -quiet -slave -input file=/tmp/mplayer.pipe http://46.20.7.104/ | \
while read line
do
   echo $line
   [ "$(echo $line | grep -v StreamTitle)" ] && continue

   title=$(echo $line | cut -d '"' -f2)
   [ -z "$title" ] && continue
   [ "$title" = "Reklam" ] && echo mute > /tmp/mplayer.pipe
done


mplayer çıktılarını alan while döngüsü kısaca şunu yapıyordu:
  • Satırda StreamTitle kelimesi geçmiyorsa bu satırla bir işi olmadığında bir sonraki satıra atlıyordu.
  • StreamTitle kelimesi geçiyorsa şarkı adını alıyordu.
  • Şarkı adı belirlenemediyse (bazen boş geliyor) bir sonraki satıra atlıyordu.
  • Şarkı adı olarak Reklam yazıyorsa sesi kapatıyordu.

Obsesyon (Takıntı)
Israrlı bir şekilde sürekli aklımıza gelen, bir türlü engel olamadığımız, beynimizi bir tahta kurdu gibi sürekli kemiren sinir bozucu düşünce...

Yapılan klinik deneyler, düzgün çalışmayan yazılımların obsesyona sebep olduğunu ve yazılımcıların %93.27'sinin sinir bozucu (amiyane tabirle gıcık) olduğunu göstermekte... Bu son örnek de bunu doğruluyordu.

Reklam başlayınca, ses otomatik olarak kapatılıyordu ama reklam bitince otomatik açılmıyordu. Reklamın bittiğini farkedip manuel olarak sesi açmak gerekiyordu. Dolayısı ile ses kapatıldıktan bir süre sonra beynimi, "acaba reklam bitmiş midir, sesi artık açsam mı" gibi sinir bozucu düşünceler kaplıyordu. Bir yazılımcı olarak kendi sinirlerimi de bozmayı başarmıştım.

Komutu biraz düzenlemem gerekiyordu. Reklam bittiği zaman da sesi otomatik olarak açtıracaktım. Yalnız dikkat edilmesi gereken bir nokta vardı: ses zaten kapalıyken sesi kapatmaya, ses zaten açıkken de sesi açmaya kalkmamalıydım. Yoksa her tetiklendiğinde modu tersine çeviren (yani on ise off, off ise on yapan) mute komutu, yanlış çalışacaktı. Dolayısı ile mute durumunu takip etmek gerekiyordu.

Komut artık şu şekli almıştı:

MUTE=false
[ -e /tmp/mplayer.pipe ] || mkfifo /tmp/mplayer.pipe

mplayer -quiet -slave -input file=/tmp/mplayer.pipe http://46.20.7.104/ | \
while read line
do
   echo $line;
   [ "$(echo $line | grep -v StreamTitle)" ] && continue

   title=$(echo $line | cut -d '"' -f2)
   [ -z "$title" ] && continue

   if [ "$title" = "Reklam" ]
   then
     $MUTE || echo mute > /tmp/mplayer.pipe
     MUTE=true
   else
     $MUTE && echo mute > /tmp/mplayer.pipe
     MUTE=false
   fi
done


 Değişen kısımlar:
  • Named pipe (/tmp/mplayer.pipe) henüz oluşturulmamışsa mkfifo ile oluştur.
  • Reklam kelimesi yakalandıysa ve mute modunda değilse, sesi kapat.
  • Bir şarkı adı yakalandıysa ve mute modunda ise sesi aç.
Fiber Internet
Reklamları bir türlü anlayamıyorum. Mesela bi tane firma var, "fiber Internet" diye garip bir şeyin reklamını yapıyor. Reklamı yapıldığı için ben de satılan bir şey sandım, "şundan eve alalım" dedim. Firma ile görüştüm ama bizim eve getiremiyorlarmış, bize satmadılar. Halbuki sokağın başındaki laz bakkal, avokado bile getiriyor. Avokadonun bile gelebildiği bir yere, fiber Internet nasıl gelemiyor anlamadım.

Bizim iş yeri de o şeyden satın almak istemiş ama onlara da satmamışlar. O nedenle Internet bağlantım, über süper değil. Über süper bir bağlantı olmayınca sanırım mplayer, müziği kesintisiz verebilmek için buffer kullanıyor. Buffer olunca da gelen bilgi ve müzik arasında bir süre farkı oluyor. Yani "Reklam" bilgisi geldikten 5-6 saniye sonra reklam başlıyor. Oysa ki ben komutu, 21. yüzyılda çalışacak şekilde tasarlamıştım ve gecikme olacağını hesaba katmamıştım.

Durum böyle olunca İlber Ortaylı Hoca'ya hemen bi telgraf gönderdim. "Osmanlı döneminde Internet kullanımı" ile ilgili temel bilgileri aldıktan sonra bu gecikmeyi de hesaba katacak şekilde komutu düzenledim. Artık komut şu hale gelmişti:


MUTE=false
WAIT=5
echo $WAIT > /tmp/mpwait
[ -e /tmp/mplayer.pipe ] || mkfifo /tmp/mplayer.pipe

mplayer -quiet -slave -input file=/tmp/mplayer.pipe http://46.20.7.104/ | \
while read line
do
   echo $line;
   [ "$(echo $line | grep -v StreamTitle)" ] && continue

   title=$(echo $line | cut -d '"' -f2)
   [ -z "$title" ] && continue

   if [ "$title" = "Reklam" ]
   then
     $MUTE || (sleep $(cat /tmp/mpwait); echo mute > /tmp/mplayer.pipe) &
     MUTE=true
   else
     $MUTE && (sleep $(cat /tmp/mpwait); echo mute > /tmp/mplayer.pipe) &
     MUTE=false
   fi
done


Bu seferki farklar:
  • Gecikme süresi, komut çalışırken istenirse değiştirilebilsin diye, /tmp/mpwait dosyasına kaydediliyor.
  • Ses açılıp kapatılacağı zaman bu gecikme süresi kadar beklenip ondan sonra mute komutu tetikleniyor.
Mutlu Son
Sonunda istediğim olmuştu. Artık rahat bir şekilde müzik dinliyebiliyordum ama kafama takılan bir şey vardı: o mucize şampuandan ben de almalı mıydım?

28 Mart 2016

Posted In: linux, lkd, mplayer

Linux’ta Bu Hafta – 2

Yeni güvenli ve dağıtık ses, görüntü ve mesaj iletme platformu Ring Beta yayınlandı: GPL sürüm 3 lisansı altında geliştirilen ve Skype alternatifi olan Ring Alpha mertebesinden Beta mertebesine yükseldi. Papineau sürümü bir çok yenilik ve iyileştirme ile birlikte geliyor. Değişiklikler şöyle: yüzlerce hata giderildi, video grup aramaları, sesli görüşmenin dışında mesajlaşabilme özelliği geldi. Video kalitesi … Okumaya devam et "Linux’ta Bu Hafta – 2"

18 Mart 2016

Posted In: Açık kaynak, grub, haber, kernel, krita, linux, linuxgezegeni, open source, Özgür yazılım, qt, raspberry pi, ring

Libreoffice Çalışmalarım 1

Herkese merhaba,

Bu dönemin başından beri Libreoffice ile ilgili çalışıyorum. Derleme ve yama gönderme nasıl oluyor diye de bir yazı yazmıştım. Sonrasında neler yaptığımdan bahsetmek istiyorum.

İlk yamam kabul edildikten sonra, Libreoffice arayüzüne(UI) özellik eklemek, iyileştirmek üzerine çalışmaya başladım. 

Üzerinde çalıştığım özellik Draw aracındaydı. Şimdiye kadar, şeffaf arka plan görünürlüğü, yapılandırma dosyasından sağlanmış. Ancak geliştiriciler bunun yapılandırma dosyasından bağımsız olmasını istiyorlardı. İstediklerini yapıp yama hazırladım.

Yamanın alınma süreci ise bence bir miktar heyecanlı geçiyor :) Her yollanan yama Jenkins ile 3 platformda kontrol ediliyor. (Linux, MacOS ve Windows) Sorunsuz derlenen yamalara ayrıca geliştiriciler de bakıyor. Sonunda herşey uygun şekildeyse yamayı kabul ediyorlar. 

İki gün önce yamam alındı. Birkaç gün sonra yayınlanacak olan 5.1 sürümünde bu özellik kullanılabilir olacak :)

                              Yamadan önce                                   Yamadan Sonra


Bu haftasonu gerçekleşecek bug hunting etkinliğinden sonra da güzel haberler vermek dileğiyle :)

29 Ekim 2015

Posted In: bug, draw, fix, Gezegen, libreoffice, linux, ui

Git’te Yama Uygularken Oluşan Çakışmaları Çözmek


Yazma iznimizin olmadığı depodaki projeye katkı verme işlemini yama dosyası oluşturarak yaparız. Yama dosyaları karşı tarafa yaptığımız değişiklikleri insan okuyabilir şekilde özetler. Bu konu hakkında kısa bir yazı yazmışım, buradan bakabilirsiniz.

Github üzerinden geliştirdiğim kendi projelerime olan katkıları kabul ederken terminal kullanmadan, web sayfası üzerinden hallediyorum.

Linux çekirdeğinde her takım farklı alt dizinlere baktığından ve çoğu github kullanmadığından işlemleri konsol üzerinden yapmak gerekiyor.

Linux çekirdeğinde uzunca bir süredir büyük bir yama  setini kabul ettirmeye çalışıyorum. İnsanlık için küçük olabilir ama benim için büyük demeden geçmeyelim. Yamanın konusu özetle bellek üzerinde büyük bir baskı olduktan sonra swapten dönerken, ihtiyaç duyulmayan sayfaları da swapten belleğe getirip büyük sayfa oluşturarak, performans sağlamak.

Bu yama uzun bir sürece girdiğinden, linux çekirdeği sürekli güncelleniyor ve benim değişikliklerim deponun eski halindeki gibi kalıyor. Bu durumda karşı taraf uygulamaya çalışırken çakışma oluşacak, yama bu nedenle reddedilecek.

Eskiden hep küçük değişiklikler yaptığımdan ve daha kısa süreçte bittiğinden, kendi yamamı güncel depoya uygulama ihtiyacı duymadım. Her satırı tekrar kontrol ederek yeniden oluşturuyordum. Yama büyük olduğunda işler böyle olmadı. Her satırı tekrar oluşturmak çok zor ve derlemede hata almıyorsam bile mantıksal hata yapma ihtimalim çok yüksek.

Değişiklikleri uygulamadan önce git apply --check yama_dosyası şeklinde yamanın uygulanabilir olup olmadığını kontrol edebiliriz. Eğer git apply yama_dosyası komutunu verirsek, yamayı commit yapmadan depoya ekler. Bu durumda değişiklikler commitlenmediği için de git diff ile farkları görebiliriz. Bu bize yama dosyasını ekleyip, commit yapmayarak elle başka değişiklikler yapmaya olanak verir. Tüm değiştirmek istediğimiz dosyalar bittikten sonra kendimiz git commit -a komutuyla değişiklikleri loglayabiliriz.

Yamanın commit yapılarak depoya eklenmesini istiyorsak git am < yama_dosyası şeklinde uygulamalıyız.

Eğer daha önceden yaptığımız commitlerde düzenlemeler istiyorsak git rebase harika bir araç. Onunla ilgili daha önceden bir yazı yazmıştım, buradan bakabilirsiniz.

Yama uygularken geçenlerde karşılaştığım durum, yamanın (muhtemelen) güncel depoyla uyumlu olmamasından kaynaklıyordu. Hata aldığım makine çok sık kullandığım bir makine değildi, belki daha önceki başka bir şeyden kaynaklanıyor da olabilir. Hata mesajı şu şekilde:

Applying: mm: add tracepoint for scanning pages
error: include/trace/events/huge_memory.h: already exists in working directory
error: patch failed: mm/huge_memory.c:2673
error: mm/huge_memory.c: patch does not apply
Patch failed at 0001 mm: add tracepoint for scanning pages
The copy of the patch that failed is found in:
   /home/ebru/linux-stable/.git/rebase-apply/patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

Bunu görünce daha önceden aynı commitler depoda vardı, bu yüzden bir yerde indeksleri tutuluyor düşündüm. mv linux-stable/.git/rebase-apply ..path/ ile rebase-apply dizinini başka bir yere taşıdım. Tekrar yamayı uygulamaya çalıştım yine aynı hatayı aldım (kaldırdığım dizin tekrar oluştu).

Bunun çözümü şu şekilde hatayı aldıktan sonra, git apply linux-stable/.git/rebase-apply/patch --reject komutunu veriyoruz. Bu sayede yamanın çakışma oluşturmayan kısımları depoda oluşturuluyor.

Checking patch include/linux/mm.h...
Checking patch include/trace/events/huge_memory.h...
error: include/trace/events/huge_memory.h: already exists in working directory
Checking patch mm/huge_memory.c...
Hunk #1 succeeded at 30 (offset 1 line).
Hunk #2 succeeded at 2270 (offset 53 lines).
Hunk #3 succeeded at 2307 (offset 53 lines).
Hunk #4 succeeded at 2319 (offset 53 lines).
Hunk #5 succeeded at 2327 (offset 53 lines).
....
       ........
Hunk #13 applied cleanly.
Hunk #14 applied cleanly.
Hunk #15 applied cleanly.
Hunk #16 applied cleanly.
Rejected hunk #17.
Hunk #18 applied cleanly

Bu şekilde uygulanan/uygulanamayan kısımları özetliyor. Uygulamada sorun oluşturan her dosya için uygulanamayan kısımları dosya_adı.rej uzantılı diff dosyası oluşturarak bize gösteriyor. Bu dosyaları git status ile bakarsak görebiliriz. Bu süreçte depo aslında rebase etme gibi git apply sürecinde oluyor. Yamanın uygulanmayan kısımlarına .rej uzantılı dosyalardan bakıp, kendimiz dosyaları açıp değişiklikleri yapıyoruz. git status ile tekrar bakıp eklememiz gereken dosyaları git add ile ekledikten git am --resolved ile işlemi sonlandırıyoruz. Bu şekilde çakışma oluşan yama dosyalarını depoya uygulamış olduk.

Çakışma çözme işlemini bu yazıdan okuyarak öğrendim. Umarım benim yazım da faydalı olmuştur.

8 Eylül 2015

Posted In: çekirdek, Gezegen, git, git am, git apply, github, kernel, linux, yama

Bir Linux Yaz Kampı’nın Daha Ardından: Perde Arkası

Bilindiği gibi Linux Kullanıcıları Derneği (LKD), İnternet Teknolojileri Derneği (INETD) ile işbirliği içinde her sene yaz aylarında, herkesin katılımına açık olan 15 günlük Linux yaz kampı düzenlemekte. Bu yaz kampına katılım için katılımcılardan herhangi bir ücret alınmıyor. Sadece katılımcıların kendi yol/konaklama/yemek masraflarını karşılamaları gerekiyor. KYK ve üniversite yurtlarında uygun fiyatlı konaklama imkanı sunuluyor. Bu sene, yani 2015 yılında bu kampın 6.sı düzenleniyor. Son 4 yıldır ise Linux Yaz Kampı, Bolu Abant İzzet Baysal Üniversitesi’nde üniversitenin de desteği ile düzenleniyor. Geçtiğimiz 5-6 yıldır her sene artan başvuru sayıları bu organizasyonun başarısının bir göstergesi. Ben son birkaç yıldır aktif olarak bu organizasyona destek olamasam da e-posta grubunu elimden geldiğince takip ediyorum. Bu yazıya başlarken bu kadar popüler olan bir organizasyonun perde arkasında neler olduğu ve gönüllü dernek üyelerinin bu etkinliği gerçekleştirebilmek adına nelerle özenle ilgilendiği konusunda herkesin fikri olsun istedim. Şimdi detaylar…

Öncelikle başvurular alınmaya başlamadan önce yapılması gerekenleri sayarak başlayacağım. Kamp tarihinin belirlenmesi (Ramazan Ayı ve Bayramı ile çakışmamasına özen gösteriliyor.), üniversite ve yurt müdürlükleri ile iletişime geçilip belirlenen tarihlerde dersliklerin ve yurtların müsait olduğunun netleştirilmesi, gönüllü eğitmenler ile iletişime geçilip belirlenen tarihlerde kampa katılıp katılamayacakları ve hangi dersleri/sınıfları açabileceklerinin belirlenmesi, web sitesinin güncellenip kayıt almaya hazır hale getirilmesi, sponsor dosyasının hazırlanıp çeşitli firmalara sponsorluk teklifinde bulunulmak üzere gönderilmesi, kampta dağıtılacak promosyon malzemelerinin ve katılımcılara yol gösterecek afişlerin belirlenmesi, hazırlanması. Özetle, daha ortada görünen hiçbir şey yokken hummalı bir çalışma başlıyor.

Başvurular başladığında tüm kayıtlar veritabanında depolanıyor. Başvuranlar arasında üniversite öğrencilerinden, çok çeşitli kurum ve şirketlerde çalışanlara kadar farklı yaş ve hatta meslek gruplarından kişiler oluyor. 2015 yılındaki toplam başvuru sayısı 775. Sınıflar ve eğitmenlerin üst limiti belirlediği toplam kontenjan ise 300 kişi civarı. Dernek olarak stratejik görevlerdeki kişilerin eğitiminin daha önemli olduğunu düşündüğümüz için başvurularda öncelik görevlendirme alan kamu ve üniversite bilgi işlem personellerine veriliyor. Ancak daha önce de belirttiğim gibi kampa katılım herkese açık ve başvurular kapandıktan sonra kontenjan elverdiğince homojen bir seçim yapılıyor. Bu seçimler yapılırken daha önce INETD ya da LKD’nin benzer etkinliklerinde çeşitli sebeplerle kara listeye alınmış kişilerin de elenmesi gerekiyor. Seçim sürecinde yeterince hızlı olunamazsa gecikmeler yaşanabiliyor. Bu sene de gönüllü arkadaşlarımızın yoğunluğu sebebiyle sonuçları açıklamakta biraz geciktik.

Başvuranlar arasından elimizden geldiğince adil ve homojen bir seçim yaptıktan sonra kampa katılmaya hak kazananların bir listesi yayınlanıyor. Bu kişiler ile iletişime geçilerek kesin kayıtları yapılıyor ve bundan sonra yapmaları gerekenler açıklanıyor. Bunun yanı sıra bir yedek liste, bir de reddedilenler listesi oluyor. Tabii ki tüm bu kişilerle de iletişime geçilip durumdan haberdar ediliyor. Bu sırada üniversite ve KYK yurtları ile iletişim sürdürülerek kaç kadın kaç erkek katılımcı olduğu bilgisi veriliyor ki hem yaz okulu ya da staj sebebiyle yurtta kalmak isteyen öğrencilerin kontenjanlarını işgal etmeyelim, hem de Linux Yaz Kampı katılımcıları açıkta kalmasın. Bir yandan da eğitmenlerin geliş – gidiş tarihleri ve konaklama imkanları netleştiriliyor.

Eğitimlere kabul edilen kişilerden aynı sınıfta ders göreceklerin bilgi düzeylerinin birbirine yakın olmasına gayret ediliyor. Yoksa sınıftaki hiç kimse memnun kalmıyor, ders ya çok hızlı geliyor ya da çok sıkıcı. Bunun önüne geçmek için birkaç sene önce eğitimlere başlamadan bir seviye belirleme sınavı yapılmasına karar verilmişti. Bir yandan eğitmenler ve organizatörler bu sınavları hazırlamak için çalışıyorlar. Geçtiğimiz senelerde eğitimlerin başlamasına çok az bir süre kalmasına rağmen onaylanmış katılımcılardan kampın nerede yapılacağı, eğitim için ücret ödenip ödenmeyeceği, dersler başladıktan birkaç gün sonra kampa gelip gelemeyecekleri gibi, kamp web sitesinde üzerine basa basa belirttiğimiz soruları içeren e-postalar yağıyordu. Birçok kişiye garip ya da saçma gelmiş olabilir ancak bu sorunun üstesinden gelmek için kampa katılmak isteyenlere bu soruların yanıtlarını içeren ufak bir test yaptık. Açıkçası işe yaramış görünüyor. 2015 yılında kampın başlamasından hemen öncesine kadar alınan ve gönderilen e-posta sayısı 2500’ü geçmişti. Buraya kadar işlerin karışık olduğunu düşünüyorsanız gelin bir de bu noktadan sonra neler olduğuna bakalım.

Yaz kampının başlamasına 2 gün yani tam 48 saat kalmasına rağmen, çeşitli sebeplerle kampa katılamayacağını belirten katılımcılardan e-postalar yağıyor. Son anda çıkan acil işler, devam etmekte olan stajlar, kimi zaman da belirtilmeyen sebeplerle iptal e-postaları yağmaya devam ediyor. Elbette, insanlık hali, gerçekten ters giden ve önceden öngörülemeyen şeyler, seyahat engeli oluşturabilecek çeşitli sağlık sorunları olabilir. Ancak son anda yağmaya başlayan iptal e-postalarının hepsine bu gözle bakabilmemiz ve anlayışla kabul etmemiz mümkün değil. O yüzden kamp web sitesinin Sık Sorulan Sorular bölümünde belirttiğimiz gibi kampa kesin kayıt yapıldıktan sonra başvurusunu iptal edenler LKD ve INETD’nin kara listesine alınıyor. Kara listeye alınanlar gelecekte bu iki derneğin düzenlediği herhangi bir kontenjanlı etkinliğe kabul edilmiyor. Kişileri kara listeye alırken iptal e-postasını gönderen kişinin iyi niyetine ve samimiyetine güvenerek, önceden tahmin edilemeyen önemli sorunlar yaşadığını belirten katılımcıları hariç tutuyoruz. Bunu anlamak çoğu zaman birkaç kez karşılıklı yazışmayı gerektiriyor. Bu konuda da herkese eşit davranmaya özen gösteriyoruz. Elbette iptal eden katılımcıların yerlerinin doldurulması gerekiyor. Bu noktada yedek listeler devreye giriyor ancak kampın başlamasına 1-2 gün kala yedek listedeki insanlara haber vermek pek hoş olmadığı gibi, pek verimli de olmuyor. Yine son ana kadar katılımcılardan gelen çok çeşitli sorular ve örneğin konaklama şeklinin değiştirilmesi gibi çözülmesi gereken sorunlar oluyor. Tüm bunların sonucunda son ana kadar yurt listelerinin ve katılımcı sayılarının güncellenmesi gerekiyor. Bütün bu sürecin üzerine kayıt yaptırıp haber vermeden kampa gelmeyenler ya da kampa gelip sonra kaçanlar da oluyor. Eh biz de anaokulu öğretmeni değiliz tabii kocaman insanları kulağından tutup getirelim ya da köşede tek ayak üstünde durma cezası verelim. Elimizden geldiğince adil ve herkese faydalı olacak bir organizasyon yapmaya çalışıyoruz ama elimizde olmayan şeyler de oluyor. Örneğin bu sene yukarıdan gelen bir emirle kampın son haftası KYK kadın yurtlarını boşaltmak zorunda kaldık. Şehirle üniversitenin ulaşımı ise belediyedeki koşullar değiştiğinden istediğimiz gibi sağlanamadı.

Sonuç olarak, bu kampın organizasyonunda perde arkasında yaşananları olabildiğince kısa şekilde anlatmaya çalıştım. Yazıyı daha da uzatıp okunabilirliğini azaltmamak adına bahsedemediğim şeyler de var, onlar da başka bir yazıya kalsın. Elbette bizler de insan olduğumuzdan hatalarımız da oluyordur. Ancak yukarıda anlattığım bütün hazırlık sürecinin ve kamp sırasındaki eğitim sürecinin tamamının gönüllülük esasına dayandığını bir kez daha belirtmem gerekir. Bu süreçlere katkı veren herkes kendi profesyonel işlerinde çalışmaktadır. Organizasyonla ilgilenen ya da kampa eğitmen olarak katılan herkes bu kamp için zaman yaratmakta, işlerinden izin alarak (kimi zaman alabildikleri kadar ya da uzaktan çalışarak), herhangi bir ücret almadan, kampa katılmakta ve katkıda bulunmaktadırlar. Kampın eğitmenlerin yol-konaklama ücretleri, sınıflarda kullanılacak olan elektrik kabloları, projeksiyon cihazları, perdeler gibi giderleri ise LKD, INETD, Bolu Abant İzzet Baysal Üniversitesi ve bulabilirsek sponsorlar tarafından karşılanmaktadır.

Tüm bu süreç sosyal bir deney olsaydı herhalde pek çok insanın kendilerine ücretsiz olarak sunulan imkanları ciddiye almayışlarının güzel bir kanıtı olurdu. Oysa insanlar böyle bir etkinlik için para ödeselerdi son dakika iptalleri ya da şartları okumadan kayıt formunu dolduranlar yine bu kadar çok olur muydu? Ama bu kez de derneğin misyonuna ters olan bir etkinlik olurdu. LKD’nin tüm etkinlikleri herkese açık ve ücretsizdir. Çünkü özgür yazılım herkesçe erişilebilir olmalı, özgür yazılım ve Linux’u olabildiğince fazla kişiye anlatabilmeliyiz. Parası olanlara değil, gerçekten istekli olanlara ulaşabilmeliyiz. İşte yukarıdaki bu uzun yazı sadece bu amaç doğrultusunda verilmiş emeklerin çok kısa bir özetidir. Bu organizasyonda emeği geçen herkese teşekkürler, iyi ki varsınız.

3 Eylül 2015

Posted In: linux, Özgür yazılım

2015 Yazılım Özgürlüğü Günü Yaklaşıyor

Yazılım Özgürlüğü Günü (Software Freedom Day) tüm dünyada özgür yazılıma dikkat çekmek ve bu bilinci arttırmak üzere kutlanıyor. Bu günde neler yapılacağı hakkında şurada ipuçları verilmiş olsa da, orada da yazıldığı gibi yapılabilecek etkinlikler sizin hayal dünyanız ile sınırlı. Yazılım özgürlüğü günü bu sene 19 Eylül Cumartesi günü kutlanacak.

Türkiye’de bu konuda birşey orgaize edilip edilmeyeceğini bilmiyorum. Henüz bu konuda birşey duymadım. O tarihlerde Türkiye’de olmayacağımdan ben birşeyler yapamıyorum. Ancak umarım Türkiye’de de birşeyler yapanlar olur.

web-banner-chat-register

Eğer bir etkinlik düzenlemek isterseniz etkinliğinizi şuraya kaydetmeyi unutmayın.  Hatta yazılım özgürlüğü günü Türkiye sayfasında da yer alabilirsiniz.

2 Eylül 2015

Posted In: linux, Özgür yazılım

WP Twitter Auto Publish Powered By : XYZScripts.com