it-swarm.com.de

Wie kann ich herausfinden, ob die Programmierung für mich richtig ist?

Ich habe einen IT-Hintergrund und war ziemlich zuversichtlich, bis sich bei der Arbeit die Gelegenheit ergab, in die Programmierung (C #) einzusteigen. Ich habe noch nie zuvor programmiert, und die Software, für die ich programmiere, ist ein Programm, das ich noch nie zuvor verwendet habe (eine 3D-Modellierungssoftware).

Seitdem sind 6 Monate vergangen und ich möchte aufgeben. Ich habe nicht viel trainiert ... ungefähr 3 Wochen Training, verteilt auf die letzten 6 Monate.

Ich denke, ich wäre gut im Programmieren, aber diese Erfahrung lässt mich meine Entscheidung überdenken. Ich bin mir nicht sicher, ob es nur ich ist oder ob diese Frustration normal ist.

Wie kann ich herausfinden, ob die Programmierung für mich richtig ist?

22
user66414

Es gibt ein paar Dinge zu beachten, um in die Programmierung einzusteigen.

Zunächst einmal werden Sie nie alles über Programmierung wissen. Sie werden wahrscheinlich nie annähernd einen Bruchteil von allem kennen. Und wenn Sie jemals glauben, etwas zu wissen, wird etwas Neues herauskommen und das, was Sie wissen, wird veraltet sein.

Sie müssen also in Ordnung sein, ständig neue Dinge zu lernen und sich selbst beizubringen, was zu tun ist. Wenn Sie nicht damit einverstanden sind, viel Zeit damit zu verbringen, viel zu lernen, zu forschen und Dinge durch "fundiertes Ausprobieren" herauszufinden, sollten Sie nicht in die Programmierung einsteigen.

Zweitens ist es die Logik, die zählt, nicht die Syntax. Nur eine Sprache, ein Framework oder eine Technologie zu lernen, macht einen guten Programmierer nicht unbedingt aus. Sie müssen wirklich die Art von Verstand haben, die in der Lage ist, die Logik hinter dem Code zu verstehen - wie die Teile zusammenpassen, welche Art von Logik verwendet wird und wie der Computer Ihren Code interpretiert.

Es hört sich so an, als würden Sie mit einer einzigen Software und Sprache arbeiten, aber denken Sie daran, dass es noch viel mehr Sprachen und Technologien gibt. Beurteilen Sie sie nicht alle nach Ihrer Erfahrung mit einem von ihnen. Wenn die Syntax Sie frustriert, denken Sie daran, dass es immer andere Optionen gibt. Wenn Sie jedoch Probleme haben, die Logik hinter dem Code zu verstehen, ist die Programmierung möglicherweise nicht für Sie geeignet.

Und als letztes wählen Sie keinen Job, den Sie hassen. Sicher, Programmierung kann frustrierend sein, aber auch sehr lohnend. Wenn Sie die Zeiten bewältigen können, in denen Sie Ihren Kopf über ein bisschen Code gegen die Wand schlagen oder alles frustriert von Ihrem Computer löschen möchten und trotzdem Spaß am Codieren haben, sind Sie gut :)

87
Rachel

Mein Freund war viele Jahre lang Vielflieger, wollte aber immer Pilot einer Fluggesellschaft werden. Eines Tages nutzte er die Gelegenheit, um Boeing 747 zu fliegen. Nach ungefähr sechs Monaten wollte er aufgeben: Er dachte, er würde gut Flugzeuge fliegen, aber diese Erfahrung der letzten sechs Monate ließ ihn seine Entscheidung überdenken.

Natürlich mache ich Witze: Ich habe keinen solchen Freund. Und das aus gutem Grund: Jede Fluggesellschaft wäre verrückt, wenn jemand die Kontrolle über eine 747 übernehmen würde, bevor er einige Jahre mit einer Cessna fliegt, gefolgt von einigen Jahren mit mehrmotorigen Flugzeugen, gefolgt von einigen Jahren mit fliegenden Jets , gefolgt von einigen Monaten intensiven Trainings auf der 747.

