it-swarm.dev

Wie finde ich einen Programmier-Mentor?

Ich beschloss, Programmieren zu lernen. Ich lese seit einigen Tagen SO, und ich denke, ich werde mit C++ beginnen, wenn ich einige Artikel lese. Ich bin mir ein wenig der Schleifen, Arrays, Programmlogik und Objekte bewusst und ich Ich brauche jemanden, der mich ansieht und mir bei kleinen Fragen hilft, die ich bei meinen ersten Projekten bekomme.

Also hier ist die Frage - wo finde ich so einen Kerl? Ich habe keine Freunde, die programmieren und alles.

EDIT: 2 Jahre später suche ich noch einen Mentor. Ich habe nicht aktiv Code gerade erst 3 Monate wieder gestartet. Ich arbeite an Objective-C- und iOS-Programmierung und Spieleprogrammierung mit Cocos2d. Wenn Sie mein Mentor werden möchten, schreiben Sie mir einen Kommentar.

46
Dvole

Die Teilnahme an einem Open-Source-Projekt ist sicherlich eine Möglichkeit, um loszulegen. Ich benutze jedoch seit Jahren Open-Source-Software, und ehrlich gesagt liegt die Qualität bei fast allen derartigen Projekten im Allgemeinen in der Toilette. Wenn Sie Ihre Programmier- und Designfähigkeiten vollständig von ihnen lernen, werden Sie wahrscheinlich einige sehr schlechte zusammen mit den guten aufgreifen, ohne den Unterschied zwischen ihnen erkennen zu können.

Was möchten Sie Programmieren lernen für? Die Antwort darauf bestimmt, wonach und wo Sie suchen sollten. Hier sind einige allgemeine Antworten und meine berufliche Meinung dazu, wie man sie verfolgt (denken Sie daran, dass es ist nur eine Meinung, obwohl IMHO, genau):

Nur um zu sagen, dass Sie wissen, wie es geht.

Dann brauchen Sie keinen Mentor, und C++ ist ein schlechter Ausgangspunkt. Ich liebe C++, es ist meine erste Wahl für die allgemeine Programmierung, aber spiele stattdessen mit einer anderen Sprache. Ich würde Python vorschlagen; Es hat eine viel sanftere Lernkurve als C++ und im Gegensatz zu einigen Sprachen (keine Namen genannt, ich habe heute keine Asbestunterwäsche getragen) werden Sie noch einige nützliche Fähigkeiten erlernen, falls Sie später weiter darauf eingehen möchten. Viele der Konzepte können direkt in C++ übersetzt werden, wenn Sie diese Route fortsetzen möchten.

Nur um es auszuprobieren und zu sehen, ob es Ihnen gefällt.

Ein Open-Source-Projekt könnte dafür gut genug sein. Wählen Sie ein Programm aus, das Ihnen gefällt, bei dem Sie jedoch Probleme oder Irritationen festgestellt haben, und bieten Sie Ihre Hilfe jedem an, der es ausführt. Die meisten Open-Source-Projekte sind offen für Beiträge, deshalb sind sie in erster Linie Open-Source.

In diesem Fall versuchen Sie jedoch nicht C++ als Ihre erste Programmiersprache. Es ist nicht schwer, die Grundlagen zu beherrschen, aber C++ ist so niedrig, dass Sie einige schwerwiegende und sehr schwer zu findende Fehler in Ihren Programmen finden können. Wenn Sie nicht bereits wissen, dass Sie gerne programmieren oder so hartnäckig wie der sprichwörtliche Ochse sind oder bereits einen Mentor gefunden haben, der Sie in die richtige Richtung weist, wird dies Ihr aufkeimendes Interesse auf diesem Gebiet zunichte machen. Siehe die obige Antwort zu Python, dafür ist es besser geeignet.

Weil Sie eine Idee für ein bestimmtes Programm haben, das Sie schreiben möchten.

(Ich glaube nicht, dass das OP in diese Kategorie fällt, ich stelle es für spätere Leser ein.)

