it-swarm-eu.dev

Techniken zur Erhöhung der Logik bei der Programmierung

Ich programmiere seit 3 ​​Jahren. Aber ich scheine darin verloren zu sein. Ich kann es nicht gut, obwohl ich jeden Tag programmiere.

angenommen, ich löse ein Problem, ich werde von Lösung zu Lösung wandern und eine andere Lösung implementieren. Ich kann mich nicht viel konzentrieren. Ich bekomme viele Fehler für den Code, den ich schreibe. Ich habe Angst vor Code. Ich weiß nicht, warum mein Chef mich feuert, wenn ich ihn nicht rechtzeitig beende. Ich genieße das Codieren, aber nicht die ganze Zeit. Wie kann man die Geduld steigern?

Ich frage mich immer, wie ich wie viele außergewöhnliche Programmierer der beste Programmierer werde. Ich weiß, dass dies subjektiv klingt, aber ich denke, dass dies der Programmierer-Community helfen wird, besonders für Durchschnittsbürger wie mich oder Anfänger-Programmierer gut darin zu werden.

21
Umesh K

Ich persönlich würde vorschlagen, mit kleineren Hürden zu beginnen. Versuchen Sie, in kleineren Stücken zu programmieren, und holen Sie sich mehr in die Zwischensiege. Es hört sich so an, als ob Sie entweder überfordert oder gelangweilt sind, wenn etwas zu lange dauert oder keinen Fortschritt zeigt. Ich kann definitiv sagen, dass ich im selben Boot war.

Stellen Sie sich das vor, als würden Sie ein Sandwich in Angriff nehmen: Sie essen nicht alles auf einmal, sondern zerlegen es. Machen Sie dasselbe mit Ihren Projekten, Aufgaben usw. Je nachdem, auf welcher Ebene Sie sich befinden, möchten Sie möglicherweise Ihren Vorgesetzten/Manager bitten, diese für Sie aufzuschlüsseln. Wenn Sie für Ihre eigene Arbeitsbelastung verantwortlich sind, setzen Sie sich kleine Ziellinien, die erreichbar sind (setzen Sie sich kein Ziel, das Sie nie erreichen werden, dies entmutigt Sie nur und bringt Sie in eine unerwünschte Position). d.h. "Bis Mittag möchte ich diese Klasse definieren lassen", "Bis 2 möchte ich, dass diese Schnittstelle implementiert wird" usw.

Mein Unternehmen ist dafür berüchtigt, ein Projekt zu beginnen und in Angriff zu nehmen, sodass ich die 90% -Marke erreichen und dann den Teppich unter mir herausziehen kann, um zum "nächsten großen Ding" überzugehen. Ich fange an, mich zu entmutigen, dass ich nie etwas erledige, und bringe mich in einen "Funk" (wenn Sie so wollen). Schließlich schob ich mich zurück und sagte ihnen, dass ich nicht weitermachen würde, bis ich fertig bin, worauf ich fast fertig war. Dies hat Wunder für meine Wertschätzung, Moral und Energie gewirkt (obwohl ich über meine Arbeitgeber nicht dasselbe sagen kann: Achselzucken :)

12
Brad Christie

Mein Vorschlag wäre, einen Mentor zu bekommen.

Wenn Sie ein neues Projekt erhalten, entscheiden Sie, welchen Weg Sie einschlagen möchten: Wie sieht das Gesamtdesign aus? Welche Algorithmen werden Sie verwenden? Wie wollen Sie es entwickeln, damit Sie früh und häufig testen können? und so weiter.

Bringen Sie diese Pläne zu Ihrem Mentor und besprechen Sie sie mit ihm. Wenn sie sehen, dass Sie auf dem falschen Weg sind oder etwas Wichtiges verpasst haben, überarbeiten Sie Ihre Pläne und versuchen Sie es erneut.

Nachdem Sie einen genehmigten Plan haben, halten Sie sich daran. Ändern Sie Ihre Pläne nur, wenn etwas völlig Katastrophales passiert, und überarbeiten Sie dann Ihre Pläne, holen Sie die Genehmigung ein und starten Sie sie neu. Ansonsten halten Sie sich an Ihren Plan und erledigen Sie genau das, wofür Sie sich entschieden haben. Wenden Sie sich in regelmäßigen Abständen an Ihren Mentor, um Ihre Implementierung zu validieren, und stellen Sie sicher, dass Sie unterwegs Tests schreiben und verwenden.

