it-swarm.dev

Bir programlama akıl hocası nasıl bulunur?

Programlamayı öğrenmeye karar verdim. SO birkaç gündür okuyorum ve bazı makaleler okurken C++ ile başlayacağımı düşünüyorum. Döngüler, diziler, program mantığı ve nesnelerin biraz farkındayım ve ben ilk projelerimi yaparken, bana bakması ve küçük sorularla bana yardım etmesi için birine ihtiyacım var.

İşte soru - böyle bir adamı nerede bulabilirim? Programlayan arkadaşım yok ve hepsi.

EDIT: 2 yıl sonra, hala akıl hocası arıyorum. Ben aktif olarak henüz 3 ay başladı kod vermedi. Cocos2d ile Objective-C ve iOS programlama ve oyun programlama üzerine çalışıyorum. Eğer akıl hocam olmak istiyorsanız, bana bir yorum bırakın veya yorum yapın.

46
Dvole

Açık kaynaklı bir projeye katılmak kesinlikle başlamanın bir yoludur. Ancak, yıllardır açık kaynaklı yazılım kullanıyorum ve açıkçası, neredeyse tüm bu projelerin kalitesi genellikle tuvalette. Programlama ve tasarım becerilerinizi tamamen onlardan öğrenirseniz, muhtemelen aralarındaki farkı anlatmanın bir yolu olmadan, iyi olanlarla birlikte çok fakir olanları da alırsınız.

Programlamayı ne öğrenmek istersiniz for? Bunun cevabı, neye ve nereye bakmanız gerektiğini belirleyecektir. İşte bazı yaygın cevaplar ve onları nasıl takip edeceğime dair profesyonel düşüncem (IMHO'nun doğru olmasına rağmen, is sadece görüş olduğunu unutmayın):

Sadece nasıl yapılacağını bildiğini söylemek için.

O zaman gerçekten bir akıl hocası gerekmez ve C++ başlamak için kötü bir yerdir. C++ 'ı seviyorum, genel programlama için ilk tercihim ama bunun yerine başka bir dille oynayın. Python'u öneririm; C++ 'dan çok daha yumuşak bir öğrenme eğrisine sahiptir ve bazı dillerden farklı olarak (adı belirtilmemiş, bugün asbest iç çamaşırımı giymedim), daha sonra daha fazla girmek istemeniz durumunda hala birkaç yararlı beceri öğreneceksiniz. Bu yolda devam etmeye karar verirseniz, kavramların çoğu doğrudan C++ 'ya çevrilebilir.

Sadece denemek ve beğenip beğenmediğini görmek için.

Açık kaynaklı bir proje bunun için yeterince iyi olabilir. Beğendiğiniz, ancak bazı sorunlar veya tahrişler bulduğunuz ve onu çalıştıran kişiye yardım teklif ettiğiniz bir program seçin. Açık kaynak projelerinin çoğu katkılara açıktır, bu yüzden ilk etapta genellikle açık kaynaklıdırlar.

Ancak, bu durumda, ilk programlama diliniz olarak not C++ komutunu deneyin. Temel konularda uzmanlaşmak zor değil, ancak C++ programlarınızda bazı ciddi ve bulunması zor hatalar alabileceğiniz kadar düşük seviyededir. Programlamayı sevdiğinizi bilmiyorsanız veya atasözü öküz kadar inatçıysanız veya sizi doğru yönde gösterebilecek, tarlada sahip olabileceğiniz herhangi bir tomurcuklanan ilgiyi öldürecek bir danışman buldunuz. Python ile ilgili yukarıdaki cevaba bakınız, bunun için daha uygundur.

Çünkü yazmak istediğiniz belirli bir program için bir fikriniz var.

(OP'nin bu kategoride olduğunu düşünmüyorum, daha sonraki okuyucular için koyuyorum.)

Program tasarımı ve uygulamasında uzmanlaşmak için gereken zaman hakkında bir fikriniz var mı? Bir ipucu olarak, yıllar içinde ölçülür. Hem akıllı hem de son derece şanslıysanız, ancak üzerinde çalışmak zorunda olan küçük bir deneyime sahip olan (daha sonra siz dahil olmak üzere), sadece birkaç aylık bir çalışmadan sonra yarım iyi bir tasarıma sahip olabilirsiniz. hiç doğmamış olmanı dilerdim - deneyimlerden konuşurum :-) Fikir o kadar süper gizli değilse, başka kimse bitene kadar bu konuda bir şey bilemez, rahatsız etmeyin. Sizin için bunu yapmak için deneyimli bir programcı kiralayın veya bir tane ödeyemiyorsanız, ancak programı yeterince kötü istiyorsanız, biriyle ortak olmayı teklif edin - iş tarafını ele alıyorsunuz ve programlama kısmını idare etmesine izin veriyorsunuz. Çoğu iyi geliştirici programlama olmayı tercih eder, bu nedenle bu tür bir teklif onlara değer olabilir.

Çünkü zaten programlamadan etkilendiğinizi biliyorsunuz ve daha fazla bilgi edinmek istiyorsunuz.

O zaman tam olarak doğru yoldasınız. :-) İster bir hobi gibi olsun, ister daha sonra bir kariyere dönüşebilecek bir şey olsun, onu sonsuz büyüleyici bulan bir kişiliğe sahipseniz, yapabileceğiniz en iyi şey kendinizi içine sokmaktır. C++ her durumda olduğu kadar iyi bir dildir ve bir akıl hocası kesinlikle yardımcı olacaktır (ve becerilerinizi geliştirmekten daha fazlası ile; tutkunuzu paylaşan arkadaşlar olmadan yalnız kalabilir).