Haben Sie eine Vorstellung von der Zeit, die erforderlich ist, um das Programmdesign und die Implementierung zu beherrschen? Als Hinweis wird es in Jahren gemessen. Möglicherweise können Sie nach nur wenigen Monaten des Studiums ein halbwegs anständiges Design entwickeln, wenn Sie sowohl klug als auch äußerst glücklich sind, aber jeder mit ein wenig Erfahrung, der daran arbeiten muss (einschließlich Sie später), wird es tun Ich wünschte, du wärst nie geboren worden - ich spreche aus Erfahrung. :-) Wenn die Idee nicht so geheim ist, dass niemand sonst davon erfahren kann, bis sie fertig ist, kümmere dich nicht darum. Stellen Sie einen erfahrenen Programmierer ein, der dies für Sie erledigt, oder wenn Sie sich keinen leisten können, das Programm aber dennoch dringend genug wollen, bieten Sie an, mit einem Partner zusammenzuarbeiten - Sie kümmern sich um die geschäftliche Seite und lassen ihn den Programmierteil übernehmen. Die meisten guten Entwickler würden es vorziehen, zu programmieren, so dass sich diese Art von Angebot für sie lohnen kann.

Weil Sie bereits wissen, dass Sie vom Programmieren fasziniert sind und mehr erfahren möchten.

Dann sind Sie genau auf dem richtigen Weg. :-) Egal, ob es nur ein Hobby ist oder etwas, das Sie später in eine Karriere verwandeln könnten, wenn Sie die Art von Persönlichkeit haben, die es unendlich faszinierend findet, ist das Beste, was Sie tun können, sich darauf einzulassen. C++ ist in diesem Fall eine so gute Sprache wie jede andere, und ein Mentor wird definitiv helfen (und mit mehr als nur der Entwicklung Ihrer Fähigkeiten; es kann einsam werden ohne Freunde, die Ihre Leidenschaft teilen).

31
Head Geek

Um einen Mentor zu finden, suchen Sie keinen Mentor. Versuchen Sie, sich auf bestimmte Weise zu verbessern. Wenn Sie hart genug arbeiten, um besser zu werden, werden Sie beide feststellen, dass Sie mit Gleichgesinnten in Kontakt kommen und dass Sie mit diesen Menschen etwas gemeinsam haben.

Benutzergruppen sind wahrscheinlich der Ort, an dem ein Mentor gefunden wird, aber niemand möchte jemandem helfen, der dort denkt: "Ich suche einen Mentor." Aber wenn Sie dort denken: "Ich würde es lieben, wenn mir jemand helfen könnte, gute JavaScript-Komponententests zu schreiben" oder "Ich würde mich gerne mit jemandem paaren und eine Kata in Clojure testen", früher oder später Sie werden jemanden finden, der Ihre Interessen teilt und etwas weiter entfernt ist.

23
Eric Wilson

Die Leute, die wirklich gute Mentoren sind, haben normalerweise ein Dutzend Junioren, die zu einem bestimmten Zeitpunkt um ihre Zeit kläffen. Das Finden des richtigen Mentors ist also nur der Anfang. Sie müssen das Mentoring auch attraktiver/lohnender machen als das Mentoring eines anderen.

Schritt eins ist also, sich Gemeinschaften anzuschließen, in denen Sie wahrscheinlich gute Mentoren treffen.

Schritt zwei ist es, ein lohnender Mentee zu werden. Einige Dinge, nach denen ich persönlich bei einem Mentee suche, sind:

  • Intelligenz in der Nähe, gleich oder größer als meine eigene.
  • Interesse an den Dingen, die ich zu bieten habe und Spaß am Unterrichten.
  • Kompatibilität der Persönlichkeit (d. H. Wir verstehen uns gut, reden gerne miteinander).
  • Bereitschaft, für das Projekt/die Community wertvoll zu sein, in dem ich ihn/sie betreue, durch:

    • Code schreiben
    • Dokumentation schreiben
    • Scut-Arbeiten wie Triage von Problemwarteschlangen, Bereinigen von Kommentaren usw.
    • Hilfe für weniger erfahrene Mitarbeiter
  • Kompatibilität mit meinem üblichen Workflow.
  • Fähigkeit zu lehren ich Dinge. Erfahrener zu sein als jemand, schließt nicht aus, von ihm zu lernen. Der beste Mentee hat ein Händchen dafür, die richtigen Fragen zu stellen, einen neuen Standpunkt einzunehmen oder Erfahrungen von außerhalb meiner Wissensbereiche zu sammeln, aus denen ich lernen kann.
14
HedgeMage

Treten Sie einem Open Source-Projekt bei. Sie müssen auch nicht unbedingt für sie programmieren. Die meisten Projekte würden gerne jemanden haben, der bei der Dokumentation hilft. Sie können sich den Code ansehen und Fragen stellen. Wenn Sie es sich bequem gemacht haben, können Sie anfangen, Code für sie zu schreiben.

12
Jim C

