-
Yılın Özgür Yazılım Projesi: Uludağ
Linux Kullanıcıları Derneği tarafından düzenlenen ve sonuçları III. Linux Şenliği‘nde açıklanan Yılın Penguenleri yarışmasında Uludağ projesi Yılın En Başarılı Özgür Yazılım Projesi seçildi. Sevindik, ama biraz da düşündük.
Sevindik, çünkü LKD de Şenlik’e katılan diğer penguenler gibi Uludağ projesine önem vermişti. Başta ÇOMAR olmak üzere özgün projeleri ile Linux dünyasında önemli bir yenilik ve atak yaratmayı hedefleyen bir projenin Türkiye sınırlarında düşünülmesi, tasarlanması ve hayata geçmesi tabii ki sevindirici.
Ama aynı zamanda düşündük de! Çünkü Uludağ her ne kadar sıkı bir proje de olsa şu anda -özellikle dışarıdan bakınca- hayli bulanık bir görüntü veriyor. Henüz bir prototip ya da ekran görüntüsü çıkarabilmiş değil ortaya. İlan ettiği takvime uyup uyamayacağı belli değil. Ekibini yeterli büyüklüğe çıkarıp çıkaramayacağı, çıkardığında etkin bir şekilde hedefe yönlendirip yönlendiremeyeceği henüz belli değil. Kısacası, Uludağ henüz emekleme aşamasında.
Henüz emekleme aşamasında bir proje eğer “Yılın En Başarılı Özgür Yazılım Projesi” seçiliyorsa iki seçenek vardır: Ya gerçekten sıkı vaatlerle ve sağlam bir güven duygusu ile herkesin kalbinde ve beyninde yer etmiştir bu proje. Ya da başka aday olmadığından otomatik olarak ödülü “haketmiş”tir. Her ne kadar ikinci seçeneğe işaret eden (yegane diğer adayın bir destekçi olması gibi) çeşitli emareler olsa dahi biz ilk seçeneğin ağırlıklı etken olduğunu düşünmeyi tercih ediyoruz.
Neyse, ilk ödülümüzü aldığımıza göre bize düşen bu teveccühü haketmeye çalışmak. İnşallah ödüller devam eder, benimkiler dahil şüpheler ortadan kalkar.
-
Uludağ Görücüye Çıktı
Uludağ projesi ekibi olarak Linux Kullanıcıları Derneği tarafından düzenlenen ve 13-16 Mayıs 2004 tarihlerinde Ankara Milli Kütüphane’de gerçekleştirilen III. Linux Şenliği‘nde görücüye çıktık. “Uludağ – Ulusal Dağıtım Projesi Paneli” adlı oturumdan kısa notlar.
LKD üyeleri ve şenlik katılımcılarının önüne tüm Uludağ kadrosu olarak dizildik: Ben, Alp Öztarhan, Serdar Köylü ile Barış Metin ve Ayşe Genç ile Zerrin Çakmakkaya. Küçük bir LKD grubu ile Akademik Bilişim ’04 sırasında yaptığımız toplantı ve Ocak ortalarında UEKAE haklayıcılarına verdiğimiz bir sunuş dışında ilk kez kalabalık karşısına çıkmamız oluyordu bu.
-
Nokia 6600 ve Bluetooth
Eşimin doğumgünü hediyesi Nokia 6600 ile iyice içli dışlı oldum. Nokia sağolsun, Bluetooth yığınını nasıl gerçekleyeceğine bir türlü karar veremediğinden Palm ile tam haberleşemiyor çocuklar. Gerçi HP compaq nx7000 ile de sorunları var gibi, ama orada durumlar çok daha iyi.
Telefonun alınmasından birkaç gün önce (hediyenin sürpriz olmadığını söylememe gerek var mı, bilmem 🙂 Palm – 6600 BT problemi hakkında birşeyler okumuştum. Ama aletin güzelliği ve özelliği bu soruna rağmen “alalım” dememe yetti de arttı. Bu karardan bırakın pişmanlık duymayı, sürekli memnun olur haldeyim. Çok canavar bir makine! Tek zayıf yanı herhalde fotoğraflarındaki bulanıklık, ama o kadar kusur kadı kızında da olur.
Neyse, gelelim BT sorunlarıma: nx7000 BT üzerinden GPRS ile internete bağlanabiliyor, Amerikalıların “with flying colors” dediği şekilde, hiç sorunsuz. PC Suite ile işler biraz şekerrenk, BT ile göremiyor aleti. COM7’de (ki seri bağlantı noktası) birşey bulamıyor, COM5’te ise (ki bu da HotSync bağlantı noktası) Palm HotSync ile çakışma oluyor. Ben de, ne yapayım, paşa paşa IR ile görüyordum bu işimi. Ama dün makineyi Windows’ta açtığımda BT bağlantı da çalıştı ve şakır-şukur eşleme yaptım. Harika! Galiba yalnızca açılışta yapabiliyor bu işi, çalışan makinede yine IR’a mahkumum. Ama bir de Palm HotSync’i kapatıp deneyeceğim, belki çakışma kalkar ortadan.
Palm ile işler daha karmaşık: Nokia 6600 için sürücü çıkmamış olduğundan BT hemen hiç çalışmıyor. 6310i sürücüsü ile SMS kontrolü yapmıştım, o da yalnızca SIM karttakilere bakabiliyordu. 6310i’yi uçurunca o da gitti. Artık neredeyse Palm ile Nokia haberleşmez durumda. Eşlemeyi PC üzerinden yapıyorum, sağolsun Outlook 🙂 İnternetsel tüm faaliyeti 6600’a aktarmayı, Palm’ı ise kopuk (offline) işler için (iSilo, AvantGo gibi) kullanmayı düşünüyorum. Tabii bu arada da Palm’ın sürücü çıkarmasını, ya da Nokia’nın firmware güncellemesi yapmasını hararetle bekliyorum. Son olarak Nova Media firmasının yazdığı beta sürücüyü kullandım. Bağlantı sağlayabiliyor, hatta GPRS de açılıyor, IP adresini felan alıyor. Ama hemen sonra kopuyor bağlantı, Palm da şaşıp kalıyor. En kötüsünden IR ile bağlantıyı deneyeceğim, GPRS’de sorunsuz çalışması beklenir, bakacağız.
Ya çabucak PalmOS6 cihazlar çıksın, UTF-8 kullansınlar ve Nokia sürücüleri tam olsun; ya da en azından 6600 için doğru çalışan bir sürücü çıksın. Kuramsal olarak mümkün şeylerin gerçekte yapılamayışı fena halde gıcık ediyor beni, o kadar da hacker değilim ki oturup kendim yazayım 😦
-
MT ile apache2
Serdar Hoca da sık sık söyler: “Birşey bozulmadıysa tamir etmeye kalkma!” Gerçi deMarco Slack’de farklı birşey söylemekte, ama bu kaide oldukça geniş kabul görür. Ben, her zamanki gibi, genelgeçer kuralı dinlemedim ve durup dururken apache 1.3’ümü apache 2.0 ile değiştirdim.
Sonuç mu? Çalışmayan MovableType dolayısıyla kaybolan yarım gün.
MovableType hayli sıkı bir web günlüğü (blog) aracı. Gerçi GPL değil, ama yine de hayli açık sayılabilecek bir lisans anlaşması var. Epeyce bir süredir web günlüğüm için MT kullanıyorum, her ne kadar günlüğün içeriği sık değişen ve heyecanlı birşeyler olmasa da.
Neyse, gelelim oyunun diğer aktörüne: apache, neredeyse yıllardır, ara versem de, kullandığım web sunucusu. 2.0 sürümüne bir türlü alışmadım, “Ne gereği vardı ki” diye düşündüm genelde. Paşa paşa 1.3 ile yürüttüm işlerimi. Zaman zaman kaynaktan derleyip içine envai modül yükledim, zaman da kutudan çıkarıp olduğu gibi kullandım. Şimdiki hali özellikle sanal sunucular açısından hayli başarılı, yıllardır uzak durmaya çalıştığım bu işi sonunda öğrendim ve abartı düzeyinde kullanmaya başladım.
Kısa keseyim, geçenlerde bir Synaptic Package Manager çalıştırırken adam “apache’leri kaldıracağım” diye tutturdu. Ben de “herhalde ilahi bir işaret olsa gerek” diyerek “eyvallah” dedim, o 1.3’ü kaldırdı, ben 2.0’ı yükledim. Kısa bir sürede yapılandırma dosyalarını ayarladım ve eskisinden farksız bir şekilde faaliyetime devam ettim.
Acaba? MT sürekli sorun çıkarıyor, ne yapsam login penceresini geçemiyorum. Hayır, sorunun hangi parçadan kaynaklandığından da emin değilim. MT mi, tarayıcı mı, veritabanı mı, web sunucu mu? Önce tarayıcıya yüklendim, MT kılavuzunda söylendiği gibi kurabiyelerle (cookie) hemhal oldum, izledim, gözledim.Herşey yolunda. Sonra veritabanına döndüm, mysql’den Berkeley DB’ye döndüm ve geri döndüm, mysql loglarına baktım. Yok yok, sorun var. Adam kurabiye işleyemiyor, geri dön tarayıcıya bak.
Oradan MT’ye geçtim. Web sitesinden indir, yooo, elimdeki son sürüm zaten. Yine de indir. Var olanı sil, yenisini kur. Dene, çalışmıyor. Veritabanı adını değiştir, herşeyi yeniden kur, dene, çalışmıyor. Perl ve apache modülleri ile boğuş.
Sonunda öyle bir noktaya geldim ki yapılacak şey apache2 ve tüm modüllerini kaynaktan derleyip yeniden denemek olacaktı. Tam başlarken bir ses dedi ki, “yahu sen ne yapıyorsun?” zaten apache ile çalışmıyor muydu bu MT? O zamandan bu zamana ne değiştirdin, bir tek apache sürümü değil mi? Boş ver 2.0’ı, paşa paşa 1.3’e dön!”, ben de o sesi dinledim.
Beş dakika sonra herşey tıkır tıkır çalışıyordu 🙂
Hisse olarak ilk noktaya geldik: “Bilgisayarlar o kadar acayip yaratıklar ki, herhangi bir şekilde çalışıyor olmaları dahi mucize addedilebilir. Hal böyleyken bozulmamış taraflarını kurcalayıp dertsiz başımıza dert almak kabul edilemez. Birşey bozulmadıysa tamir etmeye kalkma!” Her ne kadar dinlemeyecek olsam da genelgeçer kuralı bir kez daha vaz etmekte fayda var 🙂
-
switchconf
MAM‘a gelince yapılacak işlerin başında dizüstümü değişken çevreye uydurmak vardı. switchconf bu konuda attığım ilk adım oldu.
Tamam, diyelim MAM için tüm ayarları yaptım: IP değişikliği, resolv.conf, DNS ayarları, şu ve bu. Peki sabahları Uludağ ofisine gidince ne yapacağım? Ya da evde makineyi açarken neden bağlı olmayan Ethernet’i bekleyip durayım? Ya da taşınıp da hayırlısı ile bir ADSL alınca evin ayarları ne olacak? Evet, ÇOMAR‘ı bekleyecek halim olmadığına göre iş yine başa düşüyordu. Ben de iddialı durumları seven bir eleman olarak daldım!
Synaptic Package Manager’da bir arama ile ilk olarak divine çıktı karşıma. Akıllıca bir yaratık: Makineyi açarken ağı kontrol ediyor, kesinlikle aktif olması beklenen (yönlendirici, sunucu, yazıcı gibi) IP adreslerini tarıyor. Bunlardan hareketle hangi ortamda olduğunu buluyor ve ilintili resolv.conf dosyasını seçiyor. İstenirse başka işleri de script yolu ile yapabiliyor. Hemen indirdim, yapılandırdım ve çalıştırdım. Hüsran! Bir şekilde ARP çağrılarına yanıt alamayınca alet nerede olduğunu bulamadı 😦
Devam ediyoruz. Karşımıza switchconf çıkıyor. Bu oldukça mütevazı bir proje, bir web sayfası bile yok. Çalışma yöntemi de çok basit: Kullanmayı düşündüğünüz ortam için gerekli yapılandırma dosyalarını burada bir ağaç yapısında yerleştiriyorsunuz. Normal durumda / dizininden başlayarak istediğiniz her dosyaya dalabiliyorsunuz. İki de script dizini var before.d ile after.d, bunlar da yapılandırmaya başlamadan önce ve bittikten sonra çalıştırılacak işleri gösteriyorlar. Yani durdur-yapılandır-yeniden çalıştır, aynen ÇOMAR gibi. Her ne kadar Serdar Hocam “Yooo, ÇOMAR apayrı bişey!” dese de 😉
Neyse, yükledim, ayarladım, çalıştırdım. veee… çalıştı! Hem de hiç problemsiz! Şu anda mam, uludag ve ev gibi üç ortamım var. Ama, örneğin, TÜSSİDE‘ye bir dahaki gidişte artık ne yapacağımı biliyorum, hem de 5 dakikada, tertemiz bir yolla!
-
Çomar ile Pisi ve Yalı
Cuma akşamı Dolapdere’den çıktım. Yağmur altında 20 dk taksi bekledim ve başarısız oldum. Vurdum Taksim’e yürüdüm. Bostancı dolmuş sırasındaki elemanlar üstüsüte çıksalar Mars’a olmasa bile Ay’a ulaşırlardı, çaresiz dipten girdik sıraya. Ortada yarı akıllı yarı deli tipler kah sırayı ikiye bölüp kah yeniden birleştirirken rüzgardan şemsiyem ayvayı yedi, ama ne yeme. Ne açılıyor, ne kapanıyor, telleri bir acayip olmuş, oynadıkça etrafa tehlike yaratıyorum. Okkalı bir küfür patlatıp sıradan çıktım, önce şemsiyeyi kendine getirmeye çalışacağım, sonra Karaköy’e gideceğim bir taksiyle, vapurla Kadıköy, dolmuşla eve. Neyse ilk önce şemsiyeyi bir çöplükte mevlası ile başbaşa bıraktım. Taksiciler 18. Yağmur Bayramı nedeniyle evlerine kapanmışlar, yollarda boş taksi bulmak çakılmayan Windows bulmak gibi zor bişey. Gümüşsuyu’ndan aşağıya basıyorum. Kabataş civarında (neyse bu sefer kısmen korunaklı bir yerde, otobüs durağında) 20 dk. daha taksi bekledim. İş başa düştü deyip Karaköy’e yürümeye başladım. Tam metro/tünel inşaatı nedeniyle merdivenleri küfürler eşliğinde tırmanıp setüstüne gelmiştim ki yukarıdaki kıyamadı bir boş taksi gönderdi. Gerisi plandaki gibi, Karaköy-vapur-Kadıköy-dolmuş-ev. Tüm hikaye 2,5 saat sürdü.
Şimdi bunları neden anlatıyorum, diyeceksiniz. İnsan bu şekil yürüyüp duruken, ve sürekli yağmur yağıyorsa ve sabah hem hava güzel ve hem de nasıl olsa şemsiyem var diye ceketle çıkmışsa evden yol boyunca sıkı şekilde beyinsel faaliyette bulunuyor. Ben de, insan olduğumdan olsa gerek, bulundum.
Netice olarak LiDOR ve U-PIE projelerinin yeni isimlerini buldum. Sakın “yahu hoca, yine mi isim?” demeye kalkmayın. Bir kere isimler çok şık, sonralıkla ben nası olsa bu projelere kodla felan katkı yapamayacağım, bari isim koyayım. Son olarak da proje için o kadar yorulup ıslanıp siniri bozulmuş bir proje yöneticisinin ricasını kıracak kadar taş kalpli değilsinizdir diye düşünüyorum.
Gelelim isimlere, Barış’ın dediği gibi akrostiş ile veriyorum:
Configuration by Objects: Modify And Restart
yani COMAR, daha doğrusu ÇOMAR. Özellikleri:
- Hayvan ismi, Açık Kaynak/Linux dünyasına hayli uygun
- Kısaltma Türkçe, proje ismi İngilizce, yeme de yanında yat
- Sıkı bir espri anlayışı (sense of humor) içeriyor, ki bu da Linux camiası için iyi
- Eğer uygulamalar koyunsa, biz de onları gütmek istiyorsak, daha önce konuştuğumuz gibi (karmaşık sistemler, adaptiflik vb.) en iyisi bir çoban köpeği bulundurmaktır, buyrun Çomar!
İkincisine geldik:
Packages Installed Succesfuly, as Intended
yani PISI, yani PİSİ. Çomar’ın en yakın arkadaşı. Özellikleri Çomar’ın 1-2-3 numarası ile aynı. Pisi için maalesef bir analojik bağlantı kuramadım 😦
Tabii bir de şey var
Yet Another Linux Installer
yani YALI. Bunu hayvana çevirmedim, çünkü
- İstanbul bağlantısını çok güzel şekilde veriyor
- Herşeyi hayvan yapmaya çalışmak bir nevi görgüsüzlük olacaktı
- Karaköy’e gelmiştim
Müsaadenizle Çomar, Pisi ve Yalı’nın kulaklarına ezanla isimlerini fısıldayacağım.
-
Peter Wayner: “Free for All”
Free for All Linux ve açık kaynak yazılım camiasının tarihçesi, kısmen felsefesi ve kişiliği konusunda hayli yetkin bir çalışma gibi görünüyor. Taraf tutmak yerine her iki tarafa da sert gelebilecek görüşler arasında dolaşmış Wayner. Kimi zaman bana fazla açık kaynak taraftarı gibi göründü; mutlaka kimi eleştirileri de camiaya haksız görünmüştür. Tavsiyeye şayan bir eser kanaatimce.

- Battle Microsoft’un mahkemede Linux’u rekabet olarak tanımalamasından hareketle Linux (özgür yazılım) camiasının kısa bir tanıtımı. Linus Torvalds, Richard Stallman ve Alan Cox isimlerini ilk kez burada görüyoruz.
- Lists Posta listelerinin özgür yazılım dünyasındaki öneminin vurgulanması. Açık ve hızlı haberleşmenin, hiyerarşik olmayan ve gereksinim temelli geliştirmenin yararlarını ortaya koyan birkaç anektod.
- Image Özgür yazılım camiasının bir avuç eski tüfek çiçek çocuktan ibaret olmadığını öğreniyoruz. Bruce Perens’le tanışıyoruz.
- College Unix ve GNU tarihinin ilk zamanları. GNU Manifesto ve Free Software Foundation’ın temelleri ve üniversitelerin güvenilmezlikleri üzerine bir bölüm.
- Quicksand AT&T’nin bölünmesi ardından Unix lisans ücretleri fırlıyor ve Berkeley’de BSD doğuyor. Network Release 1 ve 2, ardından 386BSD. Gelir kaynağının dinamitlendiği hissine kapılan AT&T Berkeley’i dava ediyor.
- Outsider Ve Linus Torvalds Linux çekirdeğini geliştiriyor!
- Growth Linux’un gelişmesi; John “maddog” Hall’un Linux ile tanışması ve Linux taşıması için bir digital göndermesi, ilk dağıtımlar ve Linux şirketleri.
- Freedom “Free” sözcüğünün açıklanması. GPL nedir ne değildir? BSD lisansının gelişmesi ve özgür yazılımın iki kanadı arasında “özgürlük” farklılıkları. Eric Raymond’un Open Source Initiative’i.
- Source Kullanılan uygulamanın kaynak koduna da sahip olmanın getirdiği avantajlar. Eric Raymond’un Katedral ve Pazar benzetmesi ve özgür yazılım dünyasına uygulanabileceği değişik şekiller.
- People Özgür yazılım camiasını oluşturan insanlar kimdir, nerede yaşarlar, ne yer ve ne içerler?
- Politics Richard Stallman bir tip komünist mi, Eric Raymond bir tip libertaryan mı? GNU hareketi bir tip Sovyet yapılanmasına mı sahip? Özgür yazılımcıların politik görüşleri ve duruşları.
- Charity Özgür yazılım camiasının yarattığı ve insanlığın kullanımına sunduğu yazılımlar bir bağış ise parasal değeri nedir? Yazılım endüstrisinin “bağış” oyunları. Kar amacı gütmeyen özgür yazılım örgütleri. Marcel Mauss’un “Gift: The Form and Reasone for Exchange in Archaic Societes” kitabında bahsettiği yerli kabilelerinde hediyeler ve özür yazılım analojisi.
- Love Özgür yazılım camiasının meşhur kavgaları. Apple’ın açık kaynak girişiminde Eric Raymond’un Bruce Perens’i tehdit edişi, Bruse’un polis çağırması. Özgür yazılımın temel taşlarından biri: Katılımcıların kalbindeki sevgi.
- Corporations Özgür yazılım işine paranın karışması. Red Hat’in kuruluşu ve özgür yazılım camiasına yaklaşımı, Apple ve Sun’ın açık kaynak girişimleri, yazdıkları programlardan para kazananlar ve kazanmayanlar, büyük şirketlerin özgür yazılım dünyasının farkına varması.
- Money Özgür yazılımın sürdürülebilir olması için kullanabileceği üç iş modeli: Cygnus’ın GPL üzerinden para kazanması ve bir “tekel” oluşturması, açarak değil kapatarak para kazandıran ilginç BitKeeper lisansı, hazine avları ve proje simsarları (sourceXchange, CoSource vb.).
- Fork Özgür yazılım dünyasının kaçınılmaz boşanmaları: Çatallamalar. Eric Raymond’ın emacs’ı çatallamamayı seçmesi. 386BSD -> FreeBSD -> NetSBD -> OpenBSD çatallamaları. SSLeay -> mod_SSL -> OpenSSL çatallaması ve yeniden buluşması. Çatallamaların iyi yanları, BSD ve Linux dünyalarının karşılaştırması.
- Core Özgür yazılım projelerinde karar verme mekanizması. Debian ve Apache yöntemleri.
- T-Shirts Robert Young’ın ağzından Red Hat’in hikayesi. Neden yazılımı bedavaya verip t-shirt’leri satmak akıllıca bir hamle?
- New Telif hakları, fikri mülkiyet, ters mühendislik, diğer açık meslekler.
- Nations Özgür yazılım hareketi ve ulus-devletin çaresizliği. Kripto algoritmaları, ithalat yasakları ve ABD’nin ekonomik kaybı.
- Wealth Özgür yazılım hareketi bir zenginlik oluşturuyor mu? Parasal olarak, ya da başka türlü. George Gilder’ın “Wealth and Poverty” kitabından hareketle özgü ve özgür yazılım dünyalarına bakış.
- Future Özgü yazılım özgür yazılımın yükselişini durdurabilecek mi? Microsoft’un açık standartlarla savaşı, Microsoft’un zırhındaki dört çatlak: Sunucu pazarı, gömülü sistemler, gençler ve fiyat avantajı, üniversitelerin fiyat etiketi. Yazılım patentleri savaşı ve özgür yazılımın üç silahı: Dokümante edilmiş bir geçmiş, uyum sağlama yeteneği ve mevzuattaki araştırma-geliştirme boşluğu. Yeni yeni başlayan ve uzun sürecek bir özgü-özgür savaşının ilk anları.
Özet olarak Linux ve özgür yazılım konusunda oldukça önemli bilgileri anlamlı bir yapıda toparlayan ve aynı zamanda da eğlendirici olabilen bir kitap. 300 küsur sayfa bir solukta okunmuyor, ama okunduğuna değiyor. Hararetle tavsiye ederim.
-
Donald Norman: “The Invisible Computer”
Donald A. Norman benim okumayı sevdiğim ve hasbelkader feyz aldığım bir tasarım irdeleyici/İBEci/kullanışlılıkçı/bilişsel psikolog. The Invisible Computer biraz da iş için okuduğum bir kitap ve zevk aldım.

- “At first, the selling point is the technology and the list of features. At maturity, the selling points require that the attributes of the technology be minimized. The buyers now focus on solutions and convenience, on their experience with the product.” (p. 34)
- “It is important to distingiush between users and customers; they are not necessarily the same. A good marketing organization understands and exploits these differences.” (p. 45)
- Contextual Design (p. 184, Figure 9.1)
- Talk customers while they work: Provides reliable knowledge about what customers actually do anf what they care about
- Interpret the data in a cross-functional team: Creates a shared perspective of the data
- Consolidate data across multiple customers: Creates a single statement of work practice for your entire customer population
- Invent solutions grounded in user work practice: Provides a way to imagine and develop better ways to work
- Structure the system to support the new work practice: Represents the system for planning, UI design, and specification
- Iteration with customer through paper mockups: Provides early verification of design before any ideas are committed to code
- Design the object model or code structure for implementation: Defines the implementation architecture and ensures support of work structure
- Six Disciplines of User Experience (pp. 189-191)
- Field studies
- Behavioral designers
- Model builders and rapid prototypers
- User testers
- Graphical and industrial designers
- Technical writers