31
Head Geek

Bir akıl hocası bulmak için akıl hocası aramayın. Kendinizi belirli yollarla geliştirmeye çalışın. İyileşmek için yeterince çalışıyorsanız, hem benzer düşünen insanlarla temas kurduğunuzu hem de bu insanlarla ortak bir şeyinizin olduğunu göreceksiniz.

Kullanıcı grupları bir akıl hocası bulabilecekleri yerdir, ancak hiç kimse orada bulunan birisine "Akıl hocası arıyorum" diye düşünmek istemez. Ama orada düşünürseniz: "Birisi iyi JavaScript birim testleri yazmayı öğrenmeme yardımcı olabilirse çok isterim" veya "Er ya da geç biriyle eşleştirmeyi ve bir kata'yı test etmeyi çok isterim" ilgi alanlarınızı paylaşan ve biraz daha uzakta olan birini bulacaksınız.

23
Eric Wilson

Gerçekten iyi mentorluk yapan insanlar genellikle herhangi bir anda zamanları için bir düzine kadar gence sahip olurlar. Yani, doğru mentoru "bulmak" sadece bir başlangıçtır, ayrıca mentorluk yapmayı başka birine mentorluk yapmaktan daha çekici/ödüllendirmek zorundasınız.

Dolayısıyla, birinci adım iyi mentörlerle tanışma olasılığınız olan topluluklara katılmaktır.

İkinci adım, değerli bir mentör olmaktır. Şahsen, bir mentide aradığım bazı şeyler:

  • Zekâ benimkine yakın, ona eşit ya da daha büyük.
  • Öğretmek zorunda olduğum şeylere ilgi duyuyorum.
  • Kişiliğin uyumluluğu (yani iyi anlaşıyoruz, birbirimizle konuşmanın tadını çıkarıyoruz).
  • Kendisine danışmanlık yaptığım proje/topluluk için değerli olma isteği:

    • Kod Yazma
    • Belgeleri Yazma
    • Sorun kuyruğu triyajı, yorumları temizleme vb.
    • Daha az deneyimli katılımcılara yardım etmek
  • Her zamanki iş akışımla uyumluluk.
  • Öğretme yeteneği ben şeyler. Birinden daha deneyimli olmak, onlardan öğrenmeyi engellemez. En iyi mentinin doğru soruları sormak, yeni bir bakış açısı ya da öğrenebileceğim bilgi alanlarımın dışından bir tecrübesi vardır.
14
HedgeMage

Açık kaynaklı bir projeye katılın. Onlar için de programlamak zorunda değilsiniz. Çoğu proje birisinin dokümantasyon konusunda yardım etmesini ister. Koda bakıp sorular sorabilirsiniz. Rahat olduğunuzda onlar için kod yazmaya başlayabilirsiniz.

12
Jim C

