|
Vesaire Nickli Üyeden Alıntı
|
@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] gibi bir ustadın bu listede olmaması garip gerçi buradan bir yetkili ile ters düşmüş idi ondan olsa gerek (; sence de öyle değilmi @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
Forumda aktiflik durumuna göre diyorum @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] |
Soru direk olarak bana yöneltildiği için "şahsi" görüşlerimi yazayım (tabi benim gördüğüm yanlış veya yanıltıcı olabilir, sonuçta şahsi yorumum)
* srcmaster'ın uzun zamandır (esokey, java kapatılması vs. ardından bilhassa [2015~günümüz]) yeni birşeyine rastlamadım (kaynak kodlu veya kodsuz) Belki vardır, sadece ben denk gelmedim.
* Ama yine de, zamanında yaptığı çalışmalardan ötürü en azından (potansiyel olarak arkaplanda yardım ediyorsa sorunu olan kişilere veya tanıdıklara); eklenebilirdi. Çünkü o durumda, durumu benle benzer olmuş oluyor.
* Bu mantıkla, ben de bu listede olmayabilirim (dediğim gibi, moderatör arkadaşlar bu konuyu tekrar değerlendirebilir), zamanım 3 4 senedir baya bir kısıtlı idi; en az 1 2 sene kadar daha kısıtlı olacağa benziyor çünkü.
|
CoCoRiCo Nickli Üyeden Alıntı
|
Bu tip anketker sonuçları IF'da daima duygusaldır, dolayısıyla buradaki seçimler
iyinin kim olduğuna karar veremez. İyi derken de neyin kast
edildiğini anlamak lazım. Bence bu gibi anketleri muhatapları olan yani kod yazanlar oylamalı.
KOD yazmaktan hiç anlamayan bir şekilde kod yazanlardan yardım almış kişiler "haa bu bana çok yardım etti en iyisi bu" diyerek seçerse bu gerçekten yardım
severlik olabilir ancak bu kişiyi en iyisi yapmaz.
Anketin sonucu ne olursa olsun.. Bence en iyisi bu işe gönül vermiş öğrenmiş olan herkestir.
|
Burada "Coder" ve "en iyi" terimleri geçtiği için konunun düşünülmesi gerekir zaten. (sonuçta ben bu ankete eğlence olarak bakıyorum, yoksa yeri geliyor bilgisi az olan [görünürde] bir adamın, bilgili görünenden daha iyi işler çıkarttığı; yada; sırf kullanıcıya daha hitap eden içerikleri görsellerle zenginleştirdiği için, yarım yamalak ve hata veren kodları ile, diğer kişiden daha iyi işler çıkarttığı algısı olabiliyor)
*****************
Kendi yorumlarım;
Coder kelimesini bir ara açıklamıştım IF'de, burda kısaca Coder denilen kişinin olmazsa olmazlarına değineyim;
* Coder olarak lanse edilen adam, yazdığı kodların büyük bir kısmını yeniden yazmaya eğilimlidir. Çünkü kendi düşüncesine göre, daha hızlı daha verimli çalışabilecek bir algoritma [yerine göre] o projeyi bir tık ileri atacaktır.
* Coder olmayan adam ise, yazar geçer, hatta sonrasında hata verdiğinde dahi, işi cron a bağlayıp cronlarla işi çözmeye çalışır (veya autorestart gibi içeriklerle); hatta bu işi başka seviyeye taşıyıp, hatasını başka birine mal eder (burada örnekler vermek isterdim ama, kimseyle tartışmak istemiyorum, kimse de üzerine alınmasın)
* Coder adam "aha yaptım oldu"larla kodlarına yön vermez, "evet yaptım yaptım ama, bunu nasıl daha iyi yapabilirim"ler ile yön verir. Ve bunu yaparken çoğunlukla, o proje, hatalı çalıştığı için değildir
* Canı sıkılır, algoritmalarını parça parça hız testlerine sokar. Daha hızlandırabileceğini düşündüğü kodlar ile, benchmark testleri yapar. Bunu yaparken;
--- işlemcisine göndereceği yük
--- kaç milisaniyede saniyede (ms = 1/1000sn), hatta çok derinlerde bir kod ise (saniyede belki binlerce, 10binlerce, hatta yeri gelip yüzbinlerce kez, o bloğun çalıştırılması), kaç mikro saniyede (saniyenin milyonda biri) düzeylerinde testler yapıp bu testlerde hangi algoritmanın en hızlı çalışacağı (ana yapının daha hızlı çalışması)
--- Yukarıdaki işlemleri yaparken, projeye bağlı olarak, anlık kaç MB/GB ram harcayacağı (attığı taşın ürküttüğü kurbağaya değmeyeceği)
--- Hangi işletim sistemlerinde bu kod bloğunun çalışabileceği (ileride windowsda da bu algoritmayı kullanmak istiyorsa, windows uyarlı veya windows a göre de kod yazması mesela)
--- Yukarıda bahsettiklerimin küçük ölçek, orta ölçek veya büyük ölçekli veri toplulukları ile ne kadar hızlı çalışacağı (mesela ram dayalı bir döngümü çalıştırmalı, yoksa stack tabanlı mı, fonksiyon yönlenmelerimi, iç içe döngüler mi vs)
Not; Yukarıda bahsettiğim nanosaniyelere inme olayı abartı mı geldi; buna basit bir örnek vereyim (yaptığım işlerimle alakalı);
bir socket yapısı yazıyorum, giriş emulasyonu yapıyorum; diyorum ki, saniyede 1000 kişi bu yazdığım kodları icra ettiğim anda bağlanırsa, ortalama olarak, giriş kısmında ne kadar zaman kaybediyorum...
En son geldiğim aşamada mesela, her giriş için ortalama secure bir bağlantı için 0.3ms ila 0.9ms (zaman kaybediyordum o an bulunduğum bir makinada, başka bir makinada 0.2~0.7ms arasında değişirken, başka makinada 1.3~1.4ms lere kadar çıktığını gözlemledim); aralık, birazda, güvenli bağlantı kütüphanelerini derleme methodlarım ile alakalıydı. Secure bağlantı açık değilken bu ortalama değer, 0.07ms lere kadar iniyordu (0.07 ms=7 mikro saniye). Bu değerler işlemcinin hızı, ve bilhassa kabiliyetine göre, işletim sisteminin o an ne işler yaptığı ve/veya ne kadar kastığı ile DE alakalı tabi.
Not : Mesela Son dönemlerde Unreal için yazdığım kodlarda bilhassa, birden fazla algoritma ile, o anki gidişhat için birden fazla algoritma yazdığım oluyor (sonucu bilsem de, gelen veriler ve unrealdan gelen fonksiyonlar ve bu fonksiyonlara gönderimlerimi de test ettiğim "TAM DA O KODUN KALBİ" kısımlarında bilhassa.)
Not : Sadece kendi projelerim için de konuşmadım, unreal a kod yazılıyor ama, ne kadar verimli kodlar yazılıyor; bu kodlar hafızada çalıştırılırken, RAM külfeti, işlemci külfeti hiç hesap ediliyor mu? "Ahanda çalışıyor" demek yetmiyor... Sonucu, sürekli hata veren, istendiği gibi çalışmayan, ve çok fazla kullanıcılı sunucularda yanlış adreslere yanlış verilerin yazılıp, kodların düzgün olarak çalışmaması. Veya hata vermesi (evet c/c++ ın dezavantajlarından biri, vefasız bir dil olması, en ufak hatada, gemileri yakıveriyor)
NOT : adam tutmuş mesela "char *" tanımlamış, bunu unrealdan gelen başka bir pointer a eşitlemiş, bu bir, global değişken, sonra tutmuş, 10 dk sonra bu pointera erişmeye çalışıyor. Kusura bakma da, sen orada NULL olup olmadığına bile baksan o ircd olası bir hata riski taşıyor. Ki sonradan kesin hata veriyor
Not : Konu Madem IRC Coder, bu kişilere şu soruda sorumlası lazım; "unreal tamam; bahamut, ptlink (eski DE OLSA), InspIRCd, hybrid (unreal ında üzerine yazıldığı sistem), df (bahamutun üzerine yazıldığı sistem), ratbox (son zamanlarda geliştiriliyordu) daha aklıma gelmeyen, klasik yapıda ve c/c++ dilleri ile yazılmış bir çok ircd var... Ha keza, ircservices, anope, sirv (2.x 3.x), ptlinkin kendi servisleri
vb. 1 2 servis harici, kaç servis incelemişler oturup?" hani "Coder" ya mesela, bunların kaynak kodlarını açıp, "ul.n bu adamlar ne yapmış" sorusunu hiç kendine sorup, üzerine gidip "ha tamam bunu yapmış, bunu böyle kullanmış" diyip, yeni bilgiler öğrenmiş mi (tabanı konusunda)...
Not : Şu cümleyi kurayim, "InspIRCd" DE sürekli geliştirilen bir ircd, bunun unreal'a üstünlüklerini, unreal ında buna üstünlüklerini biliyormu "IRC Coder" sıfatı alabilecek bu kişi (özellik olarak söylemiyorum, InspIRCd ye geçerse, makinaya ne kadar fazla külfeti olacak bu ircd nin, artıları neler eksileri neler ve asıl önemli soru "NEDEN"); burada InspIRCd örneğini verme nedenim, bugün, unreal sonrasında geçebileceğim en iyi ircd olarak IncpIRCd yi görüyorum (şahsi fikrimdir). Nedenlerime değinmeyeceğim, değinsem de, çok aşırı detay, işin en temelindeki TCP/IP sonrasında bulunan (güvenli bağlantı var ise 6. ve 7. , yok ise 7. katmandaki paket alımından sonrasındaki "mantık" katmanlarında olan işlerden bahsediyorum. (OSI modellemesini araştırabilirsiniz)) kısımlara değinmesi gerekiyor. Ki değinen kaç kişi var
İşte yukarıda bahsettiğim hususları değerlendirirsek, bir kişinin "Coder sıfatını alabilmesi için" sadece "Yardım Ediyor" olması yetmiyor.
Hatta modül yapabilmesi DE yetmiyor tek başına...
Kısacası bana göre,; "IRC Coder" terimi yerine "IRC mevcut yazılım GELİŞTİRİCİSİ", "IRC yazılım yardımseveri", "IRC yazılım gönüllüsü", (biraz da abartarak) "Unreal MODÜL geliştiricisi" gibi kavramlara yönelmesi gerekir başlığın.
En Son Not #1 (
) : "IRC Coder" diyorsak bu adamların mantıken, IRCD ve servis DE yazabilecek seviyede olması gerekmez mi
sonuçta coder, "bu kodu nasıl yazarım" yerine, "bu kodu hangi şekilde yazsam" demesi gerekiyor.
En Son Not #2 : Yazdığım konu yanlış anlaşılmasın; Şimdiden böyle düşünecek arkadaşlara cevabımı vereyim; ben kendimi en iyi görmüyorum. Sadece Coder olarak görüyorum. Yukarıda yazdığım şey "bir kişinin bu sıfatı alıp/alamaması durumu idi"
iyi Çalışmalar...