Programlama becerilerim konusunda kendime nasıl daha güvenirim? [kapalı]


37

Programlama bana yabancı değil. İlk önce 12 yaşındayken işaretleme yapmaya başladım (HTML, şimdi lütfen bana gülme) ve 13 yaşındayken biraz BASIC yaptım (bu noktada Akış Şemaları, Sözde Kodlar hakkında çok şey biliyordum), ama sonra öğrendim Lisede biyoloji ve dolayısıyla C, Java, vs. gibi dillerin "gerçek" programlama bilgisini kaçırdım. UG BE'm için CS'yi aldım (BS'ye benzer, ancak daha teorik). C & C ++ 'ı (daha az ölçüde) kendi başıma öğrendim (profesörüm tam bir acıydı ve sınıf kod okuyucularla doluydu (okulda çoktan öğrenmiş ve bu yüzden sınıfa hiç dikkat etmemiş, Benim gibi daha küçük ölümlülerin benim de sınıfına dikkat etmelerini sağla).)

Asıl sorunum, sınırlı programlama becerilerimden dolayı her zaman yetersiz ve boğulduğumu hissetmiş olmam ve kod yarışçılarının küçümsemesinden kaynaklanıyor (inan bana, yıllar önce bu siteye rastladım, ancak şimdi gerçekten yayınlama cesaretini artırabilirim) bir soru) ve zaman zaman bile söz konusu yetersizlik yüzünden moral bozuldu. Çoğu kişi, Programlamanın mutlaka dille ilgili olmadığını, kişinin sahip olduğu ve problemleri / sorunları çözmek için kullandıkları teknikleri düşündüğünü belirtir. Bu tür düşüncelere katılıyorum, ancak böyle bir "zihin hali" alabilir miyim, ve eğer böyle bir "Programlama / Kodlama" ya nasıl yaklaşmalıyım ve eğer "Zen" e ulaşmak için en çok atılan herhangi bir yol ve adım varsa Kodlama ". Bunu nasıl yaparım? Ayrıca, bazı Azizler bu sıkıntıya uğrayan $ #! ^ Parçasına rehberlik etmek isterse zarar vermez.

PS Beni zamanlarını değer olarak değerlendiren herhangi bir kişiye sonsuza dek minnettar kalacağım ve bir bonus olarak onlardan sonra gönderdiğim ilk Yazılım parçamı atacaktı. (Eğer birini gönderirsek, yani)

TL; DR: Asla "Programlama / Kodlama" yı öğrenmedim, denememe rağmen sorunları çözemiyorum. Bana yardım et!


22
Kendine üzülme. Kimse rahim programından çıkmadı. Kodunuz arttıkça kodda daha fazla düşüneceksiniz. Bununla iyi eğlenceler.
Steven Evers

9
Eğer "Hm, hata muhtemelen kodumdadır, derleyici olarak değil" diye düşünüyorsun.
gablin

5
@SnOrfus: Jon Skeet dışında kimse yok;)
back2dos

4
bir noobdan diğerine: Pratik anahtarıdır!
Chani

1
@Snorfus Bahse girerim Birkaç kişi yaptı! : P
Mark C

Yanıtlar:


26

En iyi yolun bunun üzerine daha fazla zaman harcamak olduğunu iddia ediyorum (10000 saatlik kuralı arayın). Tamamlanmasını istediğiniz bir şey bulun ve yapılmasını isteyin. Şu anki yeteneğinizin ötesinde bir şey seçin, ancak makul bir sürede bitiremeyeceğiniz kadar uzakta değil. Eğer gerçekten hoşlanıyorsanız, kendinizi gerçekten iyi olana kadar bu tekrarı bulacaksınız. Eğer zevk almıyorsanız, o zaman belki sizin için doğru bir şey değildir. Yine de kendinize meydan okumayı deneyin, muhtemelen zevk alacaksınız.