Der Punkt meiner erfundenen Geschichte ist, dass selbst das einfachste 3D-Modellierungspaket das Äquivalent eines Softwareentwicklers zum Fliegen einer 747 wäre. Viele Programmierer würden sich davon einschüchtern lassen, selbst nach ein oder zwei Jahrzehnten in der Branche. Es ist nicht verwunderlich, dass Sie frustriert sind: Sie haben eine falsche Aufgabe für Ihr aktuelles Können übernommen!

Was sollte man tun? Zuerst würde ich den 3D-Modellierungs-Shop verlassen, einen Online- oder einen echten Programmierkurs belegen und mir ein Haustierprojekt zulegen, an dem Sie in Ihrer Freizeit arbeiten können. Versuchen Sie nach Abschluss des Kurses, eine Einstiegsposition in einem Geschäft zu finden, in dem Geschäftsanwendungen, mobile Apps oder anspruchsvolle Websites erstellt werden. Lernen Sie so viel wie möglich bei der Arbeit und üben Sie zu Hause, um Ihre Fähigkeiten noch weiter zu verbessern. In ein paar Jahren können Sie zu Ihrer 3D-Modellierungsfirma zurückkehren und dort ohne die geringste Frustration arbeiten.

24
dasblinkenlight

Möglicherweise haben Sie nicht den besten Weg gewählt, um das Programmieren zu lernen :)

Im Ernst, die 3D-Modellierung ist selbst für einen erfahrenen Programmierer eine sehr komplexe Domäne. Daher wird es schwierig sein, sie als erstes Projekt zu haben. Ich würde vorschlagen, ein paar gute Bücher zu besorgen und selbst an einfachen Projekten zu arbeiten. Wenn Sie gerne daran arbeiten, stecken Sie es weiter weg und Sie werden dorthin gelangen. Wenn Ihnen das nicht gefällt, ist es möglicherweise an der Zeit, Ihre Verluste zu reduzieren.

Ich werde keine Argumente über die besten Programmierbücher anfangen, aber ich denke, Sie werden auf SE zahlreiche Fragen zu Programmierreferenzen finden.

FWIW, ich programmiere seit 2.x in MS Windows und wenn ich in ein bestehendes 3D-Modellierungsprojekt springen würde, wäre ich auch für eine Weile frustriert :)

22
cdkMoose

Als ziemlich unerfahrener Softwareentwickler (2 Jahre Teilzeitarbeit) ist das langfristige Perspektive das, was mich am Laufen hält.

Mit jedem neuen Projekt, das ich beginne, habe ich ein besseres Verständnis dafür, wie ich reibungslos damit umgehen kann. Jede neue Sprache wird weniger schwierig. Meine Lösungen fühlen sich vollständiger an.

Hier ist meine Liste, was Sie als Programmierer fortsetzen sollten:

  • Sie möchten und in der Lage sein , selbst zu lernen. (d. h. mit Büchern, Foren, Dokumentationen, ... arbeiten)
  • Sie möchten Ihre Gedanken organisiert halten - Programmieren ist eine Möglichkeit, Denkprozesse auf Papier ( auf Computer ) zu bringen.
  • Sie sollten über eine ausreichende Belastbarkeit verfügen, wenn Sie sich ständig mit einer scheinbar endlosen Liste winziger Probleme befassen, die erst identifiziert werden müssen, bevor sie gelöst werden können.

Abgesehen davon gibt es meiner Meinung nach viele Gründe, das Programmieren zu mögen, und je mehr Sie es tun, desto mehr werden Sie die Freude erleben, in einem so kreativen und sich nicht wiederholenden Bereich zu arbeiten.

Bearbeiten: Wenn Sie Probleme mit etwas haben, versuchen Sie, genau zu bestimmen, wo das Problem liegt, und bringen Sie es dann zu einer der Stack-Exchange-Sites. Wenn Ihre Frage noch nicht beantwortet wurde, erhalten Sie bestimmt eine gute Antwort. Auf lange Sicht ist es auch gut für Sie, einige strukturierte Bücher über Programmierparadigmen, Software-Engineering und Algorithmen zu lesen. Die meisten importieren jedoch weiterhin Code - und wie die meisten Antworten hier vermuten lassen, finden Sie etwas Zeit, um an Programmen zu arbeiten, die nichts mit dem zu tun haben, was Sie bereits tun, auch wenn dies bedeutet, dass Sie Ihre eigenen Projekte erstellen, um von zu Hause aus zu arbeiten.

