* You are viewing Posts Tagged ‘açık kaynak’

Sun Microsystems, MySQL’i almış

2008′in ilk bomba haberi…

Sun, MySQL’i 1 milyar dolar sayarak satın almış. Böylece, MySQL, Java + sunucular filan derken, Sun, Internet’i iyiden iyiye idare eder hale geliyor.

Microsoft, yine bakmaya devam ediyor bu arada.

Oracle, Red Hat müşterilerini kapmak için mücadele ederken, Sun, bazı problemlerle gelen MySQL’i adam gibi geliştirip Enterprise RDBMS pazarında Oracle’a kök söktürebilir. MS SQL filan demiyorum; onu 3.dünya ülkeleri ve Türkiye haricinde pek kullanan yok.

Sun’a sempatim olduğunu gizlemiyorum. Benim pek hazzetmediğim MySQL’in (şirketin de adı bu aynı zamanda) Sun’a geçmesi hem Sun adına sağlam bir yatırım oldu; hem de giderek daha fazla kullanmak zorunda kaldığım ve görünüşe bakılırsa kalacağım MySQL’in gelişmesi açısından bir nevi teminat haline geldi. MySQL’in dokümantasyonu ve araçları “bol” olmasına rağmen, sığ, kalitesiz ve kötü hazırlanmış. Umarım, Sun bu konuda bir an önce harekete geçer.

Açıkçası, MySQL gibi güdük bir RDBMS’den nasıl bir Enterprise ürün çıkarılır, tahayyül etmek pek olası değil. Trigger’lar bile göreceli olarak yeni geldi. ANSI SQL uyumluluğundan zaman zaman fazlaca kopan bir query yapısı var. Buna rağmen, Oracle’ın “kopup gittiği” PL/SQL gibi genişletilmiş bir dile de sahip değil. Çok basit sorgularda oldukça hızlı olmasına rağmen, karmaşık sorgularda tabana vuruyor. (Aslında web gözönüne alınarak geliştirildiği için, çok hızlı, efektif ve pragmatik bir çözüm bir yandan da)

Özgür Yazılım, Açık Kaynak filan da, ben anlamıyorum yahu!

Hani hayatında tek satır kod yazmamış adamlar, “kardeşim açık kaynak, kodu aç bak hemen anlarsın” diye Linux forumlarında sallarlar ya (kod yazmış olsa onu demez zaten!) bu meseleye uzun süredir takılmıştım.

Zaman zaman “kodu açıp bakıyorum”. En son xrandr’ın koduna baktım; çok şahaneydi tadından yiyemedim.

Doğrusu, çoğu açık kaynak kodlu projeden çok daha okunur bir koddu.
Fakat, açık kaynak kodlu projelerin çok ciddi bazı problemleri var. Bunlardan biri, programcıların “zeki görünme” çabası. Böyle bir durum henüz bizde yok. (Kod yokki üstüne konuşup yorum yapalım!). Dünyada da fazla var diyemem; ama çok ciddi projelerde bile bazı sivriler çıkıp “ineğe bak, öle mi yazılır lan o kod” diye ahkam kesiyor. Dolayısıyla, programcılar daha zeki görünmek için acaip karmaşık şeyler yazıyorlar. Programlama dillerinin çoğu, çok basit bir işi çok karmaşık göstermenize izin verecek esnekliğe sahipler; olmadıkları zamanlarda bile birileri öyle göstermenin yolunu kolayca bulabiliyor.

Gereğinden karmaşık yazmanın sadece bu kadar basit bir nedeni olmadığını düşünüyorum.Örneğin, bir sürücü kodunu ne kadar karmaşık yazarsanız, kodu açmanız durumunda rakipleriniz ne yaptığınızı anlayıp kendi ürünlerine uyarlamakta o kadar gecikirler. Yani işin biraz da maddi yönü sözkonusu. Bugün Çin, Hindistan gibi ülkelerde merdiven altı kart üreten ve oturup sürücüsünü de kendisi yazan adamlar var. İnanması güç ama gerçek.

Açık kaynak kodlu yazılımın bir diğer düşmanı da, kullanıcı ve geliştirici açısından, yetersiz dökümantasyon. Artık ciddi projelerin çoğunun yeterli dokümantasyonu mevcut. Hem geliştirici, hem de kullanıcı için. Öte yandan, örneğin KDE projesi için çok ama çok ciddi kaynak sıkıntısı var.  Örneğin, yapılandırma dosyalarındaki hangi ayarın ne işe yaradığını anlatan tek sayfa yazı bulamazsınız. Bazı basit ayarlarla ilgili bilgi var; ama açıkçası Pozitif Linux’da resmen reverse engineering yaptım. Bu esnada, elimde KDE ile ilgili ciddi bir doküman kaynağı da oluştu; hatta üşenmeyip masaüstünde bunun için basit bir WIKI bile oluşturdum; ama defterler hala duruyor:)

Compiler ya da Interpreter’lar çok zeki değildir. Çok basit ama farkı çok somut görebileceğiniz bir örnek vereyim: örneğin, 1′den 100′e kadar olan sayıları bir For döngüsü içinde toplamak yerine, sırayla toplarsanız, kodunuz çok daha hızlı çalışır. While kullanırsanız, for’dan da yavaş bir sonuç alırsınız. Bazen, bazı dillerle gelen hazır kütüphaneler de ayağınızı kaydırır; örneğin Python ile sistem bilgilerini API aracılığıyla almak, shell’den komut çalıştırıp -örneğin lspci- çıktısını almaktan genelde daha uzun sürer.

Kısacası, çoğu özgür yazılımın giderek özgürlükten uzaklaştığını düşünüyorum; sanki kodu giderek karmaşık hale getirerek, çok az insanın anlayabileceği, “elitist” bir yaklaşım içine giriyorlar. Kod içindeki açıklamalar yok olmaya başlıyor, kodlar uzuyor, kimi zaman bloklama yapmak gibi zahmetlere filan bile girilmiyor. Üstelik, bu çok “hince” bir yaklaşım. Çünkü hem “kodlar açık işte” diye insanları çekiyorlar, sonra da anlamasınlar diye ekstra çaba harcıyor, hatta muhtemelen programların olması gerektiğinden daha yavaş çalışmalarına neden oluyorlar.

1, toplam 1 sayfa1