Son zamanların yükselen trendi NoSQL konusunda Mehmet Emrah Özçelebi ile güzel bir söyleşi yaptık. NoSQL meraklıları için faydalı olacağını umuyorum.
Öncelikle genel bir yanılgıyı düzelteyim, ben bir mühendis değilim. Aslen eğitimim işletme üzerine. Gerçi veritabanı, programlama gibi dersleri okulda almama rağmen temel eğitimim işletmeciliktir. Bu veri analizi kısmı da sanırım oradan gelmekte. 2000 yılından beri aktif Linux kullanıcısı ve orta okulda edinme şansına sahip olduğum Commodore 64 üzerinde yazdığım kodları da sayarsak çok uzun zamandır da programcıyım diyebilirim. Profesyonel olarak çalışmaya ise bir Microsoft Eğitmeni olarak başladım ve daha sonra doğru yolu bulup özgür yazılıma geçtim :)
SPP aslen eski bir projenin adı idi. O zamanlar Solution Providing Partner (Çözüm Sunan Ortak) adı altında bir firma kurmayı düşünüyorduk ancak gerçekleşmedi. SPP42′nin SPP’si geçmiş projeden gelmektedir.
Peki 42? Hayır, Konya ile bir alakamız yok. Gerçi yazılım işi tutmaz ise belki etli ekmek satışına girebiliriz ama yine de 42′nin anlamı biraz (aslında oldukça) farklı.
Eğer Douglas Adams‘ın Otostopçunun Galaksi Rehberini okumuş iseniz, 42‘nin ne olduğunu da rahatlıkla tahmin edebilirsiniz. Hikayeye göre Derin Düşünce adında devasa bir bilgisayar yapılır ve ona nihai soru sorulur: “Hayatın, evrenin ve her şeyin cevabı nedir?” 7 buçuk milyon yıl sonra bilgisayar cevabı verir: “42″
Bu cevaptan memnun olunmaz doğal olarak ve bilgisayara cevabı iyice kontrol edip etmediği sorulunca, bilgisayar onlara: “Sanırım problem, açık olmak gerekirse, aslında ne sorduğunuzu tam olarak bilmiyordunuz” der.
SPP ve 42′yi de yan yana getirince, müşterilerimize hem problemi tanımlamasında hem de çözüm yaratılmasında fayda sağlamak amacımız ortaya çıkıyor diye düşünmekteyiz. SPP42 NoSQL ve özgür yazılımların kurumsal alanda kullanımı ile ilgili danışmanlık ve eğitim sağlayan bir firmadır. Bunlarla beraber yazılım geliştirme desteği ve danışmanlığı da sağlamaktayız.
10gen ile uzun bir birlikteliğimiz var ancak MongoDB konusundaki resmi ortaklık anlaşmamızı Haziran ayında duyurduk. Yine Haziran ayından itibaren Cloudera ile Hadoop konusunda ve Neo Technology ile de Neo4j konusunda ortaklıklarımız var. Bunların dışında SPP42 başarının paylaştıkça arttığına inanan bir firmadır. Bu sebeple Türkiye içerisinde de pek çok firma ile yakınlığımız bulunmakta. 4Primes bunlardan biri mesela. Çok kaliteli ve bilgili ancak küçük pek çok firma bulunmakta. Doğru birliktelikler ve başarının paylaşımı ile büyük ama hantal devlerden çok daha başarılı işler yapabileceğimizi göstermiş olduk ve bunun da böyle devam etmesini istiyoruz.
Aslında tamamen doğal olarak gelişti diyebilirim. Bizim için mutluluk veren yanı partnerlik tekliflerinin aslında karşı taraflardan gelmiş olmasıydı. Evet ilk tanışma adımlarını biz attık ancak bu fikre bizi yönelten karşı taraf oldu. Bu gelişimin başlangıcında kullandığımız ürünler ile ilgili olarak ilgili firmalar ile devamlı iletişim içerisinde olmamız da etkendir.
NoSQL tanımlarından benim en çok beğendiğim Not Only SQL'dir (sadece SQL değil). Bence sadece bu açılım bile NoSQL felsefesini anlatıyor. Biz üç farklı NoSQL çözümünün ortaklığını yapmaktayız. İlk bakışta üreticilerin istemeyeceği bir nokta gibi durmakta. Ancak hem 10gen, hem Neo Technology hem de Cloudera biliyor ki aslında birbirlerinin rakipleri değiller, birbirlerini tamamlamaktalar. Hatta bunlara ek olarak ilişkisel veritabanlarının kullanımını da biz hala desteklemekteyiz. Bu noktada aslında benim çok beğendiğim ve sıklıkla da tekrarladığım bir söz vardır. "Elinizdeki tek araç çekiç ise her şey çivi gibi görünür". Bu her alanda var. Bu yüzden "phpci" ya da ".netci" diye tabirler var. İyi bir geliştirici, dilin bir araç olduğunu ve projeye göre seçilmesi gerektiğini bilir. Aynı konu veri saklama sistemleri içinde geçerlidir. Bu bir NoSQL çözümü olabilir, ilişkisel veritabanı olabilir ya da ikisi birden olabilir. Her NoSQL ürünü bir sorunu çözmek için tasarlanmış. Bunu daha dokümantasyonlarını okumaya başlarken (rtfm rules!!!) anlıyorsunuz. Bu sebeple merak edip, araştırıp, öğrenmek gerekli.
NoSQL kalıcı. Buna şüphe yok. Facebook, Twitter, Foursquare gibi uygulamaları milyon dolar da harcasanız, en meşhur ilişkisel veritabanlarını da alsanız şu an olduğu gibi performanslı çalıştırmanız mümkün değil. Zaten mümkün olabilseydi bugün NoSQL diye bir olgudan bahsediyor olmazdık.
İlişkisel veritabanları, doğaları gereği şu an yaşadığımız problemlerin kaynağı olmaya başladılar. Yazılımı talep eden kişi problemlerini yazılımcıya aktarır. Bu problemleri yazılımcı görür ve bir çözüm üretir. Daha sonra bu çözümü uyguladığı sırada DBA denilen kişiler kendi çözümlerini uygulamaya başlarlar ve yazılımcıları zorlarlar. Ancak DBA esas müşteri ile görüşüp problemi anlayan kişi değildir. Bu durum malesef karşımıza çokça çıkmakta. Yani ilişkisel veritabanlarının katılığı, aslında problem çözmeye olan uzaklığı sebebi ile ortaya DBA denilen bir meslek çıkmıştır. DBA'ler kötüdür demiyorum. Zira bir DBA'in görevi de yazılımcının uygulanamayacak çözümü ilişkisel veritabanında uygulamasına engel olmaktır. Bu sebeple aslında sorun, bizi sabit kolon, satırlar ve foreign key'ler ile düşünmeye zorlayan ve bizi kutu kutu tablolar içine sıkıştıran ilişkisel veritabanlarında. Ancak artık işler değişmekte. Bu ilişkisel veritabanları için de aslında çok iyi bir nokta. İlişkisel veritabanlarının ortadan kalkması mümkün değil. Fakat güzel olan nokta, artık onların da kullanılması gerektiği yerde, gerektiği kadar kullanılması.
Türkiye NoSQL konusunda oldukça büyük bir potansiyele sahip. Canlı, büyüyen bir ekonomimiz var. Bunu da devamlı olarak teknoloji ile desteklemek zorundayız. Hiç beklemediğimiz yerlerden NoSQL kullanımı ile ilgili haberler alıyoruz ve bu bizi daha da sevindiriyor. Amacımız NoSQL'in doğru kullanımını duyurmak. Anlamsız lisans paralarının anlamsız çözümlere yatırılması yerine, daha verimli sistemlere kaydırılmasını sağlamaya çalışıyoruz. "Niye buna bu kadar para harcadınız?" diye sorulmayacak bir ilişkisel veritabanında yarım saatte cevap aldığınız sorguyu, beşte biri maliyetle MongoDB ile alabiliyorsanız, bir de üzerine daha da farklı sorular sorabilme yetisi kazanıyorsanız, lisans aldığınız veritabanına ancak "paramızla rezil oluyoruz" diyebilirsiniz. Türkiye'de bu şekilde paramızla rezil olma lüksümüz olmadığını düşünüyoruz.
Önce iş akademisyenler ile başlıyor. Kolaya kaçıp, sadece "ileri ileri" kurulan sistemler yerine, daha araştırmacı ve dünyada olan yenilikleri takip eden akademisyenler bu konuyu ileri götüreceklerdir. Bu arada tabii ki meraklı stajyerler ile karşılaşıyoruz ama hayatında hiç Linux kurmamış bilgisayar mühendisliği son sınıf öğrencileri bulunmakta. Java ya da Python kodlamamış daha da vahimi merak etmemiş bir ekip geliyor ne yazık ki. Bunun için de üniversitelerde yapılan etkinliklere katılmaya ve dünyadaki gelişmeleri anlatmaya çalışıyoruz. Bunun en sonuncusu Yeditepe Üniversitesi'nde Özgür Web Günleri'ndeki konuşmam oldu. Gerçekten de tahminimizin üzerinde bir katılım olmasına rağmen daha fazla öğrenci görmeyi umut ederdim.
Beklentilerimiz çok yüksek. Biz SPP42 olarak bu işe sadece ticari olarak bakmıyoruz. Bu topluluğun desteklenmesi ve bilgilerin paylaşılması gerektiğini düşünüyoruz. Bu sebeple de bu tür oluşumları desteklemek için elimizden geleni yapmaya çalışacağız. En büyük beklentimiz, NoSQL meraklılarını NoSQL guruları haline getirecek ivmeyi vermek. Bu da ancak tecrübelerin paylaşılması ile olabilir. Bu konuda da esas itici gücün 4Primes olduğunu da belirtmek isterim.
SPP42 olarak paylaşıma her zaman açığız. Herkesi topluluk toplantılarına bekliyoruz. Bizlerin de bu topluluktan çok şey öğreneceğine eminim.
Follow me on Twitter