8
Rafael Emshoff

Es ist ganz einfach: Macht es Ihnen Spaß? Wenn Sie nicht dafür bezahlt würden, würden Sie es in Ihrer Freizeit zum Spaß tun? Wenn die Antwort Nein lautet, ist die Programmierung wahrscheinlich nicht richtig für Sie.

Das heißt nicht, dass Sie nicht lernen konnten, es gut genug zu machen, um erwerbstätig zu sein. Aber wenn du es nicht liebst, wirst du nie großartig darin sein. Und wenn es Ihnen nicht gefällt, worum geht es dann?

Ich habe mit 12 Jahren angefangen zu programmieren und ich habe es gemacht, weil ich wollte. Ich war 20 (und auf halbem Weg durch das College), bevor mir einfiel, dass ich das vielleicht für meinen Lebensunterhalt tun könnte. Es war nur eine Sache, die ich getan habe, weil ich es geliebt habe.

Ich glaube, dass die meisten Leute, die in etwas (irgendetwas) großartig sind, dies nicht tun, weil sie eine angeborene Fähigkeit haben, sondern weil sie eine ungesunde Besessenheit für dieses Ding haben.

4
zpasternack

Bin ich es oder habe ich Recht, frustriert zu sein?

Die Frage, die Sie sich wirklich stellen müssen, ist:

a) Programmieren Sie gerne? b) Fühlen Sie sich als die glücklichste Person der Welt, wenn Ihre Bewerbung funktioniert? - Wenn Ihr Antwort ist JA, machen Sie sich keine Sorgen mehr, lernen Sie einfach weiter und verbessern Sie Ihre Programmierkenntnisse.

Im Allgemeinen ist 3D-Modellierung - völlig anderer Bereich in der Programmierwelt wie eine Spielprogrammierung. Das kann Sie erschrecken oder Ihr Interesse nicht wecken. Keine Angst, halte einfach deine Motivation aufrecht, indem du Dinge lernst, die du nicht weißt. Setzen Sie Ihre kurzfristigen und langfristigen Ziele auf das, was Sie zum Aufholen und Lernen benötigen.

Edit : Die "3D-Modellierungssoftware" ist kein Hauptprogrammierbereich für Streams. So können Sie sehr spezifische Kenntnisse/Techniken erlernen, die nicht angewendet in anderen Bereichen (CRM, Buchhaltung, Gesundheitswesen usw.) sind. Wenn Sie "3D-Modellierung" NICHT interessant finden, nur Suchen Sie nach verschiedenen Geschäftsbereichen der Programmierung, die Ihr Interesse wecken.

2
Yusubov

Mein Rat an Sie ist, einige Zeit alleine mit C # und der Programmierung im Allgemeinen zu verbringen.

Mach ein kleines Spiel. Erstellen Sie ein einfaches Tool zum Organisieren Ihrer Fotos. Mach wirklich alles.

Wenn Sie Ihre eigene Zeit verbringen, werden Sie vielleicht Spaß am Programmieren haben. Wenn nicht, ist Programmieren nicht die Karriere für Sie. So oder so, arbeite weiter daran.

Eine Ressource, die zum Erlernen einiger Konzepte hilfreich sein kann:

http://msdn.Microsoft.com/en-us/library/618ayhy6.aspx (C # -Referenz)

2
Brad S

Wo war dein Hintergrund, wenn du vorher noch nie programmiert hast? Die meisten IT-Rollen hätten die Möglichkeit, etwas zu programmieren, wenn nur ein Makro oder ein Skript, um einen kleinen Teil des Puzzles zu automatisieren.