Was erwartest du von einem Mentor? Bei den Vorschlägen eines Open-Source-Projekts oder einer lokalen Benutzergruppe geht es mehr darum, sich zu vernetzen und jemanden zu finden, der ein paar Schritte weiter ist als Sie, damit er Sie auf eine Art und Weise führen kann. Stellen Sie sich vor, Sie möchten von Jamie Oliver oder Gordon Ramsay kochen lernen. Am Ende des Tages kann es sehr unterhaltsam und nützlich sein.

Abhängig von Ihren Erwartungen kann es einfach oder erstaunlich schwierig sein, einen Mentor zu finden. Wenn Sie jemanden erwarten, der Ihre Gedanken lesen und Ihnen Schritt für Schritt die Geheimnisse geben kann, in einem Jahr oder weniger großartig zu sein, ist dies möglicherweise nicht realistisch. Wenn Sie jemanden finden möchten, der einige Dinge besser kann als Sie, ist dies möglicherweise nicht so schwer zu tun. Finden Sie also zuerst heraus, was Ihre Erwartungen sind.

Zweitens, jetzt wo Sie wissen, was Sie wollen, müssen Sie es finden. Dies mag ziemlich schwierig sein, da es nicht so ist, als gäbe es viele Orte, an denen Entwickler ihre Fähigkeiten einsetzen können, so wie wir die Künste in Kanada und den USA haben, weshalb der Vorschlag gegeben wurde, wie ich mir vorstellen kann. MentorNet wäre ein Beispiel für ein Programm, das möglicherweise funktioniert, obwohl ich es nicht ausprobiert habe. Ich habe es vor einiger Zeit recherchiert und nicht gedacht, dass es für mich ist und was ich wollte. Ein weiterer Gedanke hier ist, wie gut Ihre Freunde und Familie wissen, was Sie hier wollen? Sie kennen möglicherweise jemanden oder einen Ort, der Ihnen helfen kann, wenn Sie fragen. Obwohl dies keine umfassende Antwort ist, ist das, was Sie fragen, etwas vage und so können Sie hoffentlich mehr hinzufügen, und dann werde ich nachverfolgen, sobald Sie einige Details darüber geben, was Sie wollen und wie Sie es so wollen ist nicht Burger King, aber wir könnten versuchen, es so zu machen.


Experten für serverseitige C++ - Komponenten sind möglicherweise schwer zu finden. Gibt es in der Nähe postsekundäre Einrichtungen? Diese haben möglicherweise jemanden, der über die Fähigkeiten verfügt, die sich als mögliche Idee in etwas anderes verwandeln. Viel Glück bei der Suche nach diesem Mentor.

6
JB King

Open Source-Projekte sind großartig, um Feedback zu spezifischem Code zu erhalten, den Sie hinzugefügt haben, und möglicherweise neue Möglichkeiten, Dinge zu tun. Wie Sie jedoch herausgefunden haben, wird dies wahrscheinlich keine Mentor-Beziehung darstellen.

Ich würde vorschlagen, was Sie bereits erwähnt haben und das sind Benutzergruppen. Benutzergruppen versammeln sich normalerweise ziemlich häufig, damit Sie mit potenziellen Mentoren die tatsächliche Gesichtszeit erhalten. Diese Gesichtszeit kann einen schnelleren und einfacheren Kommunikationsfluss ermöglichen. Wird es garantieren, dass sich alle in derselben Domäne befinden? Nein, aber du musst irgendwo anfangen. Wenn Sie jemanden finden, der viel Erfahrung hat, kann er Ihnen möglicherweise immer noch bei Ihrer Domain helfen, nur basierend auf anderen Erfahrungen, die er gemacht hat.

4
Walter

Da Sie bei Stack Exchange angemeldet sind, stehen Ihnen bereits viele informelle Mentoren zur Verfügung. Sie können leicht Fragen stellen oder Ihren Code von vielen Personen überprüfen lassen, die motiviert sind, zu helfen.