Bir akıl hocasından ne bekliyorsun? Açık kaynaklı bir projenin veya yerel kullanıcı grubunun önerileri, ağ oluşturma ve olmak istediğiniz şeyden birkaç adım ötede birini bulma konusunda daha fazla olacak şekilde tasarlanmıştır, böylece size bir şekilde rehberlik etmelerine yardımcı olabilirler. Jamie Oliver veya Gordon Ramsay'dan yemek yapmayı öğrenmeye çalıştığını düşünün, günün sonunda oldukça eğlenceli ve yararlı olabilir.

Beklentilerinize bağlı olarak bir mentor bulmak kolay ya da şaşırtıcı derecede zor olabilir. Eğer aklınızı okuyabilen ve size adım adım sırlarını bir yıl veya daha kısa sürede müthiş bir hale getirecek birisini bekliyorsanız, bu gerçekçi olmayabilir. Aynı zamanda, bazı şeyleri sizden daha iyi yapabilen birini bulmak istiyorsanız, bunu yapmak o kadar da zor olmayabilir. Öncelikle beklentilerinizin ne olduğunu bulun.

İkincisi, şimdi ne istediğinizi bildiğinize göre onu bulmak zorundasınız. Bu, Kanada ve ABD'deki sanatlara sahip olduğumuz gibi becerilerini kullanarak geliştiricileri sergilemeye adanmış birçok yer olmadığı için oldukça zor olabilir, bu yüzden hayal ettiğim öneri verildi. MentorNet denememiş olsam da çalışabilecek bir program örneği olabilir, bir süre önce araştırdım ve benim ve ne istediğimi düşünmedim. Burada başka bir düşünce, arkadaşlarınız ve aileniz burada ne istediğinizi ne kadar iyi biliyor? İsterseniz size yardımcı olabilecek birini veya bir yeri tanıyabilirler. Bu kapsamlı bir cevap olmasa da, sorduğunuz şey biraz belirsiz ve umarım buna daha fazlasını ekleyebilirsiniz ve sonra ne istediğinizi ve nasıl istediğinize dair daha fazla ayrıntı verdikten sonra takip edeceğim Burger King değil ama bu şekilde çalışmayı deneyebiliriz.


C++ sunucu tarafı bileşen uzmanlarını bulmak oldukça zor olabilir. Yakınlarda orta öğretim sonrası kurumlar var mı? Muhtemel bir fikir olarak başka bir şeye dönüşebilecek becerileri olan birileri olabilir. O akıl hocasını bulma konusunda iyi şanslar.

6
JB King

Açık kaynaklı projeler, eklediğiniz belirli kod ve geri dönüşler için potansiyel olarak yeni yollar hakkında geri bildirim almakta harika, ancak anladığınız gibi, bu muhtemelen bir mentor ilişkisine yol açmayacaktır.

Daha önce bahsettiğiniz şeyleri öneririm ve bu kullanıcı grupları. Kullanıcı grupları genellikle oldukça sık toplanır, böylece potansiyel mentorlarla gerçek yüz zamanı elde edebilirsiniz. Bu yüz zamanı, daha hızlı ve daha kolay iletişim akışına izin verebilir. Herkesin aynı alanda olduğunu garanti eder mi? Hayır, ama bir yerden başlamalısın. Çok fazla deneyime sahip birini bulursanız, alan adınız konusunda size yardımcı olabilecek başka deneyimlere dayanarak yine de size yardımcı olabilirler.

4
Walter

Stack Exchange'de oturum açtığınız düşünüldüğünde, halihazırda kullanabileceğiniz birçok gayri resmi mentorunuz var. Kolayca soru sorabilir veya yardım etmeye motive olmuş birçok kişi tarafından kodunuzun incelenmesini sağlayabilirsiniz.