10000 saatlik kural önerisi, adil bir kural gibi görünüyor. Gerçekten merak uyandırıcı, ama hangi dili seçmeli, hangisinin hala geçerli olacağını ve aynı zamanda yeni dillerin esnekliğini de sunmalıyım (örneğin: Java'yı tüm kavramlarla derinlemesine öğrenirsem, Scala, Processing, Clojure, vb oldukça kolay).
Ameen

11
Ameen: Diğer diller için endişelenme. Bir tane öğren. Java'ya 10.000 saat geçtikten sonra devam edin. Hayat çok uzun, çok dil var, hepsini öğrenmeyeceksin. Yeniler her zaman icat edilir. Şimdi bir şey öğren. Bundan sonra gelecek için endişelen.
S.Lott

2
belirsiz bir şekilde "üzerinde daha fazla zaman harcamak" etkili değildir.
Rein Henrichs

1
Ayrıca Nesne Yönelimli bir programlama dili öğrenmek ve İşlevsel bir programlama dili öğrenmek de iyi bir stratejidir. Statik olarak yazılmış bir dil ve dinamik olarak yazılmış bir dil öğrenin. Çok yönlü bir geliştirici olacaksın.
Chiron

1
@ BSeven Peter Norvig'in "10 Yılda Programlamayı Öğrenin" konulu makalesine benzer bir şekilde bakmanız gerekir ve programlama yüzünde yeni başlayan birkaç önemli konu hakkında bir ton ışık tutar.
Ameen

16

Eşyaları yolla . Tek yol bu. İşleri hallet. İş yerinde, kendi projeleriniz, açık kaynaklı projeler. Eşyaları göndermeye başla. Hata düzeltme veya minimum pazarlanabilir özellik gibi çok küçük şeyler olabilirler. Sadece bir şeyler göndermeye başla . Hiçbir şey başarıdan daha tatmin edici veya güven arttırıcı olamaz.

Düzenleme: Ship It'i okumalısınız . Bu harika.

Tekrar düzenleyin: Gönderi dışında herhangi bir şey yapma deneyimi sadece başarısızlığın yaşanmasıdır. Asıl deneyimi bir şeyleri nakliye etmeyen (ve onları göndermemek için bahaneler bulmak) pek çok "kıdemli" geliştirici gördüm. Gerçek sanatçılar gemi .


12

'sorun', 'yetersiz', 'boğulmuş', 'sınırlı X becerileri', 'küçültülmüş', 'depresif', 'yetersiz' bir cümle içinde, kendinize yönelmiş, hepsi hala bana zarar vermiş bazı yaralar sen. Bunların üstesinden gelmenin yollarını bulursanız, programlama veya böyle bir sanat / zanaat ustalaşması çok kolay olurdu. Belki başkalarının direncini okumak, burada yardımcı olabilir. Herkes hayatında acı zaman geçiriyor. Bu yaralar / yaralar iyileşmezse, başarıları başaramazdı. İlk önce yaranı iyileştir. Programlama daha sonra bekleyebilir.

Programlama becerilerine gelince, yeni bir dili nasıl öğrendiğimi ve zaten o dilde program yapan başkaları gibi düşünmeye başladığımı, ilk önce, o dille ilgili olan ellerimi üzerinde tutabildiğim her şeyi okuduğum gibi. Sonra yeterince okuduğumda küçük programlar yazmaya başla.


2
Bu aynı damarda, aynı sorunu yaşayan birini ve onun etrafında bir topluluğun toparlandığını görmek istiyorsanız ve bu hacker haberlerini okuduğunuzdan emin olun .
Wes Baker

3
Öneri ve dokümantasyon ve öğreticiler hakkında bilgi almak için öneri için +1. Ve birinci kısım için, çok fazla yaranın iyileşmediği konusunda hemfikirim. (Bu sitede bir psikolog ne yapıyor?) Fakat ne yazık ki bazı yaralar diğerlerinde olduğu kadar kolay iyileşemiyor. Ama onlarla görüşmeye başladım ve açıkçası eskisi kadar acı çekmiyorlar. Ve boşta kalmak beni sadece bu olumsuz düşüncelere doğru itiyor ve bunu yapmanın tek yolu kendimi Kodlama, vb. İle meşgul tutmaktan geçiyor. Önerileriniz için çok teşekkür ederim ve arkadaşım beni psişik becerilerinize attı.
Ameen

@Wes Baker: Bu Hacker News dizisi için çok teşekkür ederim. OP'nin düşünceleri ile kesinlikle ilgili olabilirim (çok kötü olmamasına rağmen). İşletim Sistemleri, Bilgisayar Mimarisi, Algoritmalar, Veri Yapıları, Bilgisayar Ağları, Kriptografi, Veri Depolama, vb. Konularında oldukça iyi bilgiye sahibim. Söylediğim gibi, bu konuların hepsini teorik bir POV'dan biliyorum ve aslında bunun üzerine pratik şeyler yapmadım. Kesinlikle bu konuya göz atacağım, orada da birçok harika tavsiye. Tyvm!
Ameen

@Ameen 'Her şey' ile, dokümanlar ve dersler ile sınırlı kalmam. Başkalarının yazdıklarını, kullandıkları deyimleri, hataları, istisnaları vb. Karşı karşıya kaldıklarını ve çözümlerini vb. Ben hiçbir şekilde medyum ya da psikolog değilim.
vpit3833

9

Gerçekten gitmen gereken birkaç şey:

Azim: İyi bir programcı olmak biraz zaman alır. Herhangi bir iyi kod yazmadan önce çok fazla kötü kod yazmanız gerekir - çok fazla kötü kod. Neyse ki, size yardımcı olmak için bu site gibi kaynaklarınız var. Programlamayı öğrenmeye kararlı olduğunuz sürece, hiçbir zaman basit oyunları ve yardımcı programları bir araya getirebileceksiniz!

Hedefler: Kendiniz için bazı hedefler belirleyin. İki haftada STL'yi C ++ 'da nasıl kullanacağınızı öğrenin. Ne kadar iyi yaptığını gör. Daha uzun sürerse, daha ne kadar sürdüğünüzü takip edin, gelecekte daha iyi olmanıza yardımcı olacaktır. Bu numarayı bir iş arkadaşından öğrendim; Neredeyse herhangi bir görevin ne kadar zaman alacağını güne kadar tahmin edebilirdi. Bunu yapmak, kişisel projelerime ne kadar zaman harcadığımla ilgili sekmeleri tutmama yardımcı oldu ve onları kontrolden çıkmamalarına (benimsemedikleri kapsam yönetimi) engellememe yardımcı oldu.

Merak: İlgilenmek ve meşgul olmak zorundasınız. Eğer çözümü bulma arzusuyla sorunlara yaklaşmayan bir insan değilseniz, programlamaya başlamak ilk başta zor olacak ve hata ayıklama kabus olabilir. Ama böyle olmak zorunda değil. Bir sorun yaşarsanız, bunun gibi sitelere sorun, hatanızı google. Bir şeyi nasıl uygulayacağınızı bulamıyorsanız, sorun! Her zaman orada yardım etmeye istekli insanlar var!

Güven: Ne yapmak istediğinize ve kendinize soru sormak için yeterince kendinize güven. Birisi size bir şeyi yapmanın başka bir yolunu gösteriyorsa, savunma yapmayın ya da yanlış yaptığınızı düşünerek kendinize düşmeyin; Sorunu çözmek için farklı bir yaklaşım öğretildiğini düşünün!

Her şeyden önce, olumlu bir bakış açısı sağlayın, birçok ders okuyun ve birçok soru sorun; siz de mutlu bir programcı olacaksınız! Vermem gereken bir başka tavsiye daha kendine güvenene kadar bir dil seçmek, buna bağlı kalmak. Bir dizi dili öğrenmek için çok zamanınız var, ancak başladığınızda sadece bir taneyle çalışın.

İyi şanslar! Ve unutmayın, bunun eğlenceli olması gerekiyordu! = D


Anlayışlı girişiniz için teşekkürler. Sorunlarımdan biri her zaman (genellikle) çok yüksek hedef aldığım ve ilk önce yüzüstü olduğum gerçeği olmuştur. Bilinçaltım "Bir kez yandı, iki kez utangaç" yaklaşımını benimsemiş olabilir ve belki de bunu düzeltmek için girişimlerimi engelliyordur. Her zaman merak ettim, ama bir mentor eksikliği, beni merakımı görmezden getirdi. Ve ciddi olarak SE, zaman geçtikçe çok daha garip görünüyor, bu müthiş kaynağa kesinlikle göz kulak olacağım ve uygun bir programcı olma hedefime ulaşacağım. Çok teşekkürler, ciddiyetinizin benim için ne kadar önemli olduğunu söyleyemem.
Ameen

Yardım etmekten mutluyum! = D
bryanegr

En iyi hedef: gemi kodu!

7

Gelişimde, “ne kadar çok bilirseniz, o kadar fazla tanımazsınız” paradoksunun doğru olduğu görülüyor.

Düşünceli, dürüst bir insansanız, bu gerçeği kabul etmeniz ve onunla başa çıkmayı öğrenmeniz gerekecektir.

Güven, sorunun ima ettiği anlamda, belirli bir beceri seti ya da metodolojisi ile gerçekten ilgisi olmayan, çok kişisel bir şeydir.

Daha sığ bir notta, http://www.kalzumeus.com/2011/10/28/dont-call-yourself-a-programmer/ (bölüm: 'de açıklanan duygular) nedeniyle rekabetin ortalama becerisini radikal bir şekilde abartıyorsunuz. (birlikte takıldığın kalabalık) bana her zaman yardım etti.

Yeteneklerinize bir bütün olarak güven inşa etmenin aksine yaptığınız işte daha emin olmayı öğrenmenizi öneririm. Bunu yapmanın en iyi yolu, tüm kodunuz için tekrarlanabilir testler yazmaktır. Ruhunuzda harikalar yaratacak.


4

WhiteFang34 tamamen haklı. Kendim bir biyolog olarak, programlama öğrenmek zorunda olduğum tek yolun bunu yapmaya başlamak olduğunu gördüm. Birkaç kitap okuyun, her zaman elinizin altında google ve SO'yu bulundurun ve "sadece yapın". Programlarınız başlangıçta çok basit, kötü kodlanmış ve zorlayıcı olacak ve zamanla daha iyi ve daha iyi olacaksınız. Programlama dersleri almaya vaktim yok ama kodlama için çok zaman harcıyorum (çünkü bunu yapmak eğlencelidir).

Ne yapmak istediğinizi daha fazla düşünmenize izin verecek bir dil seçin ve nasıl yapılacağını daha az. c buna pek iyi bir örnek değil. Java veya c # gibi yüksek seviyeli dilleri deneyin, çünkü daha fazlasını yapmanıza izin verecekler, böylece daha fazla denemeye cesaret sahibi olacaksınız.

(Tabii ki, profesyonel bir programcı olarak kariyer yapmadığınızı farz ediyorum, bu durumda okula geri dönelim derim ...)

İyi şanslar ve mutlu bir kodlama var

PS: Oh, ve çok fazla tembellik, sabırsızlık ve kocaya ihtiyacınız olacak

http://c2.com/cgi/wiki?LazinessImpatienceHubris


4

Komik olan şey:

programcının aklı , bilgisayar, programlama dili,
tasarım desenleri veya algoritmalar ile ilgili değildir.

Gerçek dünyanın inceliklerini anlamak, şeyler arasındaki etkileşimi anlamak. Yetenek için soyut düşünmek . Bir şeyleri fark etme ve hatırlama yeteneği . Bu kaçınılmaz olarak iyi problem çözme yol açar.

Uygulama, kodun kendisi ancak bundan sonra gelir -
zihninizde verilen sorunu başarıyla çözdükten sonra .


4

Güven, becerileriniz hakkında hissetmeniz gereken bir şey değildir. Güven, zayıf (muhtemelen olumsuz da olsa) gerçek beceri ile ilişkilidir. Mevcut yetenek seviyeniz hakkında ne hissederseniz edin, profesyonel (veya değerli hobi) yetenek setinizi geliştirmek için çalışmalısınız.

Güven, yetkili olduğunuzu düşündüğünüz diğer kişilerin sizinle birlikte çalıştıktan veya işinizi gördükten sonra becerilerinizi hissetmesi gereken bir şeydir.


3

Çok basit: onunla ilgilen ! Çoktan görünüyorsun, öyleyse yapmanın iyi olacağını düşündüğünüz bir şey bulun ve sonra bunu yapın, yolda istediğiniz soruları sorarak, istediğiniz kaynakları kullanarak, projeyi istediğiniz gibi bir araya getirin istiyor. Durulayın ve tekrarlayın; yol boyunca ilginç / eğlenceli olduğundan kendinizi çok çaba harcamadan harika bir programcı olarak bulacaksınız.

Ayrıca, bir şeyleri çözme ile birçok soru sorma arasında iyi bir denge kurun. Başlangıçta, özellikle, başkalarının nerede yanlış yaptığınızı size söylemesini sağlamak, öğrenme eğrisinin ilk bölümünde sizi güçlendirmek için büyük bir yardım. Oradan, kendi başınıza bir şeyler bulmaya çalışın ve bir süre sonra takılırsanız bir soru sorun. Sık sık yaptığım şey SO ile ilgili bir soru yayınlamak ve sonra da arada sırada SO kontrol ederek cevabı aramaya gidiyorum. Bazen önce cevabı bulurum, bazen önce beni bulur.

Hangi teknoloji hakkında endişelenmeyin, HTML5 + JavaScript + tuval etiketiyle grafik yapmak gerçekten eğlenceli olsa da, kurulumu oldukça kolay olduğundan, ödülleri hemen gelir ve bunları paylaşabilirsiniz.


Çok teşekkür ederim. Programlama ile çok ilgileniyorum (kafamdaki sorunları çözüyorum - ve tabii ki algoritmalar, akış şemaları, vb.) Bir projeye bağlı kalmadan ve bununla devam edip takılıp kalmışken yardım istiyor gibiyim çıkmaz (bunların hepsi şimdi bitmek zorunda, :) :) SE sayesinde) Ayrıca, HTML5 + JavaScript sayfalarıyla da ilgiliydim (kısmi sayfa yükleme - Mashable bunu harika bir şekilde uygular, SE'ye yükleme cevapları, vb.). Gerçi onlardan öğrenebilecekleri iyi kaynakları gerçekten bilmiyorum (W3C Okulları sözde itiraf ediyor; W3Fools öyle diyor!)
Ameen

3

Yaklaşım programlama ile daha olumlu, öğrenenlerin tutumu. Kimse her şeyi bilmiyor. İkincisi, programlama ile neden ilgilendiğinizi öğrenmek istersiniz:

  • problem çözme
  • yeni şeyler öğrenmek
  • bilgisayarını istediğine göre bükmek
  • başka bir şey...

Programlamada neyi sevdiğinizi öğrendikten sonra, öğrenme çabalarınızı bu yöne odaklayabilirsiniz. Tamirci / problem çözücüyüm. Bu beni son derece pragmatik yapıyor. Algoritmalar ve veri yapıları, genel olarak bilgisayar bilimleri teorisi beni uyutuyor.

Geçmişim seninkine benziyor. 10 yaşındayken bilgisayar yapmaya başladı. Ortaokullarımda küçük bir HTML / C ++ sıkıldı mı? Yine de bilgisayarla oynamayı hiç bırakmadım.

Şimdi, programlamayı seviyorum. Peki ne değişti? Motivasyonumu buldum. Çözmem gereken birçok problemin olduğu yerde çalışmaya başladım. Zekice, karmaşık sorunlara basit çözümler bulmak gerçekten ateş yanmamı sağlıyor.

Son olarak, başkalarının nasıl kodladığı veya “doğru” olup olmadığı konusunda endişelenmeyin. Yapmak istediğini yaparsa doğru. Bir takım üzerinde çalışmaya başladığınızda standartlar önem kazanır. Bunun nedeni, diğer kişilerin çalışmanızı yorumlayabilmesi ve değiştirebilmesi gerektiğidir. Tasarım standartları yeni bir programcının ilgisini çekmesi gereken bir şey değildir.


3

Yeni şeyler öğrenirken üstesinden gelmek için her zaman atalet vardır. Meraklı programcılar, yeni diller ve paradigmalar öğrenmeye devam etme motivasyonunu bulmak için mücadele ettiğimi biliyorum. "X'i denemek için bir projeye ihtiyacım var" diyecekler. X'i öğrenmek için çok azı aslında bu projeyi bulacak / icat edecek.

Programlamadaki bir kariyerin, yel değirmenlerine karşı yaşam boyu süren bir hayal kırıklığı, çalışma, deney ve devirme süreci olacağı tavsiye edilir. AI'lar her şeyi ele geçirinceye kadar.

Hala gerçek bilim yapıyorsanız, bir tür projeyi / ihtiyacı hayal edebilmelisiniz. Örneğin, birden fazla kaynaktan gelen verileri internet üzerinde veya dışında birleştirmek. Bu, javascript veya R, hatta Excel / VBA'yı öğrenmenize ilham verebilir. Alanınızdaki diğer kişiler için bazı noktalar bağlayabilirseniz, tanınırsınız, vb.

Kullan, fakat mentorlara karşı dikkatli ol. Soru otoritesi.

Ve bu arada, "zen kodlaması" bir oksimorondur.


3

Programlama becerilerinizden asla emin olamazsınız.

Becerilerinizi tanımlama şekliniz, becerilerinizden asla tatmin olamayacağınız bir zihniyete işaret eder. C ++ 'da usta oldun mu? Bekleyin Java var! Java’ya hakim oldunuz mu? Paralel Programlama yapılmasını bekleyin. C ++ ve Java'da Paralel Programlama konusunda uzman mısın? Bekle SOA var! OOD var! Ve MVC! KATI! İşlevsel Programlama! Web Programlama! Bulut Programlama! Mobil Programlama!

Mesele bu yüzden depresyonda hissetmemek. Kafandaki bazı butonlara basman gerekiyor: Yeteneklerin hakkındaki şüphen saf yakıt. Muhtemelen tatmin edici düzeyde bir programlama becerisine asla ulaşamayacaksınız. Durum böyle olduğu sürece ileri gideceksiniz. Asıl amaç olmamasına rağmen, zor olan kısmı gerçekleştirmek ve ona karşı bir şeyler yapmak. Ne kadar uzun süre dayanabilirseniz, beceri seviyeniz o kadar yüksek olacaktır.


Vay, bu tamamen yeni bir bakış açısı. Yapma şeklini sev, daima yapmak istediğin bir şey olacak. Olumsuzluklarımı pozitiflere çevirmeye başlamalıyım. Çok teşekkürler. Takdir et!
Ameen

3

Ben de aynı şekilde hissediyordum ve aslında bana güven vermeme yardımcı olan Stack Exchange siteleriydi.

Sorularımın cevaplarını bulmak için StackOverflow'u kullanmaya başladım ve bir gün bir cevap gördüm. Cevap gönderdim, bazı oylar aldım ve iyi bir cevap olduğunu söyleyen bir yorum yaptım ve bu, cevaplayabileceğim diğer sorulara bakmam için beni cesaretlendirdi.

Yakında benim için bir bağımlılık yaptı, çözebileceğim cevapsız soruları buldu ve zaman geçtikçe cevaplarıma güvenmeye başladım. Artık "Bunun nedeni budur ..." ya da "Bunun sebebi ..." olmalı, ama bunun yerine "Bunun sebebi ..." ya da "Bunun sebebi ..." diyerek söylemek.

Bulmacaları severim ve bana göre SO soruları mini programlama bulmacaları gibiydi, cevabı doğru bulduysam bazı olumlu geri bildirimler almanın yararı oldu. Eğer yanlış bir cevap alırsam, sadece onu sildim ve başkalarının çözümlerinden aynı problemi öğrendim.

Bu yüzden benim tavsiyem, SO'ya devam etmek ve ilgilendiğiniz etiketteki sorulara göz atmak ve cevapları bulabileceğinizi düşündüğünüz bazı konulara bakmak olacaktır. Programlama yanıtlarınızın, programlama yeteneğinize güvenmenizi sağlamak için yararlı / iyi olduğunu söyleyen insanlar gibisi yoktur. :)


Tabii, bunu yapmam gerekiyor. Ama egom başlıyor ve "başkalarına bir şeyler yapacak kadar iyi değilsin, heck burada olacak kadar iyi değilsin" diyor. Aptalca geldiğini biliyorum ve buradaki bazı insanların söylediği gibi, belki de beynimi strese sokmaktan korkuyorum, ama yapacağım, o kadar şişkinliği boşa harcayacağım. Öneriniz için çok teşekkür ederim ve her gün çözülmesi gereken ilginç sorular için yeni SE keşif alışkanlığımı sürdürmeye çalışacağım. Zaman ayırdığınız ve aptalca sorumu yanıtladığınız için teşekkür ederiz. Gerçekten onu takdir ederim!
Ameen

3

Beyniniz çok çalışmak istemiyor. Seçim göz önüne alındığında, kolay çıkmayı tercih ediyor. Bu nedenle, çok iddialı bir şeyle uğraşmaya çalıştığınızda şeylerden vazgeçmek kolaydır - öğrenmek için çok fazla, doğru elde etmek için çok fazla ayrıntı, çok fazla yak tıraş.

Bununla mücadele etmek için yapabileceğin birkaç şey var. Birincisi enerjidir. Egzersizinizi iyi dinlenmiş ve iyi beslenmiş durumdayken yapmaya çalışın ya da beyniniz tam anlamıyla karmaşık soyut düşünce için yeterli yakıtı olmayacak. İkinci numara, ilgi veya önemdir. Beyninizi, maven'i tanımanın kaplanın sizi kovalamasından kaçmak için hayati olduğuna ikna edebilirseniz, beyninizin gerçekte ne istediğinize giderken anlamsız bir yan görev olduğunu düşündüğünden daha fazlasını öğrenir ve saklarsınız. Önemli olan üçüncü bir faktör ise aşırıya kaçmadan uzamaktır. Bazı çabalar bu başarıyı size vermekten alıkoyacak ve elde edilemez olmadan yeni zihinsel yollar oluşturmanıza yardımcı olacaktır.

Tekrarlanan uygulama için söylenecek bir şey var. Yeni olmak için yeterli çeşitlilik istiyorsunuz, ancak aynı eylemleri gerçekleştirip onları köklendirmek için yeterli benzerlik istiyorsunuz.

Diğer bir nokta da, kollarınızı kıvırmaya ve ellerinizi kirletmeye çalışmanız gerektiğidir. Asla başlamayacağınız ölçüde, alternatif yaklaşımlar veya ideal çözüm hakkında düşünmek için çok zaman harcamak kolaydır. Bu, beyninizin daha kolay çıkış yolu bulmaya bir örneğidir. Bunun size ne zaman gerçekleştiğini tanımayı deneyin ve başlamaya çalışarak kaçının. Bir test veya deney bile iyidir. Bu aynı zamanda beyninizi, görevi tamamlama veya daha iyi bir çözüm bulma kapatılması istemesini sağlamanın yan yararına sahiptir.


Vay canına, şimdiye kadar şüphelendiğim en büyük suçluyu çiviledin. Beynim her zaman ayaklarım üşütmekle ilgili bir sorun yaşadı ve çoğu zaman kendimi sabote etmek zorunda kalıyorum. Önemli olanı yapmaktan kaçınmak için her zaman telafi ettiğim bir bahane vardır. Bir bilgisayar korsanı olmam ve geçmiş başarısızlıklar nedeniyle anıtsal olarak başarısız olacağı konusunda endişelenmeyi bırakmam gerekiyor. Hayatımı kesmem gerekiyor, böylelikle özlü "Evet erkek" oldum. İçimde gerçekten değiştirmem gereken bazı kusurları gösterdiğiniz için teşekkür ederim ve umarım en kısa zamanda bunu yapmayı umuyorum. Bir ton teşekkürler ve bunun için sana asla yeterince teşekkür edemem! Şerefe.
Ameen

2

Dikkate alınması gereken üç şey: (Tabii ki değil.)

  1. Uygulama. Başarısızlık, uyguladığınız göstergeden başka bir şey ifade etmezse? İlk düştüğün zaman yürümeyi öğrenmekten vazgeçmiş olsaydın, yine de sürünüyor olurdun.
  2. Ne yapıyorsan onunla oyna. Oyun sadece bir şeyler denemek ve neler olduğunu fark etmektir. İyi / kötü sonuçları değerlendirmekten vazgeç, sadece oyna ve ne olacağını gör. Belirli bir sonuca bağlı kalmaktan vazgeç, sadece bir şeyler dene ve ne olduğunu gör.
  3. Peki ya dünyada böyle hisseden tek programcı siz değilseniz?

2

Buradaki uygulama hakkında birçok iyi yorum var, bu gerçekten fark yaratıyor.

"Kod ekleri" hakkında daha az endişelenmeli ve ne oldukları hakkında tavsiye ya da yorum almalısınız. Bir iple başa çıkmaları zorsa, gerçek hayatta da başa çıkmaları muhtemelen zor; ve gerçekte, kim sosyal kayıtsızlık konusunda endişelenecek zamana sahip?

Sonuçta, programlama görevlerine yaklaşmanın binlerce yolu vardır. Bir çok şey kişisel tercihlere bağlı. Örneğin, tenary operatörleri ile okuma kodundan nefret ediyorum. Diğerleri onları sever. Bence doğru mu, yanlış mı? Bu kişisel bir tercih olsa da, konuyla ilgili çok fazla ateşli tartışma yaşanacak.

Eğer biri kod yerine 20 yerine 25 satır atarsa, mantıkta gerçek bir kusur bulamadıkça, onları görmezden gelme eğilimindeyim. Bazen gerçek dünyada, sadece işleri halletmek zorundayız (ve gerçekten kimsenin ne kadar karmaşık olduğu konusunda kafa karıştırıcı bir şeyler dinlemek isteyenleri ... hata, şık, 10 dakika içinde yapılması gereken bir kod parçası yapmayı başardılar) . Sonsuz felsefi tartışmalardan bir şeyleri ne kadar soyutlayabileceğinizi öğrenebilir misiniz? Tabii ... ama sürekli% 100 zarafet içine emilmesinde azalan getirileri vardır. Her zaman olduğu gibi yapmak istediğimiz kadar gerçekçi değil. Kimseyle paylaşmaktan utanacağım en zarif kodumun bir kısmı (kariyerimin başında yazdığım) haftalarca zaman harcayan insanları kurtardı,

Joel Spolsky'nin Duct Tape Programmer adında harika bir blog yazısı var. Harika bir okuma ve IMO, bazı korkularını perspektif içine sokuyor.

http://www.joelonsoftware.com/items/2009/09/23.html

Bir bok kodu yazıp en iyi uygulamaları göz ardı etmiyorum, ancak tuzlu grenli programcıları alıyorum.


1

Kendine neden gerçekten güven eksikliği hissettiğini sor. Bence meslektaşlarınızın ne düşündüğünü önemsiyorsunuz ve bu tamamen anlaşılabilir bir durum. Ancak bu konuda gerçekten zen olmak için, bu tür düşünceleri temizlemeniz ve yalnızca zamanla kendinizi kendinizle karşılaştırmanız gerekir. İlginize rehberlik edin, öğrenin ve sıkı çalışın; tüm psişik BS olmadan iyi bir programcı olacaksınız.

İhtiyacınız olan güven değil, ilerleme yolunuzda daha az gürültü var.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.