Wenn Sie vor Ort Mentoring oder Unterricht von Angesicht zu Angesicht wünschen, stehen Ihnen folgende Optionen zur Verfügung:

  • Benutzergruppen - Vorteile: kostenlos oder günstig, offen für alle. Nachteile: Selten, nicht systematisch, ist in Ihrer Community möglicherweise nicht verfügbar.
  • Genossenschaften - Vorteile: offen, kostenlos/günstig. Nachteile: seltener, ad-hoc, wahrscheinlicher für das Web als für C++.
  • Universitäts-/Hochschulabschluss - Vorteile: Systematisch, von hoher Qualität, respektiert, öffnet Türen, bietet im Allgemeinen Zugang zu mindestens einigen hochqualifizierten Fakultäten. Nachteile: Wettbewerbsfähige Zulassung, großes Engagement, teuer, hohe Auswaschrate. Dies ist eine teure Möglichkeit, um herauszufinden, ob Sie Software zu Ihrem Beruf machen möchten. Das Studienprogramm kann flexibel sein, erfordert jedoch möglicherweise Themen, die Sie nicht mögen oder wollen schwierig finden.
  • Community College Klassen oder Studiengänge. Vorteile: Preiswert, preiswert, mehr individuelle Aufmerksamkeit von Ausbildern, leicht zuzulassen. Nachteile: Weniger Prestige als die Universität, aber ein guter Student ist ein guter Student, wohin auch immer sie gehen.
  • Berufsverbände - Profis: können gute Vernetzung und Weiterbildung sein. Nachteile: Möglicherweise benötigen Sie einen Abschluss oder eine Stelle in diesem Bereich, um sich für eine Mitgliedschaft zu qualifizieren. Monatliche Treffen können eher Ad-hoc-Themen zu Innovationen als eine systematische Berichterstattung über karrierefördernde Themen sein.
  • Bei der Arbeit von Kollegen, leitenden Angestellten oder Managern - Vorteile: Häufig, zielgerichtet, Wertschätzung/Begeisterung/Nachverfolgung werden Ihre Karriere wie nichts anderes aufbauen. Nachteile: Kann schief gehen, wenn Ihr Arbeitsmentor in den Beurteilungsmodus wechselt und Sie alles hängen gelassen haben. Diese Art von Mentor ist möglicherweise erst verfügbar, wenn Sie einen Job haben, was bedeuten kann, dass Sie aufgrund des globalen Wettbewerbs einen Abschluss erworben haben.
  • Coworking - Profis: Nette Ressourcen, großartige Leute, im Allgemeinen eine Kreuzung zwischen einer Gemeinde und einem Raum voller zukünftiger CEOs. Nachteile: Möglicherweise nicht verfügbar, wo Sie leben, kann eine Geldverpflichtung zur Zahlung der Miete für gemeinsam genutzte Flächen beinhalten. Viele in den Flächen sind selbstständig, daher müssen Sie ihre Zeit respektieren und kreative Wege finden, um die Vorteile gegenseitig zu nutzen.
3
DeveloperDon

Sie können Ihre lokale Linux-Benutzergruppe überprüfen ( hier Sie finden eine Liste). Normalerweise sind die meisten Teilnehmer Programmierer - oder zumindest Perl-Hacker. Wenn Sie ihnen sagen, dass Sie dort sind, um einen Programmier-Mentor zu finden, werden sie Sie lieben.

Ein Beitrag auf Craigslist könnte einen Versuch wert sein, aber darauf würde ich nicht wetten.

Wenn Sie in Deutschland ansässig sind, gibt es einige Orte, die ich besonders vorschlagen kann.

3
cbrandolino

ich denke, dass Foren der beste Weg wären, um einige Leute mit Fachkenntnissen in dieser Angelegenheit zu finden. Ich glaube, du solltest dort anfangen.

Testen Sie einige C++ - Websites auf Google oder vielleicht unseren lieben Freund Stackoverflow, wo viele C++ - Ninjas bereit sind, Ihre Fragen zu beantworten!

2
guiman

Wenn Sie in einem Unternehmen arbeiten, können Sie dort einen Mentor suchen.

Ich bezweifle, dass Sie für ein Open Source-Projekt einen Mentor für ein von Ihnen erstelltes Projekt finden, aber möglicherweise finden Sie einen für ein von ihnen erstelltes Projekt.

Vergessen Sie nicht, dass der Mentor auch etwas aus diesem Arrangement herausholen muss. Sie verbringen ihre wertvolle Zeit damit, Ihnen zu helfen. Seien Sie bereit, im Austausch für sie zu arbeiten.

1
Jim C

Programmieren zu lernen ist eine ehrgeizige und (ich denke, jeder auf dieser Seite wird zustimmen) edle Sache. Es ist jedoch schwierig, bei Null anzufangen und zu lernen, selbst mit einem Mentor. Ich denke, Sie werden feststellen, dass es der beste Weg ist, mindestens einige Einführungskurse zu belegen, um Ihnen eine Basis zu bieten.