Sie haben ein Recht auf Ihre Gefühle. Die bessere Frage ist jedoch, was Sie gegen diese Frustration tun. Finden Sie Dinge heraus und bewegen Sie sich vorwärts? Welche Art von Feedback erhalten Sie über Ihre Arbeit? Wenn Sie Feedback erhalten, dass es großartig ist, haben Sie möglicherweise unrealistische Erwartungen an sich. Auf der anderen Seite, wenn Sie wenig bis gar kein Feedback bekommen, könnte ich verstehen, einige Ängste zu haben.

2
JB King

Sie hatten im Grunde keine Ausbildung und wurden in ein schwieriges Projekt verwickelt. Normalerweise verbringen die Leute mindestens drei Jahre damit, Dinge zu lernen, bevor sie überhaupt mit nicht trivialen Projekten beginnen. Es gibt keine Verlegenheit und es bedeutet auch nicht, dass das Programmieren nichts für Sie ist, wenn Sie es zu schwer finden.

Sogar ich hatte in meiner vierten Programmwoche Probleme: P.

2
DeadMG

Ich erinnere mich, dass ich mit einem Assembler auf einem Commodore VIC20 angefangen habe. Zuerst habe ich nur die Anweisungen für Hacks befolgt, die in Spielemagazinen veröffentlicht wurden, um mir unendlich viel Leben auf Jet Set Willy zu geben, oder was auch immer ich betrügen wollte. Ich hatte eine Neugier und eine Sehnsucht, die mich dazu brachte, meine eigenen Hacks zu erstellen und zu verstehen, wie und warum sie funktionierten. Dies führte mich dazu, meine ersten Programme zu schreiben.

Der Punkt ist, dass ich ziemlich lange total verwirrt war (nicht so lange wie 6 Monate, aber ich stimme zu, dass dies wahrscheinlich eine Funktion des Beginns mit der 3D-Modellierung ist), aber dann fiel der Penny plötzlich. Ich begann zu verstehen, wie der Code, den ich schrieb, in CPU-Anweisungen und Speicherreferenzen übersetzt wurde, und bald konnte ich einen ziemlich kompetenten Assembler schreiben. Natürlich arbeiten Sie jetzt 20 Level über der CPU, aber ich bin mir sicher, dass dieser Moment der Glühbirne eintreten wird, wenn Sie die Fähigkeit dazu haben.

Ich denke, ich wiederhole die Punkte, die zur Neugierde, zum Lernen und zum Zischen gebracht wurden, wenn Sie etwas schaffen, das wirklich synergistisch ist.

Wenn Sie einen Rat geben können, ist es "durchhalten und die Grundlagen der objektorientierten Programmierung lernen". Viel Glück.

2
Simon

Ihre Frustration ist völlig normal; Es ist wahrscheinlich, dass 3 Wochen Training völlig unzureichend sind. Sie können nicht wissen, ob die Programmierung für Sie richtig ist, indem Sie mit Ihrem Gehaltsscheck kopfüber in ein schwieriges Programmierprojekt geworfen werden.

Wenn Sie wirklich wissen möchten, ob das Programmieren "für Sie richtig" ist, lernen Sie in Ihrer Freizeit eine neue Programmiersprache und führen Sie einige Hobby-Programmierprojekte durch. Wenn Sie dies Erfahrung (die Programmiererfahrung ohne Fristen und Arbeitsdruck über Ihrem Kopf genießen), dann ist die Programmierung genau das Richtige für Sie.

Nun ... ob das bestimmter Programmierjob für Sie richtig ist ... Ich würde mich persönlich zu einem nein neigen. Sprechen Sie mit Ihrem Manager über Ihre Frustration und erwägen Sie, einen Job zu finden, der entweder besser zu Ihren aktuellen Fähigkeiten passt oder ein besseres Schulungsprogramm verspricht. Ich kann die Details Ihrer speziellen Situation nicht kennen, aber es scheint mir, dass es sowohl für Sie als auch für das Unternehmen ein schlechter Dienst war, Sie für diese Position einzustellen, ohne angemessene Schulungszeit bereitzustellen. Wenn sie nicht vorhatten, besser zu trainieren, hätten sie dich nicht einstellen sollen. Trotzdem ist die Schule der harten Schläge so gut wie jede andere Schule. Auch hier ist die beste Vorgehensweise, mit Ihrem Manager zu sprechen und zu sehen, wie er oder sie Ihre aktuelle Leistung bewertet und auf Ihre Frustration reagiert.

