Skip to content

Instantly share code, notes, and snippets.

@omerayyildiz
Last active November 28, 2020 12:04
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save omerayyildiz/9778c411788535b67c4a5bd816fa7d98 to your computer and use it in GitHub Desktop.
Save omerayyildiz/9778c411788535b67c4a5bd816fa7d98 to your computer and use it in GitHub Desktop.
SDT Sunucu Dili Ve Edebiyatı 101

Nasıl Akıllıca Soru Sorulur

Hangi kanala soru soracağınıza iyi karar verin

Sorunuzu nereye soracağınıza iyi karar verin. Şayet aşağıdakileri yaparsanız, dikkate alınmayabilir veya bir zavallı durumuna düşebilirsiniz:

  • Sorunuzu, konu ile alakasız bir kanala göndermek
  • Çok fazla kanala aynı sorudan birçok kere sormak
  • Tanımadığınız veya sizin sorununuzu çözmekle mükellef olmayan birilerine özel ileti göndermek

Üstatlar, kendi iletişim kanallarının allak bullak olmasını önlemek için, konu dışı soruları soranlara hiddetlenirler/köpürürler. Bunun başınıza gelmesini istemezsiniz.

Unutmayın ki tanımadığınız bir kişi ya da kanala bir ileti göndermek her zaman için riskli bir iştir. Örneğin; bilgilendirici bir web sayfasının yazarının sizin ücretsiz kişisel danışmanınız olmayı istemesini beklemeyin. Sorunuzun iyi karşılanacağını yönünde iyimser fikirlerle hareket etmeyin. Emin değilseniz göndermekten tamamen vazgeçin.

Mümkün olan bütün yardım kanallarını birden kullanmayın. Bu bağırmak olarak algılanır ve insanları rahatsız eder.

Genel olarak, konu ile alakalı iyi seçilmiş bir genel kanala gönderilecek bir soru, özel bir tanesine gönderilmiş aynı sorudan daha iyi cevaplar almaya adaydır. Bunun çeşitli sebepleri vardır. Bunlardan biri basitçe, cevap verebilecek potansiyel kişi sayısıdır. Diğeri topluluğun boyutudur; üstatlar küçük bir grup yerine geneli eğitecek soruları tercih ederler.

Yetenekli üstatların ve yazılım geliştiricilerin normaldan çok fazla hatalı/yanlış yönlendirilmiş iletiler aldığını unutmayın. Bu zararlı akıntıya katkıda bulunarak, insanları yaptıkları iyiliklerden dolayı pişman etmeyin, bardağı taşıran damla olmayın. Sizce bir mesaj önemli olmayabilir ama binlercesi bir araya gelirse çığ oluşabilir.

Anlamlı ve duruma uygun konu başlıkları / içerik kullanın

"Lütfen bana yardım edin" gibisinden saçmalıklar ile cümleye başlamayın. Acınızın ne kadar büyük olduğunu anlatarak bizi etkilemeye çalışmayın. Bunun yerine sorununuzu tanımlayın

Aptalca

Lütfen yardım edin! Cpython derlenmiyor

Zekice

Python'un 3.8 versiyonunu Ubuntu makinemde derlemeye çalışıyorum ve aldığım hata Source.obj : error LNK2001: unresolved external symbol __imp__Py_Initialize...

Açık, dilbilgisi kurallarına uygun ve sözdizimlerine dikkate ederek yazın

Deneyimlerimiz sonucu ilgisiz ve dağınık kişilerin, genellikle, düşünme ve kodlama işlerinde de ilgisiz ve baştan savma davrandıklarını öğrendik. Bu tür insanların sorularına cevap vermenin bir ödülü yoktur. Bu nedenle zamanımızı başka yerlerde harcamayı tercih ederiz.

Bu nedenle sorunuzu açıkca ve düzgün bir biçimde ifade etmeniz çok önemlidir. Şayet bunu yapmaya niyetiniz yoksa, bizden sizin sorununuza eğilmemizi beklemeyin. Kullandığınız dili "parlatmak" için biraz çaba harcayın. Çok resmi ve katı olmak zorunda değilsiniz. Aslında üstat kültürü; esprili, bilgilendirici ve argo yapıya değer verir. Fakat bunlar tam olmalıdır. Düşündüğünüze ve dikkatinizi bir şeylere yoğunlaştırdığınıza dair izler taşımalıdır.

Sözdizimleri, noktalama işaretleri ve büyük-küçük harf kullanımdaki doğruluklar önemlidir. "yanlız" değil "yalnız", "yada" değil "ya da", "tabi ki" değil "tabii ki"... Her şeyi BÜYÜK HARFLER İLE YAZMAYIN! Büyük harfler bağırmak anlamına gelir ve pek hoş karşılanmazlar. (Tamamen küçük harflerle yazmak biraz daha az can sıkıcıdır çünkü onların da okunmaları zordur)

Daha genel olarak eğer eğitimini tamamlamamış biri gibi yazarsanız, muhtemelen kimse sizi ciddiye almaz. Bunun olmaması için anında mesajlaşma kısaltmalarını kullanmayın. Bir "alemin en bitirim netvörkcüsü" gibi yazmak ise ölüm öpücüğünü garanti eder ve büyük bir sessizlik ile ödüllendirilirsiniz.