Ein Mentor ist eine großartige Idee, und ich wäre nicht mehr als 15 Jahre später als Programmierer hier, ohne den Mann, der meine Fragen bei meinem ersten "richtigen" Job gestellt hat, aber in Wirklichkeit wird eine einzige Person nicht in der Lage sein Um Ihnen die Zeit und Anleitung zu geben, müssen Sie ein erfolgreicher Programmierer werden. Er oder sie wird wahrscheinlich selbst einen Vollzeitjob (oder eine Kursbelastung) haben. Das heißt nicht, dass Sie keinen Mentor (oder keine Mentoren) finden sollten, nur dass Sie noch etwas anderes brauchen.

Websites wie diese, Online-Tutorials, Bücher und alles andere sind Teil des Puzzles. Bildung macht die Grenzstücke aus.

Dies soll Sie nicht entmutigen; Im Gegenteil, ich denke, dass das Setzen realistischer Erwartungen Ihnen bessere Erfolgschancen bietet.

1
Wonko the Sane

"Wie finde ich ein Programmier-Prodigee? Es ist alles, was ich will. Ich möchte nur eine massive Roboterarmee aufbauen, mit der ich die Welt erobern kann. Ich bin schlau und habe die KI geschrieben. Ich habe das Geld, den Einfluss, Ich kann mich einfach nicht darum kümmern, mit dieser abscheulichen .NET- oder JVM-Dummheit umzugehen ... Hmm ... wie ... wie!? Verdammt! "

Normalerweise würde ich das nicht erklären, aber wir sind auf Stack. Einige Leute mögen es buchstäblich. Sie finden einen (einen Mentor), indem Sie nützlich sind. Sie können nützlich sein, indem Sie die Probleme lösen, die die Kinder mit der Erfahrung (oder - vielleicht - dem Verstand - oder (heh) Geld) nicht lösen wollen.

Lösen Sie diese Probleme Grasshopper.

Oder nicht. Es ist das Informationszeitalter. DIY mein Freund. Wenden Sie sich an Communities wie Stack, um zu erfahren, wenn Sie dumm oder weise in Bezug auf Code sind oder etwas, das wir nicht so leicht bekommen, wie die Machenschaften dieses Investors, der bereit ist, Sie zu verarschen, und noch einige mehr.

Und teilen Sie, was Sie wissen. Nimm ein bisschen am Kollektiv teil, sobald du deinen Groove gefunden hast. Dies ist keine Schmiedekunst im 18. Jahrhundert. Deine Eltern mussten niemanden kennen (obwohl sicherlich jeder es zu schätzen weiß, wenn du kein handwerkliches Wissen für dich hast und es mit der Gilde teilst).

Sie entscheiden einfach, dass Sie interessiert sind und Sie gehen. Ziemlich verdammt kraftvoll, wenn es einsinkt. Es dauert eine Weile (ich weiß), aber vertrau mir (wenn auch nur in diesem scheinbar absurden Punkt - ich habe über zehn Jahre gebraucht, um zu erkennen, dass ich ein verdammter Programmierer war), all das Wirklich wichtig ist, dass Sie das Basisniveau an Talent haben und dass Sie tatsächlich interessiert sind. Wenn nicht, bitte! @ # $ Off und finde etwas, das dich interessiert.

Weil Programmieren/Scripting/Codieren ansonsten eine schreckliche Wahl ist. Aber ich möchte das nicht in einem negativen, bösen Punkt belassen. Wenn Sie interessiert sind, machen Sie sich keine Sorgen darüber, wie gut Sie sind. Fragen stellen. Antworten verlangen. Ertrage total langatmige Gas-/Duschtaschen wie mich. Sie werden dort ankommen, wenn Sie wollen.

Magst du Rätsel? Mögen Sie zufällige willkürliche Probleme zu lösen? Magst du Gladiatorenfilme? Eindeutig zu den ersten beiden Punkten, ja? Suche keinen Mentor. Lernen Sie eine Sprache wirklich gut, lernen Sie eine oder zwei andere, die Ihrer Muttersprache nicht allzu ähnlich sind, bis zum Einstiegsniveau, lesen Sie einige Bücher und haben Sie einige Meinungen. Genießen Sie es, sie herauszufordern und gelegentlich zu ändern, auch wenn Sie nur sehen möchten, ob Sie nicht völlig falsch liegen. Sie könnten überrascht sein, wie oft Ihre Instinkte gar nicht so schlecht waren. Bitten Sie die Leute, herauszukommen und Ihnen ins Gesicht zu schlagen, weil Sie die falsche Frage gestellt haben, und Sie werden vielleicht feststellen, dass Sie es besser wissen als die meisten, die sich dieser Gelegenheit stellen. Aber meistens ist es ein Problem zu lösen. Löse es.

0
Erik Reppen