2
Dan Burton

Die 3D-Grafikprogrammierung ist eine Nische, in die selbst die meisten etablierten Softwareentwickler lieber nicht einsteigen würden. Ich arbeite viel mit OpenGL und kenne das aus erster Hand. Hoffentlich besteht Ihre ganze Arbeit darin, mit Szenegraphen auf einer höheren Ebene zu arbeiten, aber wenn Sie wie ich tief im Bauch sind. Für einen neuen Programmierer ist das wie ein Baby, das läuft ... in einem 100-Meter-Sprint ... mit Usain Bolt ... mit dem zusätzlichen Druck von Menschen, die tatsächlich realistische Erwartungen haben, dass das Baby das Rennen gewinnt.

Es geschehen jedoch Wunder, und alle Hoffnung ist nicht verloren.

Ich vertraue darauf, dass Sie dies bereits tun, aber Sie müssen nicht nur Tutorials zum Programmieren durchführen (dies ist bei weitem die kleinste Herausforderung), sondern auch Dinge über 3D-Grundlagen und Koordinatensysteme lesen. Verstehe die Mathematik beim Zeichnen von Polygonen, beim Übersetzen, bei der Rotation (Gott helfe dir, wenn Quarternion), bei Matrizen usw.

Aber im Ernst, sind Sie sicher, dass Sie damit weitermachen möchten? Was ist dir wichtiger? dieser Job oder eine ganze Reihe von Haaren?

2
Glstunna

Das Programmieren erfordert viel Antrieb und Engagement, um an den Punkt zu gelangen, an dem Sie wissen, was Sie tun, und außergewöhnlich gut darin sind, das zu tun, was Sie wissen.

Damit Sie wirklich erfolgreich sind, muss das Programmieren zu einem Lebensstil werden. eher als ein gewünschter Beruf. Es muss zu einer Obsession werden, die am Widerstand beginnt und sich auf das gesamte Netzwerk erstreckt, aus dem das Internet besteht.

Persönlich empfehle ich Ihnen, dabei zu bleiben, weil ich auch persönlich viel zu kämpfen hatte. Ich konnte erst ungefähr ein Jahr und einige Monate, nachdem ich angefangen hatte, Vollzeit Informatik zu studieren (oft mehr als 12 Stunden am Tag), wirklich anfangen, wie ein Programmierer zu denken.

Ich verbrachte die ganze Zeit damit, alles zu studieren, was ich im Internet über Computer verstehen konnte. Ich nutzte die Komplexität der Programmierung, um mich jedes Mal, wenn ich überwältigt war, noch störrischer und motivierter zu machen. Ich habe viel Zeit damit verbracht, den Code anderer Leute zu lesen und ihn manuell in mich selbst einzugeben. Wann immer ich etwas fand, das ich nicht verstand, habe ich es nachgeschlagen. Jeden Tag tiefer und tiefer in meine erzwungene Faszination und Besessenheit eintauchen. (Ich hatte sogar Programmierträume, in denen ich mit Programmen über Binär kommunizierte, Too deep! Lmao)

Es war nicht immer einfach. Ich hatte definitiv das Gefühl, dass ich nicht die ganze Zeit dafür geeignet war, aber eines Tages konnte ich einfach einsteigen und anfangen, wie verrückt zu programmieren. Mit jeder Zeile, die ich mir vorstellte, machte es für mich immer mehr Sinn. Alles begann so weit zusammen zu kommen, dass ich meinen Code nur wenige Stunden später noch optimaler und effizienter umschreiben konnte.

Danach habe ich nie daran gezweifelt, Programmierer werden zu können. Man muss es wirklich wollen. Es gibt nicht viele Menschen, die das erforderliche Engagement haben, um den Sturm zu überwinden, der erforderlich ist, um sich zu einem Informatiker zu entwickeln.

