CMS Savaşları: Mambo Çakallığı, Joomla İsyanı ve Drupal Çok Daha İyiyken WordPress’in Dünyayı Ele Geçirme Hikayesi
Bugün internete girip bir web sitesi açmak istediğinizde herkes size tek bir şey söyler: “Kur bir WordPress, geç.” Dünyadaki tüm web sitelerinin %43’ünden fazlasını tek bir yazılımın çalıştırması kulağa doğal bir başarı gibi gelebilir. Oysa bu tablonun arkasında; forum script’lerinden devşirilen ilk portallar, Avustralyalı bir şirketin açık kaynağa çökme kurnazlığı, yazılımcıların tarihi isyanıyla doğan
Joomla ve mühendislik olarak çok daha üstün olan
Drupal’ın nasıl geri planda kaldığının dramatik hikayesi yatar.
Gelin, web teknolojilerinin en kanlı ve entrikalı sayfalarını aralayalım.
1. En Temel Soru: "CMS" Aslında Ne Demek?
CMS, Content Management System yani Türkçe karşılığıyla İçerik Yönetim Sistemi demektir.
1990’ların sonunda bir web sitesi yönetmek tam bir işkenceydi. Sitenizde 500 sayfa varsa, sunucuda 500 tane ayrı .html dosyası bulunurdu. Sitenin üstündeki menüye tek bir yeni bağlantı eklemek istediğinizde, FrontPage veya Dreamweaver açıp o 500 sayfanın beş yüzünü de tek tek düzenleyip FTP ile sunucuya geri yüklemek zorundaydınız!
İşte bu ameleliğe son vermek için şu fikir doğdu:
- Tasarım şablonu (HTML/CSS) bir yerde dursun,
- Makaleler, yazılar ve haberler bir veritabanında (MySQL) saklansın,
- Ziyaretçi sayfayı açtığı anda arka plandaki programlama dili (PHP), veritabanından yazıyı çekip şablonun içine koysun ve sayfayı anında oluştursun.
Kullanıcıya da arkada şifreyle gireceği, Word benzeri bir yazı paneli verilsin; ne kod bilsin ne FTP. İşte bu mucizevi mimariye CMS dendi.
2. Her Şeyin Atası: Forumlar ve Nuke Dünyası
İlk dinamik web siteleri aslında birer CMS değildi; toplulukların birbiriyle konuştuğu forum yazılımlarıydı ( phpBB, vBulletin). İnsanlar forumların ana sayfasına son açılan konuları listeleyen ufak eklentiler yazarak web siteleri üretmeye başladılar.
Ardından sahneye efsanevi PHP-Nuke çıktı (1998-2000). Francisco Burzi adındaki bir geliştiricinin yazdığı bu sistem, web tasarımının kaderini 15 yıl boyunca mühürledi:
Sol sütun blokları, sağ sütun blokları ve ortada akan haberler!
Dönemin oyun klanları, haber portalları, dosya indirme siteleri hep PHP-Nuke ile yapıldı. Fakat PHP-Nuke güvenlik açıklarıyla doluydu; SQL injection saldırılarıyla hack’lenmeyen tek bir PHP-Nuke sitesi kalmayınca tahtını yeni nesil sistemlere devretti.
3. Mambo Çakallığı ve Joomla İsyanı: Kim Kahraman, Kim Çakal?
2000’lerin başında internetin en şık, en modern ve ödüllü CMS’i tartışmasız Mambo idi. Açık kaynak dünyası Mambo’ya bayılıyordu.
Mambo projesinin sponsoru ve isim hakkı sahibi, Avustralyalı Miro adında ticari bir şirketti. Mambo dünya çapında yüz binlerce kullanıcıya ulaşıp devasa bir popülerlik kazanınca, Miro şirketinin yöneticileri bir “kurnazlık” düşündüler:
“Bu kadar emek verdik, bu yazılım milyonlarca sitede çalışıyor. Biz bunu kontrolümüz altına alalım. Kapalı bir Mambo Vakfı (Mambo Foundation) kuralım, projeyi şirket çıkarlarına bağlayalım ve ticarileştirip parayı vuralım.”
Geliştiricilerin Tarihi Tokadı
Miro şirketi zannetti ki yazılımcılar koyun gibi arkalarından gelecek. Ama Mambo’yu gecesini gündüzüne katıp gönüllü olarak kodlayan çekirdek geliştirici ekibi (Andrew Eddie ve arkadaşları) bu çakallığı anında gördü.
Ağustos 2005’te çekirdek ekip topluca bir manifesto yayımlayarak Miro ile tüm bağlarını kopardı. Projeyi çatalladılar (fork). Miro’nun tüm engelleme ve karalama çabalarına rağmen, Swahili dilinde “Hep birlikte / Bir bütün olarak” anlamına gelen Joomla! adıyla sıfırdan bağımsız bir açık kaynak bayrağı açtılar (Open Source Matters).
Sonuç ne oldu?
Miro şirketi kurnazlığının bedelini çok ağır ödedi. Geliştiricisi ve topluluğu kalmayan Mambo birkaç yıl içinde çöp oldu ve silinip gitti. Joomla ise 2005-2010 yılları arasında internetin mutlak hükümdarı haline geldi.
Fakat Joomla da masum kalamadı: Sürümler arası uyumsuzluklar (1.0’dan 1.5’e, oradan 2.5’e geçerken binlerce sitenin göçmesi), aşırı karmaşıklaşan menü/modül mimarisi ve paralı eklenti çöplüğüne dönmesi, kapıyı başka bir güce ardına kadar açtı.
4. Büyük Düello: Drupal Çok Daha İyiyken WordPress Nasıl Dünyayı Yuttu?
Gelelim web tarihinin en büyük tezatlığına…
Drupal: Mühendislerin Aşık Olduğu Kale
2000 yılında Belçikalı Dries Buytaert tarafından yurt arkadaşlarıyla haberleşmek için yazılan Drupal (Felemenkçe druppel yani damla), aslında hiçbir zaman sıradan bir blog motoru olmadı. O baştan aşağı bir veri mimarisi şaheseri ve web uygulama framework’üydü.
- Node ve Entity Mimarisi: Veriyi parçalara bölme, ilişkilendirme ve modelleme yeteneği benzersizdi.
- Views: Tek satır SQL yazmadan veritabanındaki her türlü veriyi dinamik listelere, bloklara ve RSS akışlarına dökebiliyordunuz.
- Güvenlik ve Ölçek: Beyaz Saray (WhiteHouse.gov), NASA, Oxford ve Cambridge üniversiteleri, dev devlet kurumları Drupal kullandı. Çünkü Drupal hack’lenmesi neredeyse imkansız bir kaleydi.
Peki Neden Herkes Drupal Kullanmıyor?
Çünkü Drupal fazla iyiydi, fazla zordu ve acımasızdı!
Sıradan bir kullanıcının veya ufak bir web ajansının Drupal öğrenmesi haftalar alıyordu. Bir fotoğraf galerisi yapmak için Entity referanslarını, Taxonomy terimlerini ve Views filtrelerini bilmeniz gerekiyordu. Drupal’da hata yaptığınızda beyaz ekranla (WSOD) baş başa kalırdınız.
WordPress: Tembelliğin ve Sadeliğin Zaferi
Matt Mullenweg ve Mike Little, 2003 yılında b2/cafelog projesini çatallayıp WordPress’i kurduklarında ellerinde mimari bir başyapıt yoktu. Hatta veritabanı tabloları spagetti gibiydi, mimarisi ilkeldi.
Ama WordPress mühendislerin değil, insanların ne istediğini çok iyi anladı:
- Meşhur 5 Dakikada Kurulum: Dosyayı sunucuya at, veritabanı adını yaz, “İleri” de. Siten 3 dakikada yayında!
- Yazılımcıya Muhtaç Etmeyen Pazar Yeri: Beğendiğin temayı panelden tek tıkla kur. İletişim formu mu lazım? Eklentiyi ara, “Etkinleştir”e bas, bitti.
- Ajansların Kurtarıcısı: Küçük ajanslar ve serbest çalışanlar, bir müşteriye 1 günde WordPress site teslim edip parasını kazanabiliyordu. Drupal ile aynı iş 2 hafta sürüyordu.
Sonuçta ne oldu? Tarih bir kez daha kanıtladı ki: Teknolojide her zaman en iyi mühendisliğe sahip olan değil, en kolay kullanılan ve en geniş ekosistemi kuran kazanır.
Özet Karşılaştırma Tablosu
| CMS | Karakteri | Güçlü Yönü | Zayıf Yönü | Bugünkü Durumu |
|---|---|---|---|---|
| Portal Öncüsü | Bloklu yapıyı ve dinamik haberleri başlattı | Güvenlik açıkları felaketti | Müzelik oldu | |
| Açgözlülük Kurbanı | Döneminin en modern açık kaynak arayüzü | Miro şirketinin ticarileştirme çakallığı | Tarihe gömüldü | |
| İsyanın Çocuğu | Geniş topluluk, güçlü modül sistemi | Sürüm geçiş faciaları ve hantallık | Hâlâ var ama kan kaybediyor | |
| Mühendislik Kalesi | Kusursuz veri mimarisi, kurumsal güvenlik, API | Dik öğrenme eğrisi, teknik uzmanlık şart | Büyük kurumların ve devlerin tercihi | |
| Halkın Hükümdarı | 5 dakikada kurulum, devasa tema/eklenti havuzu | Eklenti şişkinliği, güvenlik zaafları, hantallaşma | Web'in %43'ünü yöneten mutlak dev |
Bugün geriye dönüp baktığımızda; Miro şirketinin açgözlülüğü olmasaydı belki de Joomla hiç doğmayacaktı. Drupal son kullanıcıya biraz daha merhametli yaklaşsaydı belki de WordPress bu kadar rakipsiz kalmayacaktı.
Web dünyası böyledir: En iyi kodlar değil, insanların hayatını en çok kolaylaştıranlar tarihi yazar!