Video: @tarikguney bu topluluğun amacını açıklıyor.
Yazılımı sadece kod yazmak mantığından çıkarıp, onu doğru bir şekilde yeniden anlamak, kavramları daha derinlemesine sorgulamak, ve var olan kavramları yeniden var etmek için kuruldu gelis{tr}.io
.
Amaç, her şeyin açık kaynak olması. Düşüncelerin, yazıların, isteklerin, kavramların... her şeyin kolektif akıl ile yeniden var edilmesi. Var ederken yeniden anlamak, yeniden tasarlamak, ve daha kaliteli bir mühendis olmak için daha derinlemesine düşünmek.
Hayır, burasının amacı sıradan bir topluluk olmak değil. Google'dan rahatlıkla bulabileceğiniz soruların cevapları olmayacak burada. Burası anlık sorunların geçici cevaplarının üretildiği bir yer de değil. Burası, gelişirken geliştiğiniz bir yer. Burası, öğrenirken nasıl öğrenmeniz gerektiğini öğrendiğiniz bir yer. Burası, yazılımcıların sıradan kodlamanın ötesine geçtikleri, düşüncelerindeki derinlik ile başka insanların göremedikleri adımları çok daha önceden görebilmenizi sağlamak için kurulmuş bir yer. Amacı çok insana ulaşmak ve rakamların hazzında hedefini unutan bir topluluk kurmak değil. Tam aksine, katılan herkesi daha kaliteli bir mühendis yapmayı hedefleyen bir yer olmak.
- Herkesin çalışmayı arzuladığı mühendisleri geliştirmek.
- Parçası olmaktan gurur duyacağınız, parçası olduktan sonra da yazılımın felsefesinde yaptığı fikirsel geliştirmeler ve sorgulamalar ile insanların yazılıma karşı bakışını etkileyebileceğiniz bir yer olmayı hedefliyor burası.
Açık kaynak kod ve kolektif olmanın mantığı budur. Organizasyon içinde ulaşılabilir her içerik herkesin pull request'ler göndermelerine açıktır. Dolayısıyla, burası ortak bir emeğin sonucudur.
Bir varlığı anlaşılır kılan, tanımlanmış sınırlar içinde hareket etmesidir. Onda tesadüfleri değil, tasarımları görürsünüz. Ona baktığınızda bir düşüncenin eseri olduğu açıktır. Gereksiz parçaları yoktur. Her şeyi bir amaç ile var olmuştur ve bir amaç uğrunda varlığına devam eder. Daha fazla bir şey eklenemediğinde değil, bir şeyler çıkaramadığınızda tamam olmuştur. İşte kalite bu anlaşılırlık içinde var olmaya başlar. İşte bu anlayış gelis{tr}.io topluluğunu var eden şeyin kendisidir.
Bu anlayış ile içeriklerin tümü üretilmelidir. Yazılan yazılar, kodlar, sorular, düşünceler... hepsi aşağıdaki kriteleri sağlamalıdır:
- Basitlik: Hiç bir içerik ihtiyacından fazlasına sahip olmamalıdır.
- Doğruluk: Kullanılan ifadeler genel doğrular ile çelişmemeli ve insanların yanlış şekilde yönlendirilmesine izin verilmemelidir.
- Derinlik: Her şey üzerinde kafa yorulmuş bir emeğin karşılığı olmalıdır. İçerikler basit çeviriler değil, bir tecrübenin, bir zihinsel sancının sonucu olmalıdır.
- Aydınlatıcılık: Bir içerik, kendisini tüketenlere farklı bir bakış açısı katacak şekilde tasarlanmalı ve bilinenleri tekrar etmek yerine, bilinenlere yeni bir açı katmalı ya da yeni şeyler üretmelidir.
- Emeğe Saygılı: Herkesin emeğine saygılı olunmalı ve kullanılan materyaller mümkün mertebe referans gösterilmelidir. Bu aynı zamanda, insanların okudukları içeriklerin kaynaklarını kendileri görme şansını elde etmeleri için önemlidir.
- Kolektif: İçerikler başka insanların katkılarına açık olmalıdır.
İnsanların geliştiklerini görmek ve bunu teşvik amacı ile herkesin grup içinde bir seviyesi olmalıdır. Herkes aynı olmadığı gibi, herkesi aynı seviyede görmek ise hem emeğe haksızlık hem de insanların motivasyonunu elleriden almak olacaktır. Bu durum insanların birbirlerine karşı üstünlük taslaması ve başkalarının fikirlerini bastırması için değil, birbirlerinin bilgilerine karşı duyacakları güven için önemli bir kriter olması açısından doğru olandır. Amacı yazılım olan bir toplulukta, kullanılacak unvanlarda piyasada kullanılanlara benzer olacaktır:
- Principal Software Engineer: Yazılımın ötesine geçmiş, felsefinde derinleşmiş, ve fikirler üzerinde hakimiyet kuranların grubu. Burada hava çok soğuk, düşünceler ise uçurum kadar derindir. İkliminde herkes yaşayamaz. Olmanız gereken grup burasıdır.
- Senior Software Engineer: Kullandığı teknolojiler üzerinde ciddi bir birikim sahibi ve konusunda otoritelerin grubu.
- Intermediate Software Engineer: Piyasada bir kaç senedir çalışan ve konusunda otorite olmasa bile birikim sahibi olanların grubu.
- Junior Software Engineer: Genelde yeni mezunların başladıkları yer. Öğrenmeye aç ve hırslıdırlar.
İlk katılanlar otomatik olarak yeni üyeler grubuna dahil edileceklerdir. https://github.com/orgs/gelis-tr-io/teams/new-members. Principal Software Engineer'lar dışında bulunan gruplar için, seçmeler genelde katılımcıların bilgi birikimlerine, çalıştıkları şirketlerde ki pozisyonlarına, ve katkılarına göre belirlenecektir. Principal Software Engineer için alımlar için kriterler zaman içinde belirlenmeye başlanacak.
Github, düşünülenin aksine, bir topluluk kurmak için her şeye fazlasıyla sahip. Yanardönerli websitelerinin sahip olmayacağı şey: insanların ortak şekilde içerik üretmesi. Mesela, paylaşılan bir köşe yazısı üzerinde başkalarının düzeltmeleri ve geliştirmeleri en fazla yorum şeklinde eklenebiliyor ve zamanla içerisinde kaybolup gidiyor. Ama burada bu farklı. İnsanlar pull request'ler oluşturmak sureti ile istedikleri her içeriği kolayca düzeltebiliyor ve geliştirebiliyorlar. İşte açık kaynak olmak mantığı budur. Bizler yazılımcıyız, haber sitelerinde çalışan köşe yazarları değil. Fikirlerimiz ortak aklın gücü ile gelişebilmeli. Bunun olması için ise, insanların fikirlerinize bir araç yardımı ile katkıda bulunabilmeliler.
Github aynı zamanda tarihsel değişimlerinde saklandığı bir yer. Değişim süreçlerini anlamak bir şeyin nasıl geliştiği, nasıl ortaya çıktığını, ve nasıl geliştirebileceğini görmek için önemli.
İçerikleri istediğiniz yere indirmek sureti ile, istediğiniz araç ve ortamda katkılarınızı yapabilirsiniz. Her ne kadar git
bilmeniz çok önemli ise de, bilmiyorsanız bile katkılarınızı yapabilirsiniz.
Yazılımcılar için üzerinde aksiyon alınması gereken her şey bir sorundur. O zaman burayı kullanabilirsiniz https://github.com/gelis-tr-io/destek/issues