Daha yerel olarak, yüz yüze rehberlik veya öğretim istiyorsanız, harika seçenekler şunları içerir:

  • Kullanıcı grupları - Artıları: ücretsiz veya ucuz, herkese açık. Eksileri: Sık sık sistematik değil, topluluğunuzda bulunmayabilir.
  • Kooperatifler - Artıları: açık, ücretsiz/ucuz. Eksileri: daha az yaygın, ad-hoc, web için C++ daha olası.
  • Üniversite/kolej derecesi - Artıları: sistematik, yüksek kalite, saygın, kapıları açar, genellikle en azından bazı yüksek kaliteli fakültelere erişim sağlar. Eksileri: Rekabetçi kabul, büyük taahhüt, pahalı, yüksek yıkama oranı, bu nedenle yazılımı mesleğiniz yapmak isteyip istemediğinizi öğrenmek için pahalı bir yoldur, çalışma programı esnek olabilir, ancak sevmediğiniz veya istemediğiniz konular gerektirebilir zor bulmak.
  • Topluluk kolej sınıfları veya lisans programları. Artıları: Ucuz, iyi değer, eğitmenlerden daha fazla bireysel ilgi, kabul edilmesi kolay. Eksileri: Üniversiteden daha az prestij, ancak iyi bir öğrenci gittikleri her yerde iyi bir öğrencidir.
  • Profesyonel kuruluşlar - Artıları: iyi bir ağ oluşturma ve sürekli eğitim olabilir. Eksileri: Üyelik için hak kazanmak için alanda bir derece veya işe ihtiyacınız olabilir. Aylık toplantılar, kariyer olanaklı konularının sistematik olarak kapsanmasından ziyade, yeniliklerle ilgili geçici konular olabilir.
  • Meslektaşlar, kıdemli personel veya yöneticilerin işyerinde - Artıları: sık, hedefli, takdir/coşku/takip, kariyerinizi başka hiçbir şey gibi inşa edemez. Eksileri: iş mentorunuz yargılama moduna girerse ve hepsinin takılmasına izin verirseniz yanlış olabilir, bu tür bir mentor, küresel rekabet nedeniyle bir derece kazandıktan sonra anlamına gelebilecek bir işiniz olana kadar mevcut olmayabilir.
  • Coworking - Artıları: Güzel kaynaklar, harika insanlar, genellikle bir komün ve gelecekteki CEO'lar arasında bir haç. Eksileri: yaşadığınız yerde bulunmayabilir, paylaşılan alanda kira ödemesine yardımcı olmak için nakit taahhüdü içerebilir, uzayda birçok kişi kendi hesabına çalışacaktır, bu yüzden zamanlarına saygı göstermeli ve karşılıklı fayda sağlamak için yaratıcı yollar bulmalısınız.
3
DeveloperDon

Yerel Linux Kullanıcı Grubunuzu ( burada bir liste bulacaksınız) kontrol edebilirsiniz, genellikle katılımcıların çoğu programcıdır - veya en azından Perl bilgisayar korsanlarıdır. Ayrıca, onlara bir programlama akıl hocası bulmak için orada olduğunuzu söylerseniz, sizi seveceklerdir.

Craigslist'teki bir yazı denemeye değer olabilir, ancak buna bahse girmezdim.

Ayrıca, Almanya'da yaşıyorsanız, özellikle önerebileceğim birkaç yer var.

3
cbrandolino

forumların konuyla ilgili deneyleri olan bazı insanları bulmanın en iyi yolu olacağını düşünüyorum. Oradan başlamanız gerektiğine inanıyorum.

Google'da bazı c ++ sitelerini veya sorularınızı cevaplamaya hazır c ++ ninjaları olan sevgili arkadaşımız stackoverflow'u kontrol edin!

2
guiman

Bir şirket ortamında çalışıyorsanız, orada bir mentor arayabilirsiniz.

Açık kaynaklı bir projeye gelince, oluşturduğunuz bir proje için bir mentor bulacağınızdan şüpheliyim, ancak oluşturdukları bir projede bir tane bulabilirsiniz.

Mentorun da bu düzenlemeden bir şeyler alması gerektiğini unutmayın. Değerli zamanlarını size yardım etmek için harcıyorlar. Karşılığında onlar için bir şeyler yapmaya hazır olun.

1
Jim C

Programlamayı öğrenmek hırslı ve (bence this sitesindeki herkes aynı fikirde olacaktır) asil neden. Bununla birlikte, bir akıl hocası ile bile sıfırdan başlamak ve öğrenmek zor. Sanırım bir üs vermek için en azından bazı tanıtım dersleri almanın en iyi yol olacağını göreceksiniz.