Wenn Sie jedoch tatsächlich an einem Punkt angelangt sind, an dem Sie komplizierte Softwaresysteme erstellen können, die aus Ihrer Kreativität und Ihrem Einfallsreichtum hervorgegangen sind, übersteigt die Belohnung für Ihre Leistung den Kampf, den Sie durchmachen mussten, um Erfolg zu haben, bei weitem.

1
mortdeus

Ich denke, die eindeutigste Frage, die Sie sich stellen sollten, lautet: "Lernen Sie gern?"

Anhand dieser einfachen Frage wissen Sie, ob die Programmierung mit einer angemessenen Wahrscheinlichkeit für Sie geeignet ist. Wenn Sie nicht gerne lernen, dann nein, Sie werden wahrscheinlich nicht gerne programmieren. Beim Programmieren geht es zu 5% darum, Code zu schreiben, zu 10% darum, wie Ihr Code funktionieren soll, und zu 85% darum, zu lernen, wie man besseren Code schreibt und bessere Designs erstellt. (und das ändert sich nicht! Ich programmiere seit mehr als 8 Jahren und lerne immer noch!)

Jetzt können Sie natürlich gerne lernen und nicht gerne programmieren, aber da Sie gerne lernen, versuchen Sie, einige Programme zu erstellen! Sie können jedoch bei der anfänglichen Lernkurve nicht aufgeben, besonders bei so vielen einfachen Sprachen. Also geh raus und schreib einen Code!

1
Earlz

Ich habe kürzlich ein Buch über C # weggeworfen - da es für mich keinen Wert hat.

Aber ich kann bestätigen, dass Frustration und Fehler als "normal" angesehen werden.

Es ist zwar keine Frist, die im Nacken sitzt - keine Sorge.

Auf der anderen Seite - wenn es einmal wie ein Zauber wirkt, kann es tatsächlich Spaß machen.

Wenn Sie außergewöhnliche Ergebnisse liefern, werden Sie möglicherweise "Sir" genannt :)

In Bezug auf Ihre Frage, ob es der richtige Job für Sie ist - dies hängt davon ab, ob Sie jeden Tag neue Dinge lernen möchten - ob oder nicht. Auch wenn Sie die Geduld und die Nüsse haben, um Probleme anzugehen.

Ich wende ständig die TDD-Methodik an - aber das Erlernen dauert mehrere Jahre. Ein 3-wöchiger Schnellstartkurs bringt Sie vielleicht nirgendwo hin. Es geht darum, Fehler zu machen und daraus zu lernen.

Jeder hasst Fehler und Fehlfunktionen - aber man kann mit ihnen wachsen. Was ich meine ist, dass es nicht unbedingt schlecht ist, Fehler zu machen (oder sogar zu provozieren).

Der wahrscheinlich beste Tipp, den ich Ihnen geben kann, ist, die Dinge in kleinere Meilensteine ​​zu zerlegen.

Denn wenn die von Ihnen gesetzten Ziele völlig unerreichbar sind, führt dies zu Frustration.

Ich habe das Debuggen auf einem Nintendo SNES gelernt - ich habe wie eine Hacke geschummelt und Geld von einem Konsolenmagazin bekommen, um sie mit neuen Cheats zu versorgen. Später bekam ich einen Atari ST und lernte, Omikron Basic zu programmieren ... und ich bin immer noch hier, derzeit selbstständig als JS-Assistent :)

Ihre Situation ist, wie beschrieben, eher "auf die harte Tour lernen" ... Ich würde auch vorschlagen, sie mit viel grundlegenderen Anwendungen zu lernen. Eine gute Sprachreferenz ist alles, was man braucht, und vielleicht gute Beispiele.

1
Martin Zeitler

Beim Programmieren geht es zuerst um Problemlösung. Die Sprache ist zweitrangig. Sobald Sie mit dem Schreiben Ihres ersten Programms beauftragt sind (Sie werden den Code übrigens nicht beim ersten Mal selbst schreiben - weil alles geschrieben wurde) und das Rätsel lösen ... stellen Sie die Verbindung her, Sie werden es wissen genau dann und dort, wenn Sie Programmierer werden möchten.

0
aserwin