Sorununuz hakkında tam ve aydınlatıcı iletiler yazın

  • Sorununuz veya yazılım hataları için bulgularınızı dikkatli ve ayrıntılı olarak tanımlayın.

  • Sorunun meydana geldiği ortamı tanımlayın (ne tür bir makina, hangi işletim sistemi, hangi uygulama, vs.). Kullandığınız dağıtımı ve sürümünü belirtin

  • Soruyu sormadan önce yaptığınız araştırma ve incelemeleri belirtin.

  • Sorunu çözmek amacı ile uyguladığınız basamakları tanımlayın.

  • Sorun ortaya çıkmadan önceki, muhtemel yazılım ve donanım değişikliklerini bildirin.

Problemin belirtilerini tanımlayın, kendi tahminleriniz değil

Sorunun nelerden kaynaklandığını düşündüğünüzü söylemek, üstatlara yardımcı olmaz. (Madem ki sorunun kaynağını biliyorsunuz, o halde kendi başınıza çözümü de bulabilirsiniz, değil mi?) Bu nedenle, teorileriniz yerine, problemin belirtilerini söyleyin ve üstatların yorum ve teşhis yapmasına izin verin. Eğer tahmininizi söylemenin önemli olduğunu hissediyorsanız, onu açıkça dile getirin ve bu çözümün neden işe yaramadığını açıklayın.

Amacınızı belirtin, yaptıklarınız değil

Şayet derdiniz bir şeyin nasıl yapılacağını bulmak ise (hata raporlamasının tam tersi bir davranışla) amacınızı belirtmekle işe başlayın. Daha sonra tıkandığınız noktaya giden adımları tarif edersiniz.

Teknik yardıma ihtiyaç duyan kişiler, genellikle, büyük bir amaça sahip olan ve gittikleri yolun doğru olduğunu düşünüp oraya saplanmış kişilerdir. Onlar yaptıkları basamakları anlatmakla işe başlarlar ama gittikleri yolun yanlış olabileceğini hiç düşünmezler. Bu yeteneği kazanmak epeyce çaba gerektirir.

Aptalca

Python'da bir listenin tüm indexlerini alamıyorum

Zekice

Python'da bir listeyi index-value şeklinde bir dict e dönüştürmek istiyorum. Index için her döngüde değişkeni 1 artırıyorum ama kod çok karışıyor.

İkinci soru daha iyi sorulmuş bir sorudur. Muhtemelen daha iyi bir yol tavsiyesi alacaktır. (enumerate() kullanmak gibi )

İnsanlardan özel mesajla cevap vermelerini istemeyin

Üstatlar sorun çözmenin kamusal bir olay olduğuna inanırlar. Genele sorulan soruya verilen ilk cevabın yanlış veya yetersiz olduğunu anlamak ve doğrusunu belirtmek daha uygun bir davranış olarak kabul edilir. Ayrıca soruların genele sorulup, genelden cevap verilmesi üstatların bilgi ve becerilerini göstermelerinin ve hak ettikleri ödülü almalarının tek yoludur. Eşitler arasındaki saygınlığın artması üstatların tek kazancıdır.

Cevabı özel mesajla istediğinizde hem sürece hem de ödüle engel olmuş olursunuz. Bunu asla yapmayın. Cevabı özel mesajla vermek yanıtlayanın tercihidir. Eğer böyle birşey yaparsa bunun nedeni büyük olasılıkla sorunun cevabının başkalarının ilgisini çekmeyecek kadar açık olduğunu düşünmesidir.

Kod hakkında soru sorarken

Başkalarından ne tür bir problemi aradıkları hakkında bir ipucu vermeden, kodunuzdaki hataları ayıklamalarını istemeyin. Yüzlerce satır kod gönderip sadece "çalışmıyor" derseniz görmezden gelinirsiniz. On satır kod gönderip "7. satırdan sonra görmeyi bekliyordum ama onun yerine oldu" demeniz cevap alma ihtimalinizi arttırır.

Eğer sadece kodun gözden geçirilmesini istiyorsanız, bunu başlangıçta söyleyin ve hangi bölümlerin özellikle gözden geçirilmesini istediğinizi ve bunun nedenini belirtin.

Ödevlerinizi soru olarak göndermeyin

Üstatlar, ev ödevi sorularını tespit etmekte oldukça iyidirler. Pek çoğumuz bu soruları kendimiz çözdük. Bu sorular sizin çözmeniz için verilmiştir. Bu soruları çözerek deneyim kazanmanız amaçlanmaktadır. İpucu istemek kabul edilebilir ama bütün çözümü asla istemeyin.

İletinizi sizin için çok acil olsa bile, çok acil diye işaretlemeyin

Bu sizin sorununuz, bizim değil. Çok acil olduğunu iddia eden sorular, muhtemelen karşı tepki doğurur. Bu noktada bir yarım istisna olabilir. Çok önemli ve büyük bir yerde, bu üstatların ilgisini çekebilir, kullandığınız uygulamayla ilgili bir sorununuz varsa, zaman kısıtlaması içindeyseniz ve durumu nazikçe anlatırsanız, insanlar sizin sorununuzla daha çabuk ilgilenebilirler.

Nezaket asla yaralamaz ve bazen oldukça yararlıdır

Kibar olun. "Lütfen", "Dikkatiniz için teşekkürler" veya "Yardımlarınız için sağolun" gibi cümleler kurun. İnsanların, size yardım etmek için harcadıkları zamana değer verdiğinizi açıkça gösterin.

SDT-Faruk Oruç

@nikoplotis
Copy link

Çok iyi bir yazı. Welcome bölümüme eklenmeli bence.

@omerayyildiz
Copy link
Author

omerayyildiz commented Jun 12, 2020

Çok iyi bir yazı. Welcome bölümüme eklenmeli bence.

Welcome değil de özelden mesaj olarak atıyor bot.

@malikmasis
Copy link

Emeği geçenlerin eline sağlık çok güzel olmuş.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment