it-swarm.dev

İstisnai programcıları gerçekten iyi programcılardan ayıran nedir?

Onların kim olduğunu biliyorsun. Bunlar programlamanın rock yıldızlarıdır:

  • 10X daha hızlı kod yazarlar.

  • Kodları sadece çalışır.

  • Sadece ana dillerini içeride ve dışarıda değil, aynı zamanda kaputun altında nasıl çalıştığını da biliyorlar.

  • Siz sormadan önce herhangi bir sorunun cevabını biliyorlar.

  • Birkaçı hepimizin kullandığı programlama ilkelerini icat etti.

  • Ve aynı zamanda karakteristik olmayan alçakgönüllü olma eğilimindedirler.

Bu millet hakkında ne var? Düşünme süreçlerinde, ortalamanın üstünde programcıdan temel olarak farklı bir şey var mı? Yoksa çok çalışan çok yetenekli insanlar mı?

Başka bir deyişle: Nasıl onlar gibi olabilirim? O kadar iyi olmayı öğrenmem gerektiğini düşündüğümü biliyorum, ama bunu öğrenmek için önümüzdeki on yıl beni alacak gibi görünüyor ve sonra bilgim eski olacak.

59
Robert Harvey
  • Humble: Olağanüstü bir programcı asla kodlarının en iyisi olduğunu iddia etmeyecektir, aslında her zaman daha iyi bir yol arayacaklardır (Her fırsatta.) .

  • Hasta: İstisnai bir programcının sınırsız sabrı olacaktır (Bu, bir problem üzerinde günlerini harcayacakları anlamına gelmez. Bakınız: Sorun Giderici) .

  • Sorun Giderici: İstisnai bir programcı, bir sorunu ortalama programlayıcınız için günler sürebilen dakikalar içinde çözebilir.

  • Meraklı: İstisnai bir programcı, bir şeyin neden oluştuğunu anlamaya çalışırken direnemeyecektir.

  • Mühendis: İstisnai bir programcı, çerçevelerin karışıklığını birleştirmek yerine sistemleri tasarlayacak (Bu, çerçeveleri kullanmayacakları anlamına gelmez.) .

88
ChaosPandion

Son mermi noktanızda bir çok şeye çarptınız:

Diyerek şöyle devam etti: "Ve aynı zamanda karakteristik olmayan alçakgönüllü olma eğilimindedirler."

Bence bu alçakgönüllülüğün bir kombinasyonu - sadece dışarıda değil aynı zamanda zihinlerinin içinde. Yanlış olmayı kabul ederler, bir hata yaparlar ve hayal kırıklığından çok çabuk dönerler. Birçok programcı bir şey deneyecek, başarısız olacak ve daha sonra çok hızlı bir şekilde çok iyi bir şekilde işlenecek, iyi kod yazmaya anathema olan bir durum. Mükemmel olmadığınızı ve sık sık vidalayacağınızı (sık sık!) Kabul etmelisiniz ve yapabileceğiniz en iyi şey, vidaladığınızda hızlı bir şekilde nasıl iyileşeceğinizi öğrenmektir. Bu mütevazı bir güven, "Ben berbat edeceğimi biliyorum, ama aynı zamanda denemeye devam edersem, sonunda oraya gideceğim" gibi.

NLP'de "Hata yok, sadece geri bildirim var." Bir rock yıldızı programcısı olmak için bence bunu benimsemelisin. Kodlayamadığınız hiçbir şey yok. İlk başta yavaş olabilirsiniz, ancak başarısız olmaya çalıştığınızda veya bir şeyleri batırdığınızda durmaya çalışmayı reddederseniz, teslim edersiniz. Ve bu süreçte en iyilerden biri olmak için ihtiyacınız olan tüm zihinsel püf noktalarını öğreneceksiniz.

Tavsiye, elbette, sadece kaynağı kadar iyidir, bu yüzden ... hepsi sadece benim görüşüm.

28
Pax Noctis

Kodlarını çok önemsiyorlar.

25
JaredPar

Şahsen, tanıdığım/tanıdığım en iyi programcılar temelleri anladılar ve herhangi bir dilde uzman DEĞİLDİR. Sadece hemen her konuda yeterli deneyime sahiptiler. Kurallı "Tüm Ticaretlerin Jack'i."

Temel bilimden daha fazlasıdır, fiili operasyonlarda deneyimde önemli bir değer vardır. Örnekler, Unix Felsefesini anlayan ve böylece bilinmeyen sorunları verilen çeşitli araçlarla çözebilir (IOW nereye bakacaklarını biliyorlardı) Java dişli ve paralel bir çözümü kodlayan uzmandan çok daha fazla).

Olağanüstü programcılar da onlardan önce gelenlere saygı duyuyorlar. SQL'i resmi bir API olarak gördüklerinde ilişkisel veri modellerinden nefret etmezler veya matematikte FORTRAN'da engellemezler. Onlar OO her şeyin sonu değildir ve her şeyden önce programlamanın bir bilim değil, bir sanat olduğunu anlarlar.

15
Jé Queue

İlk başladığımda, programlama açısından yaptığı her şeyde kesinlikle mükemmel olduğunu düşündüğüm bu adamla çalışıyordum. Muhtemelen hala, ama şimdi SE Asya'da bir şirketin direktörü olmaya geçti.

Her neyse, işleri basit tuttu ve basit şeyler işe yarıyor. Asla gerekenden daha fazla kod satırı yazmak istemedi, yaptığı her şey. Bir sene boyunca sadece seviyesine yaklaşmak için yetişmeye çalışıyordum. Diğer bir şey ise, zamandır. O zamanlar yaşadığımdan çok daha uzun süredir bir şeyler yapıyordu ve tüm soruları (görünüşte) bilinceye kadar bu kesin soruları tekrar tekrar sorma şansına sahipti.

Soru sormaktan da korkmadı. Bence bu en büyük şey.

11
user2358

Programcı Yetkinlik Matrisi

Programlama konularındaki seviyenizi belirlemenize yardımcı olacak birçok konu.

10
Maniero

Bu sorunun cevabını Texas Hold'em poker hakkında bir kitapta öğrendim, ancak tüm sinir bozucu girişimler için geçerlidir. En iyi kodlayıcılar asla eğilmez. Eğim, bir şeyin beklediğiniz gibi çalışmadığı ve genel uygulamada üstel hatalar oluşturacak şekilde yanıt verdiğiniz zamandır. Turnuva pokerinde kötü bahisler yapmanıza ve elenmenize neden olur.

Programlamada eğim, saçınızı çekmenize ve yalnızca uygulamanızın belirli örneklerinde çalışan gülünç kod yamaları yazmanıza neden olur. Tilt, programcıların projenin ihtiyaçlarını bir bütün olarak görmezden gelmelerine neden olur ve hemen problemi çözmek için anında memnuniyet kazanır. Çoğu zaman sorun bugün çözülür, ancak uygulama yarın acı çeker.

En iyi kodlayıcılar eğim konseptini alır ve problemlere her zaman dışardan bakmalarını sağlayacak şekilde yönetir. Bu başarısız olursa kafein iç.

7
JMC

Olağanüstü programcılar:

  • Kodları hakkında bakım
  • Kodlarını kullanan kullanıcılarla ilgilenin
  • Kodlarını koruyacak kişileri önemsemek
  • Verimlilik ile ilgilenin
  • Süreci önemseyin, sadece ürünü değil

"10x" faktörü hakkında iki şey:

  1. Uçtan uca uygulanmalıdır. Test etmek, yeniden işlemek ve bakımını yapmak 10 kat daha uzun sürerse, 10x daha hızlı yazma kodu iyi değildir.
  2. "10x" faktörünün, az sayıda programcının ne kadar iyi olduğuna kıyasla çok sayıda programcının ne kadar fakir olduğunun bir yansıması olduğuna inanıyorum.
6
darreljnz

birçoğu ayrılmış görünüyor ve özel bir şey yok ... bazıları süper akıllı görünüyorlar ... olası tüm bakış açılarından iki kez şeyleri kontrol etmeyi/hata ayıklamayı tercih ediyorlar, yazılımları dünyadaki hatasız: p IMO bazı programcılar daha yavaş olabilir, ancak kalite daha iyidir, sıradan insanlar bile yazılımlarının nasıl çalıştığını anlayabilir!

10 yaşında ilk ASM programını yazan bir arkadaşım var, şimdi 24 yaşında, üniversiteyi bitirmedi, ama bu onun kendi şirketini yaratmasını, milyonlar yapmasını engellemedi :) ama gördüğümden her şeyde beceriklidir :)

istisnai programcılar büyük olasılıkla bu kod başka bir daha iyi bir şekilde kodlanabilir söyleyebilirim - tamamen yanlış daha düşük bir diğer programcıların itibarını söylemek :)

"Bu insanlar hakkında ne var? Düşünme süreçlerinde ortalamanın üzerinde programcıdan temel olarak farklı bir şey var mı? Yoksa çok çalışan çok yetenekli insanlar mı?"

bence bu şekilde doğarlar, DNA'larının içinde: p Düşünme süreçlerini bilmiyorum, ama tanıdığım en iyi programcı epilepsi geçirdi

3
shegy

Birkaç şey, bir istisnayı tipik olanla ayırt eder.

Olağanüstü:

  1. Çalışmaları hakkında son derece tutkulu ve bir ana parça teslim etmeye çalışıyoruz.

  2. Performans ve kalite, kodlama başlamadan önce bile akıllarındaki büyük resimdir.

  3. Her sürümden sonra sürekli iyileşmeyi düşünüyorlar.

  4. Alternatifler üzerinde sıkı bir nöbet tutuyorlar ve erken benimseyenler.

  5. Profesyonel yaşamdaki temaları: "Daha az yaz, daha çok aktar".

  6. Kodlamadığı zamanlarda bile mantıklı bakış açıları üzerinde düşünmeye devam ediyorlar.

Tipik

  1. Bazen biraz tutkulu ama teslim etmeye çalışıyoruz çünkü sonuçta bir iş. Eğer bir başyapıt değilse, sorun değil. En azından zamanında teslim.

  2. Performansı daha sonra düşünecek, zaten PC'ler bu günlerde yeterince hızlı.

  3. Yalnızca bir işi kaydetmek için seçenek kalmadığında geliştirin.

  4. Diğer teknolojilere girmek için zaman yok. Şimdi işinizin istediklerine sadık kalın. İhtiyaç duyulduğunda başka şeyler öğrenecekler.

  5. Onların teması: "Sorulan şeyi yapın ve zamanında eve ulaşın".

3
RPK

İstisnai programcılar geçerlidir Spartan İlkeleri .

Dikkat çekici görüntü:

enter image description here

Bu makale: http://willcode4beer.com/design.jsp?set=codeReduction

Ve bu alıntı:

Herhangi bir aptal, işleri daha büyük, daha karmaşık ve daha şiddetli hale getirebilir. Ters yönde hareket etmek deha ve çok fazla cesaret ister. - Albert Einstein

2
Ates Goral

1 - Ölü hatta bakıldığında neyin kesildiğini biliyorlar.

0
Gedean Dias

Öz-tanıtım ve bunu mümkün olan en iyi şekilde kastediyorum. Özellikle bir takımda programlama gibi bir işe sahip olmak, kişisel katkınızın büyük resme nereden uyduğunun veya hangi bölümden kimin sorumlu olduğu anlamına gelmez. "Büyük programcılar" olarak duyduğumuz ve öğrendiğimiz insanlar, bencil ya da bencilce ses çıkarmadan katkılarını bilinir hale getirme sanatında ustalaşan IMO'dur. Birçok durumda, bu, geri kalanımızın günlük ekmeğimizi kazanmak için güvendiği araçları, kütüphaneleri ve yazılımları oluşturmaktır.

0
Gaurav

Çok iyi ilgili makale: Serbest Elektron (randsinrepose.com'dan)

Buradaki makaleyi özetlemediğim için özür dilerim, ama noktalar nesirden kolayca ayrılmaz.

0
Nicole

Kendini motive etme ve kendi kaderini tayin etme kalitesine sahip olmanın yanı sıra bilinmeyen bir uçuruma girme istekliliğine sahip olmak ve sürecin bir parçası olarak kesinlikle karıştırılmakta rahat olmak çok büyük. İlk akıllar hakkında düşündüğünüz kadar çok değil çünkü beyin her zaman yaptığı ve düşündüğü şeylerde çok daha iyi hale gelir. Üniversitede hiçbir şeyden gelmedim ve sonra sadece kalıcı bir sebatla çok iyi düştüm, asla vazgeçmedim, diğerleri anlamaya çalışmaktan yorulduğunda bir sorunla uğraşan o adam oldum. Bu tür bir ısrardan sonra, problemler daha kolay ve daha kolay hale geldi ve kolejde çaylak olmaktan birçoğunu bu noktada utanç haline getirmeye kadar geldi. Saf yetenek yeterli değildir ve bazen defne üzerinde dinlenmeye yol açabilir.

Ayrıca, Robert Harvey için, sıfırdan yazdığım CMS'imle ilgili bir şeyden bahsettiğimde yayınlarımı dolaştırmaya devam ediyorsunuz. Yazmış olabilecekleri veya yazamayabilecekleri bağlantıları listeleyen başkalarını görüyorsunuz. Kendi kendini motive eden insanları aşağıya itiyorsunuz, ki bu da bunu yayınlamanız ironik. Sizler bu küçük evrende "erkektir" ve onların esasıyla ilgili bir şeyler okumuyorsunuz, sadece kaprisinize girip silmektesiniz. Ayrıca Star Wars'ı çok fazla seviyorsunuz ve muhtemelen baktığınız güce sahip olduğunuza inanarak bakkalın otomatik açılış kapılarına elinizi sallıyorsunuz.

0
Joonha

Tamamen sezgiye göre programlanırlar. Sadece düşünmeye gerek yok akar.

0
John Shaft

ama bunu öğrenmem önümüzdeki on yıl sürecek gibi görünüyor ve sonra bilgim artık eski olacak.

Olacak. Bu adamların 10 kat daha hızlı olduğunu zaten belirlediniz, bu yüzden 1 yıl içinde öğreniyorlar ve sizi 10 alıyor. Cevabın ciddi kısmı için zaten çok akıllı olduklarını düşünüyorum (çok başarılı olabilirler) kodlamayı severler ve bir nedenle kodlama yapmak veya kişisel projeler üzerinde çalışmak için bol miktarda boş zaman bulurlar (veya bulurlar).

Burada bu soruyu soruyorsanız, muhtemelen gerekenlere sahip değilsiniz (endişelenmeyin, burada cevap veriyorum, bu yüzden muhtemelen ben de yokum). Eğer kodlamayı seviyorsanız yine de çılgın olmak için endişelenmeyin.

0
Kevin

Burada Alçakgönüllülük, Mühendislik, Tutku, Hasta, Sorun Giderici hakkında çok sayıda iyi niyetli mesaj var. IMO bunların hepsi gereklidir. Bununla birlikte, programcıların ilk% 30'unu tanımlarlar.

Bence gerçekten olağanüstü programcılar hakkında soruyorsunuz, ilk% 1.

Birlikte çalıştığım nadir yeteneklerle ilgili kıskanç olduğum şeylerden biri çok büyük tutar karmaşık bir sistemle ilgili ayrıntılarını bir seferde ve hızlı bir şekilde hatırlayabilme. Bunu vesilesiyle, belki ayda bir kez, gerçekten bölgede olduğum zaman yapabileceğimi düşünüyorum. Bu duygu harika. Düşündüğüm geliştirici o bölgede olabiliyor gibi görünüyor çoğu zaman .

Alçakgönüllülük, Merak, Mühendislik, Tutku, Sabır ve Sorun Giderme yeteneğine ek olarak onları gerçekten istisnai hale getiren bu özellik IMO'dur.

0
Kyle Hodgson

İstisnai kodlayıcılar, deneyimleri nedeniyle kendi kodlarının ve spot problemlerinin kapsamı dışındaki bir projeyi etkiler. Takımdaki herkesi daha iyi hale getirir ve projelerini kötü tasarım ve yönetimden kurtarırlar.

Aslında olağanüstü bir şey yarattılar.

0
JeffO