Açık Kaynak ve BlockChain Dünyası

Blockchain! Çok duyar olduk bu kelimeyi. Faydaları, avantajları, sorunları derken biraz sıkıldık sanki? Herkes aynı şeyi ısıtıp ısıtıp anlatıyor. Blockchain 101! Yok mu 202 ya da 303? Biraz öz eleştiri yapacak olursak, sizce de teknoloji dedikodusunu yapmanın ötesine geçmenin, laf değil de icraat görmenin zamanı gelmedi mi? Elbette yeni bir teknolojiyi önce anlatıp bir kitle edinir, daha sonra o kitleyi eğitir ve ardından proje çıkarabilirsin. Fakat biz anlatma kısmına çok takıldık. O yüzden bu yazı biraz farklı olsun istiyorum. Blockchain’in faydaları veya kullanım alanları üzerine olmayacak mesela. Bu konuda çeşitli platformlarda layığı ile yazan, mevzuyu derinlemesine anlatan kişiler var zaten. Tekrar etmektense olaya farklı bir yerden bakmak gerek diye düşünüyorum.

Photo by "My Life Through A Lens" on Unsplash

Open Source Nedir?

Dilimize “açık kaynak” olarak çevrilen Open Source kavramı aslında adından da anlaşılacağı üzere kod kaynağının genele açık olduğu yazılım projeleri için kullanılır. Yani bir yazılım projesinin kaynak kodlarına herkes erişebiliyorsa bu proje Open Source bir projedir diyebiliriz. Bunun yazılımcılara sağladığı belli avantajlar var. Mesela başka yazılımcılar programınıza katkı sağlayabilir ve contributor olabilir. Yani siz bir uygulama yaptınız ve open source olarak paylaştınız. Tanımadığınız birisi gelip mevcut bug’ları düzeltip, çeşitli yamalar ekleyerek uygulamanızı bir üst seviyeye taşıyabilir. Aslında bu biraz bizim kültürümüzdeki imece mantığına benziyor. Open Source projelerin en bilinen örnekleri ise Linux, Open Office, GNU, Debian gibi yazılım projeleridir.

Github Nedir?

Github, özünde bir depolama alanıdır. Dünyanın herhangi bir yerindeki yazılımcılarla takım çalışması yapabileceğiniz, Git versiyon kontrol sistemine entegre bir şekilde çalışan ve geliştiricilerin mabedi diyebileceğimiz yerdir. Açık kaynaklı projeler başlatabileceğiniz gibi private projeler oluşturup sadece ekibinizin görüp katkıda bulunmasını da sağlayabiliyorsunuz. Yani bir nevi yazılım ekibinizi oluşturup, onları yönetip, sürecin analizini takip edebileceğiniz ortak bir çalışma ve depolama alanı diyebiliriz Github için.

İnternette işletim sisteminize göre onlarca kurulum ve kullanma kılavuzları bulmanız mümkün. Bunların en başında şüphesiz Github’ın kendi tutorial serisi olan GithubGuides geliyor ama İngilizce tabi tüm içerikler. Fakat dediğim gibi Türkçe veya İngilizce oldukça fazla yazılı veya görsel içerik bulmak oldukça kolay.

Photo by Maik Jonietz on Unsplash

Başlangıç için State of the Dapps

Eğer bir şeyler öğrenirken bir yandan da kim ne yapıyor, nasıl yapıyor, ben yapılan işin nasıl parçası olurum diye merak ediyorsan Github’da bulunan açık kaynaklı blockchain projelerine bakıp ilgini çeken proje ile başlaman yeterli. Projeye katkı sağlayabilirsin, işleyişini ve kullanılan teknolojilerini anlamaya çalışabilirsin ya da ilham alabilirsin… Elin kirlenmeden iş öğrenemezsin der eskiler, biraz elimizi kirletip işin ucundan tutmak lazım öğrenmek için. Ethereum, EOS veya POA ağında bulunan dapp’lere de doğrudan katkı sağlamak mümkün. State of the Dapps sitesinden bu projelerin listesine ve tüm detaylarına ulaşabilirsin. Ayrıca sitede, her proje kendi sayfasında sosyal medya ve Github hesaplarını da barındırıyor. Tek yapmamız gereken birini seçip bir yerden başlamak!

Örneğin, Ethereum platformu üzerinde geliştirilen Status uygulamasının sayfasına baktığınızda uygulamanın transaction sayılarını, aktif kullanıcı durumlarına, mainnet contract’larına ulaşabilirsiniz. Projenin Github sayfasına girip pinlenmiş depolardan birini seçip issues kısmına geldiğinizde karşınıza istemediğiniz kadar sorun çıkıyor. Açık kaynaklı projelerin güzel yanı da bu sanırım. Topluluk olmanın önemini gösteriyor. Bu dünyanın parçası olmaya oradaki onlarca soruna çözüm üreterek başlayabiliriz. Bir sonraki adımda yine Github’dan projeye çeşitli yama ve eklentiler gönderebiliriz.

Photo by Gilles Lambert on Unsplash

Türkiye’de blockchain alanında bir topluluk olma bilinci henüz yok. Bir çok kişi bunun farkında ve bundan şikayetçi. Oysa Ethereum’un arkasındaki topluluğu nasıl büyütüp verimli bir şekilde projelerine dahil edip kullandığını geçtiğimiz günlerde Devcon4’de görme fırsatım oldu. Benzer bir bilinci kendi içimizde oluşturmadığımız sürece markalaşabilen projeler çıkartmamız zor olacaktır. Bu yüzden başlangıç noktası olarak açık kaynak dünyasına giriş yapmak gerek diye düşünüyorum.

Bir topluluğun/ekibin parçası olmayı tecrübe edip özümsemediğimiz sürece aktif üreten bir topluluk olamayız. Devcon4’de katıldığımız her sunumun sonunda proje sahipleri Github vb hesaplarının linklerini ekrana yansıtıp dinleyicilerden projelerine aktif destek vermelerini ve projenin bir parçası olmasını istediler. Üstelik bu projeler şuan blockchain dünyasının en büyük dapp’leri diyebiliriz. Fakat benzer bir bakış açısını yerli girişimcilerimizin çoğunda göremedik henüz. İlerleyen zamanlarda umarım daha fazla açık kaynaklı blockchain projeleri çıkar içimizden ve hepimiz aktif bir şekilde bu projelerin gelişimine katkıda bulunuruz. Çünkü bir topluluk olmayı başaramadığımız sürece sadece yabancıların yaptığı işleri alkışlar dururuz…