Wenn Sie alle oben genannten Schritte erfolgreich ausgeführt haben, haben Sie ein Projekt pünktlich und mit korrekten Ergebnissen geliefert. Wenn Sie zurückgehen und einen Teil des Projekts umgestalten möchten, haben Sie alle von Ihnen erstellten Tests sowie eine Arbeitskopie des Programms, aus dem Sie erstellen können.

Es klingt für mich, als ob Sie nur ein bisschen zu verstreut und nicht konzentriert sind. Wenn Sie diese Bereiche reparieren und mit jemandem zusammenarbeiten können, den Sie respektieren, werden Sie vielleicht früh genug auf dem richtigen Weg sein.

Viel Glück für Sie.

7
unpythonic

Ich glaube, ich bin genau in der gleichen Position wie Sie und es ist nicht schön, dort zu sein. Es kann demorilisierend und, um ehrlich zu sein, manchmal ziemlich deprimierend sein. Wie bei allem, was ich glaube, gibt es jedoch bestimmte Dinge, die Sie tun können, um dies zu mildern und so zu einer gesünderen und glücklicheren Arbeitskarriere zu gelangen.

  1. Man muss sich ändern und besser werden wollen. Wenn Sie sich so fühlen, aber nicht bereit sind, in die harten Höfe zu gehen, um Ihre Fähigkeiten zu verbessern, dann kann niemand viel für Sie tun.

  2. Einige Leute sind natürlich brillant. Einige Leute arbeiten hart, um brillant zu sein. Die meisten Menschen arbeiten nur hart, um brillant zu sein. Wenn Sie nicht von Natur aus talentiert sind (Programmieren oder auf andere Weise), kann harte Arbeit Sie dorthin bringen. Nur das Niveau der harten Arbeit wird variieren. Nichts ist unmöglich.

  3. Akzeptiere deine Mängel und versuche dich zu verbessern. Eine der größten Hürden, die ich sehe, sind Menschen, die Angst haben zu akzeptieren, dass ihr Weg kein guter Weg ist, und deshalb niemals Rat suchen oder andere Wege diskutieren, um Dinge zu tun. Daher lernen sie nie bessere Praktiken und machen daher immer wieder dieselben Fehler.

  4. Fragen Sie diejenigen, die Sie für gute Programmierer halten, um Rat. Haben Sie niemals Angst zu sprechen und Kollegen um Rat zu fragen. Nehmen Sie ihren Rat jedoch immer zum Nennwert und entscheiden Sie selbst, ob Sie damit einverstanden sind oder nicht. Egal wie brillant jemand ist, es gibt immer viele Möglichkeiten, eine Schleife zu programmieren.

  5. Lesen Las gelesen. Lesen Sie Newsgroups. Stellen Sie Fragen auf solchen Websites (gut gemacht). Kaufen Sie Bücher, von denen Sie gehört haben, dass sie gut sind, oder fragen Sie anders nach Empfehlungen.

  6. Explicity wendet Designprinzipien in kleinen Schritten an und ist dann stolz auf das, was Sie getan haben. Wenn Sie stolz auf Ihren Code sind, ist die Wahrscheinlichkeit, dass Fehler und Bugs auftreten, geringer.

  7. Offen für Vorschläge und Hilfe. Für eindimensionales Denken geschlossen. Seien Sie offen für viele Möglichkeiten und Methoden. Achten Sie auf diejenigen, die glauben, dass es für alles einen Weg gibt. Ein bisschen wie 4.

  8. Ein brillanter Programmierer zu sein ist nicht dasselbe wie ein brillanter Mitarbeiter zu sein. Wenn Sie nur ein brillanter Programmierer sein wollen, werden Sie, um ehrlich zu sein, vielleicht nie dorthin gelangen. Jeder hat jedoch die Fähigkeit, ein brillanter Mitarbeiter und eine brillante Person zu sein. Arbeiten Sie an Dingen, die Ihnen dabei helfen können, dorthin zu gelangen.

6
dreza

Wenn Sie nach 3 Jahren täglicher Codierung mit den Grundlagen zu kämpfen haben, müssen Sie ernsthaft über die Möglichkeit nachdenken, dass dies nicht der richtige Beruf für Sie ist.

Das ist keine schlechte Sache. Programmieren ist nicht jedermanns Sache. Finden Sie heraus, was Sie können, und tun Sie das, anstatt sich etwas aufzuzwingen, das einfach nicht natürlich ist.

Wenn das, was Sie sagen, wahr ist, werden Sie Nie ein "außergewöhnlicher Programmierer" sein. Das ist in Ordnung, akzeptiere es einfach.

4
Morons

Brechen Sie es in kleine Stücke.
Lassen Sie mich demonstrieren, wie man ein PB & J-Sandwich macht.

Finden Sie den gesamten grundlegenden Prozess heraus.

1 - Get Ingredients
2 - Combine Ingredients
3 - Cut Sandwich
4 - Serve Sandwich

Dann brechen Sie jede dieser auf

**Get Ingredients**
1 - Validate/Create PB
1.1 - Validate/Create Jelly
1.2 - Validate/Create Bread
2 - Move PB To Assembly area
...

wiederholen Sie den Abbauprozess, bis Sie die Logik vollständig verstanden haben.

Dies erleichtert das Verständnis. Und es ist einfacher, gängige Prozesse zu identifizieren. Bevor Sie mit dem Codieren beginnen, stellen Sie sicher, dass Sie die Logik bereits herausgefunden haben. Fehler zu machen ist nicht nur in Ordnung, es wird auch erwartet. Es ist viel einfacher, sie zu finden, bevor Sie sie implementieren.

Oft ist die Logik der schwierigste Teil der Programmierung. Deshalb will es nicht jeder tun. Wenn Sie die Logik nicht mögen, aber das UI-Design lieben, gibt es Rollen, die sich darauf spezialisiert haben und in denen Sie möglicherweise mehr Spaß haben. Daran ist nichts auszusetzen. Ich persönlich ziehe die Logik der Benutzeroberfläche vor. Es gibt auch andere Rollen, wenn die Logik nicht dort ist, wo Sie sein möchten, um herauszufinden, wo Sie sein möchten.

3
SoylentGray

Versuchen Sie, sich in einen Flow Geisteszustand zu versetzen. Das ist der wichtigste Faktor, den ich als guter Entwickler gesehen habe. Um dies zu erreichen, müssen Sie sich Herausforderungen stellen, von denen Sie wissen, dass Sie sie bewältigen können, die jedoch schwierig sind. Sie müssen das richtige Maß an Herausforderung finden, um sich darauf einzulassen. dann können Sie es schrittweise erhöhen, wenn Sie besser werden. Aufgaben, die entweder zu einfach oder zu schwer sind, sind nachteilig.

3
configurator

Ich hatte diese Art von Problem schon einmal. Es passierte kurz bevor ich ausgebrannt war und konnte danach fast ein Jahr lang nicht auf einem produktiven Niveau programmieren (und ich war damals erst 19 Jahre alt).

Wenn ich zurückblicke, war das Problem, das ich hatte, mangelnde Anleitung und mangelndes Management. Ich würde ein oder zwei Monate lang daran arbeiten, etwas zu implementieren, und dann, wenn es fast fertig war, muss es plötzlich auf eine ganz andere Art und Weise gemacht werden. Dies war ein schwerer Schlag für mein Selbstwertgefühl, da ich ziemlich stolz auf jede Codezeile bin, die ich schreibe. Auch das Management bestand hauptsächlich aus ein paar Stunden Diskussion darüber, wie etwas funktionieren sollte, und dann ein paar Tagen, in denen nichts besprochen wurde. Einiges davon war natürlich auch meine Schuld. Dies wurde auch durch die Tatsache verstärkt, dass die Arbeit irgendwann extrem mühsam wurde und ich das Gefühl hatte, nur Code zu tippen und überhaupt nicht kreativ zu sein.

Generelle Richtlinien:

  1. Wenn Sie das Gefühl haben, dass die Richtung fehlt, sprechen Sie sie an. Fragen Sie Ihren Vorgesetzten nach mehr Struktur, wohin die Dinge gehen
  2. Wenn Sie ständig Code löschen müssen (und dies nicht wie beim Refactoring), fragen Sie sich ernsthaft, warum vor der Implementierung kein vollständigerer Plan erstellt wurde
  3. Wenn Sie sich in einem sehr kleinen Startup befinden und als "Lead" -Entwickler fungieren, wenn Sie eindeutig keine Erfahrung damit haben, schlucken Sie Ihren Stolz und sagen Sie Ihrem Manager, dass Sie wirklich eher ein Junior-Entwickler sind.
  4. Tedium entsteht normalerweise dadurch, dass keine Arbeit erledigt wird. Nehmen Sie Ihre Aufgaben in kleineren Bissen und verfolgen Sie Ihren Fortschritt. Dies wird dazu beitragen, das Gefühl zu haben, dass Sie etwas erledigen
  5. Wenn alles andere fehlschlägt, möchten Sie sich möglicherweise an einer anderen Stelle bewerben, insbesondere wenn es Ihrem Manager nicht wichtig zu sein scheint, dass Sie auf einen Burnout zusteuern
2
Earlz