Bir akıl hocası harika bir fikir ve 15 + yıl sonra ilk "gerçek" işimde sorularıma cevap veren adam olmadan bir kodlayıcı olarak burada olmazdım, ama gerçekte, tek bir kişi yapamaz size zaman ve rehberlik sağlamak için başarılı bir programcı olmanız gerekir. Muhtemelen tam zamanlı bir işi (veya ders yükü) olacaktır. Bu bir akıl hocası (veya akıl hocası) bulmamanız gerektiği anlamına gelmez, sadece başka bir şeye de ihtiyacınız olacaktır.

Bunun gibi siteler ve çevrimiçi öğreticiler, kitaplar ve diğer her şey bulmacanın parçalarıdır. Eğitim sınır parçalarını oluşturur.

Bu sizi caydırmak anlamına gelmez; aksine, gerçekçi beklentiler belirlemenin size başarıda daha iyi bir şans vereceğini düşünüyorum.

1
Wonko the Sane

"Bir programlama dahisini nasıl bulabilirim? Tek istediğim. Sadece dünyayı ele geçirmek için devasa bir robot ordusu inşa etmek istiyorum. Zekiyim ve yapay zekayı yazdım. Param var, etkisi, Bu iğrenç .NET veya JVM aptallığıyla uğraşmaktan rahatsız olamazım ... Hmm ... Nasıl .. Nasıl !? Damnit! "

Normalde bunu açıklamazdım ama Stack'dayız. Bazı insanlar bunu tam anlamıyla seviyorlar. Yararlı olarak birini (bir akıl hocası) bulursunuz. Yararlı olabilirsiniz, problemi çözerek çocukların (ya da - belki - beyinlerin - ya da (heh) paraların) çözmek istemediği problemleri çözerek.

Bu sorunları çözün Çekirge.

Ya da yapma. Bilgi çağı. DIY arkadaşım. Eğer kodla ilgili bir şey hakkında aptal ya da bilgili olduğunuzu ya da sizi ve daha sonra bazılarını vidalamaya hazır olan yatırımcının işleyişine benzemediğimiz bir şeyi anlatacağınızı söylemek için Stack gibi topluluklara bakın.

Ve bildiklerinizi paylaşın. Oluğunuzu bulduktan sonra kolektife biraz katılın. Bu 1700'lerde demircilik değil. Ebeveynleriniz kimseyi tanımak zorunda değildi (her ne kadar zanaat-bilgisini kendinize ayırmadığınızı ve lonca ile paylaşmadığınız zaman kesinlikle herkes takdir ediyor).

Sadece ilgilendiğine karar veriyorsun ve gidiyorsun. Oldukça acayip 'battığında güçlendirme. Biraz zaman alır (biliyorum) ama bana güven (eğer sadece bu saçma sapan bir noktada - evet, evet, korkutucu bir programcı olduğumu fark etmem on yıldan fazla sürdü) gerçekten önemli olan, temel yetenek seviyesine sahip olmanız ve gerçekten ilgilendiğinizdir. Eğer değilseniz, lütfen! # # $ Ve ilginizi çeken bir şey bulun.

Çünkü programlama/kodlama/kodlama aksi halde korkunç bir seçimdir. Ama bunu olumsuz, kötü bir noktada bırakmak istemiyorum. Eğer ilgileniyorsanız, ne kadar iyi olduğunuzu düşünmeyin. Sorular sor. Talep cevapları. Benim gibi uzun soluklu gaz/douche torbalarını doldur. İstersen oraya gideceksin.

Bulmaca sever misin? Çözmek için rastgele keyfi problemleri sever misiniz? Gladyatör filmlerini sever misin? İlk iki noktada tartışmasız, değil mi? Bir akıl hocası arama. Bir dili gerçekten iyi öğrenin, ilk dilinize giriş-beceri-seviyesi-kuyu noktasına aşırı derecede benzemeyen bir veya iki diğer dili öğrenin, bazı kitapları okuyun ve fikir sahibi olun. Sadece tamamen yanlış olup olmadığınızı görmek için onlara meydan okumanın tadını çıkarın ve ara sıra değiştirin. İçgüdülerinizin o kadar da kötü olmadığına şaşırabilirsiniz. İnsanlardan çıkıp yanlış soruyu sormak için yüzünüze tokat atmalarını isteyin ve bu olaya neden olanların çoğundan daha iyi bildiğinizi görebilirsiniz. Ama çoğunlukla, çözülmesi gereken bir problem. Çöz onu.

0
Erik Reppen