JavaRush /Java-Blog /Random-DE /Kaffeepause Nr. 55. 4 Tipps für die Suche nach einer Entw...

Kaffeepause Nr. 55. 4 Tipps für die Suche nach einer Entwickler-Community. 5 unerwartete Fähigkeiten, die ein Programmieranfänger beherrschen muss

Veröffentlicht in der Gruppe Random-DE

4 Tipps zum Finden einer Entwickler-Community

Quelle: Honeypot Einer der Faktoren, die Entwicklern bei ihrer beruflichen Entwicklung helfen, ist die Community, der sie angehören. Wenn Sie Ihres noch nicht gefunden haben, machen Sie sich keine Sorgen! In diesem Artikel erkläre ich Ihnen, wie das geht. Der Mensch ist nicht dazu bestimmt, allein zu sein. Durch die Fähigkeit zur Zusammenarbeit zur Erreichung eines gemeinsamen Ziels hat die Menschheit Fortschritte erzielt. Ein gutes Beispiel für eine solche Zusammenarbeit ist die Entwicklergemeinschaft. Im Gegensatz zu einigen anderen professionellen Branchen interagieren Entwickler sehr häufig miteinander und ein Großteil ihres Lebens ist irgendwie mit den Gemeinschaften verbunden, die sie um sich herum aufbauen. Wenn Sie Entwickler sind, aber Ihre Community noch nicht gefunden haben, verzweifeln Sie nicht. Sie können in jeder Phase Ihrer Karriere bei einem von ihnen einsteigen.Kaffeepause Nr. 55.  4 Tipps für die Suche nach einer Entwickler-Community.  5 unerwartete Fähigkeiten, die ein Programmieranfänger beherrschen muss – 1

1. Finden Sie heraus, was Sie brauchen

Bevor Sie sich in die Online-Abgründe stürzen, um Ihre Entwickler-Community zu finden, sollten Sie herausfinden, was genau Sie brauchen und wonach Sie suchen. Jede Phase der beruflichen Laufbahn eines Entwicklers hat ihre eigenen Interessen und Unterschiede. Wenn Sie Java lernen, werden Sie die gesuchten Informationen wahrscheinlich nicht in der Python-Community finden und umgekehrt.

2. Suchen Sie nach lokalen Gemeinschaften

Jessica, Mitglied des Ember-Programmierteams, lebt in Berlin. Glücklicherweise bietet die Stadt viele Möglichkeiten, sich mit anderen lokalen Entwicklern zu vernetzen. „Ich hatte viel Erfahrung in Berufsgruppentreffen und war lange Zeit Teil der Open Technology School, die Menschen dabei hilft, mehr über Technologie zu lernen.“ Das Mädchen nahm an Seminaren und koedukativen Gruppen teil und fand es für Anfänger sehr nützlich. „Ich wurde von anderen Studierenden unterstützt und erhielt ein kostenloses Mentoring. Man könnte sagen, dass es mir ein Verantwortungsgefühl vermittelte, mir half, regelmäßig zu Meetings zu kommen, und mich ermutigte, selbstständig zu lernen.“ Um Ihre lokale Community zu finden, empfiehlt Jessica eine Suche bei Google. Wenn Sie in einer Großstadt leben, werden Sie wahrscheinlich keine Probleme haben, lokale Programmiergemeinschaften zu finden, denen Sie beitreten können. Allerdings kann es vorkommen, dass einige dieser Gruppen in sozialen Netzwerken nicht mehr aktiv sind oder schon seit längerem keine Nachrichten mehr dort gepostet haben. Scheuen Sie sich in solchen Situationen nicht, direkt zu fragen, ob in der Community noch etwas los ist. Interesse zu zeigen ist immer willkommen.

3. Finden Sie eine Online-Community

Es gibt eine Reihe von Vorteilen, andere Entwickler persönlich zu treffen. Wenn Ihr Zugang zu lokalen Communities jedoch eingeschränkt ist, ist es fast sicher, dass Sie online eine Alternative finden. Möglicherweise arbeiten Sie bereits mit verschiedenen Frameworks oder Technologien, die über eigene Communities auf Discord oder Slack verfügen. Dies eignet sich sowohl zur Unterstützung bei der Arbeit als auch zur Inspiration für neue Projekte, Ideen und sogar zur Teilnahme an offenen Projekten.

Hier finden Sie einige Orte, an denen Sie Ihre Online-Community finden können

dev.to . In ihren eigenen Worten: „Die Softwarebranche setzt auf Zusammenarbeit und vernetztes Lernen“, und dev.to bietet Entwicklern einen Raum, in dem sie sich treffen und gegenseitig helfen können, sei es bei technischen Aspekten der Codierung, Karriereberatung oder allgemeiner Unterstützung und Motivation. #Entwickler auf Slack . Sie müssen ein paar Fragen beantworten, um Zugang zu diesem Kanal zu erhalten, aber sobald Sie drin sind, erhalten Sie die gesamte Unterstützung und Beratung, die Sie benötigen :) Hashnode . Schreiben Sie einen Artikel zu einem beliebigen Programmierthema und interagieren Sie mit der breiteren Community. Dies ist eine großartige Möglichkeit, mit anderen Entwicklern in Kontakt zu bleiben. Frauen, die programmieren . Es ist ein unterstützender Ort für Frauen in der Tech-Branche, wo sie Programmierressourcen und einen offenen Raum zum Ideenaustausch finden. Reddit . Es gibt zahlreiche Subreddits für jede Programmiernische; Schauen Sie sich einige der aktivsten an: r/programming , r/java , r/python , r/javascript , r/reactjs und r/cscareerquestions . Entwicklerkreise auf Facebook . Das Hauptziel besteht darin, lokal organisierte Communities zu schaffen, in denen Entwickler „kostenlose Tools erhalten, um neue Fähigkeiten und Ideen zu entwickeln und ihre Karriere voranzutreiben“. Finden Sie Ihre Community auf Facebook, alle Diskussionen sind derzeit online.

4. Finden Sie eine Open-Source-Community

Die Teilnahme an einer Open-Source-Community kann ein wichtiger Teil Ihrer beruflichen Entwicklung sein. Ein aktives Mitglied der Open-Source-Community zu sein bedeutet nicht nur, Beiträge zu leisten, sondern auch an Veranstaltungen und Konferenzen teilzunehmen, andere zu treffen, Mentoren zu finden und Netzwerke zu knüpfen. Zusätzlich zu den in der Open-Source-Community erworbenen Fähigkeiten (sowohl technischer als auch nichttechnischer Natur) vermittelt die Teilnahme daran den Programmierern auch außerhalb des Tagesberufs ein Gefühl der Zugehörigkeit. In der Open-Source-Community herrscht das einzigartige Gefühl, an etwas Großem zu arbeiten, und in vielerlei Hinsicht ist diese Arbeit ein sinnvoller Beitrag. Sie fragen sich, wo Sie anfangen sollen? Überlegen Sie, welche Open-Source-Projekte Ihnen gefallen, und beginnen Sie dort – es kann so einfach sein, einen Tippfehler im Code zu finden und zu beheben. Es ist nur wichtig, irgendwo anzufangen.

Abschluss

Das Maß an Unterstützung und Anreizen zur Selbstentwicklung, die ein Entwickler in der Fachwelt erhält, ist extrem hoch. Glücklicherweise gibt es überall Zugang zu Entwickler-Communitys, sei es eine lokale Social-Media-Gruppe oder eine große Online-Ressource, die sich einer Programmiersprache widmet. Die Hauptsache ist, herauszufinden, was zu Ihnen passt.

5 unerwartete Fähigkeiten, die ein Programmieranfänger beherrschen muss

Quelle: Codeburst Mein Weg zum autodidaktischen Entwickler war lang und schwierig. Wenn ich mich an all die Hindernisse und Enttäuschungen erinnere, denen ich begegnet bin, frage ich mich manchmal, ob es sich gelohnt hat, so anzufangen. Und jetzt kann ich sagen, dass es sich gelohnt hat. Für Leute wie mich, die bei Null angefangen haben, war die Lernkurve sehr steil. Aber ich bin zuversichtlich, dass auf lange Sicht die Vorteile die Anstrengung überwiegen, die es erfordert, diesen Berg zu bezwingen. Dies gilt natürlich nur, wenn Ihnen das Lernen Spaß macht. Es hat mehrere Jahre gedauert, bis mir klar wurde, dass ein guter Entwickler mehr können muss, als nur schnell und einfach Code zu schreiben. Vielen Anfängern ist nicht bewusst, dass der Erwerb von Entwicklungskompetenzen mehr erfordert als nur die Fähigkeit, ein Programm zu schreiben und auszuführen. Hier sind also fünf weitere Fähigkeiten zusätzlich zum Programmieren, die jeder angehende Entwickler auf jeden Fall benötigen wird!Kaffeepause Nr. 55.  4 Tipps für die Suche nach einer Entwickler-Community.  5 unerwartete Fähigkeiten, die ein Programmieranfänger beherrschen muss - 2

1. Nutzen Sie Kollaborationstools

Viele beliebte Plattformen für die Programmierung im Selbststudium konzentrieren sich auf Sprachsyntax und Datenstrukturen. Einige ermöglichen es den Schülern, grundlegende Projekte von Grund auf zu erstellen. Nehmen wir an, ein einfaches Spiel oder eine Aufgabenlisten-App. Diese Lektionen sind für den Einstieg in die Programmierkenntnisse von unschätzbarem Wert, sie simulieren jedoch nicht die reale Arbeitsumgebung, mit der Sie in Zukunft konfrontiert werden. Entwickler arbeiten bei großen Projekten zusammen, und manchmal arbeitet ein Entwickler möglicherweise gleichzeitig an mehreren Codebasen. Bei der Teamarbeit werden häufig Tools wie Google Spreadsheets oder Invision verwendet. Entwicklungsteams verfügen über ihre eigenen Standard-Tools für die Zusammenarbeit. Mein Unternehmen nutzt wie Zehntausende andere Unternehmen in den USA GitHub. Ich werde nie den Tag vergessen, an dem meine Kollegen mir GitHub vorgestellt haben. Zuerst sagten sie mir, ich solle das Terminal auf meinem Computer öffnen (ich hatte keine Ahnung, dass ich so etwas auf meinem Computer hatte). Dann fingen meine Kollegen an, etwas Kauderwelsch in dieses mysteriöse Fenster auf meinem Bildschirm zu tippen. Es stellte sich heraus, dass dieser Kauderwelsch magische Dinge bewirkte, wie zum Beispiel mehrere Ordner auf meinem Computer mit allen möglichen Dateien voller Code zu füllen. Dann redeten sie über „Äste“ und „Fluffs“, etwas „Entferntes“. Und es schien, dass buchstäblich alle Wörter mit dem Präfix „git“ begannen. Ich wusste, dass sie Englisch sprachen, aber die Bedeutung ihrer Worte war mir unklar. Wenn Sie ein Neuling sind, der noch nie mit anderen Entwicklern programmiert hat, müssen Sie die Sprache und die Tools für die Zusammenarbeit erlernen. Dies mag kompliziert erscheinen, insbesondere wenn Sie die Eingabeaufforderung noch nie geöffnet haben. Aber mit der Zeit wird es zur Gewohnheit.

2. Protokollierung und Fehlerbehandlung

Nehmen wir an, Sie haben bereits gelernt, mit anderen Programmierern zusammenzuarbeiten, und Ihr Code wird an die Produktion gesendet. Wenn etwas, das Sie geschrieben haben, von Tausenden oder sogar Millionen Benutzern verwendet wird, ist das ein wirklich aufregendes Gefühl. Aber sobald Sie dieses Stadium erreicht haben, werden Sie auf die harte Tour lernen, dass immer wieder unerwartete Fehler im Code passieren. Beispielsweise hat die von Ihnen erstellte Variable nie einen Wert erhalten. Jetzt rufen Sie eine Methode mit einem Nullwert auf und Ihr Programm weiß nicht, was es damit machen soll. Es ist ein Fehler aufgetreten und der Benutzer hat keinen Zugriff mehr auf die tolle Seite, die Sie erstellt haben. Wenn Sie das Programm testen, scheint alles korrekt zu sein, sodass Sie das Problem möglicherweise gar nicht bemerken. Dieser spezielle Fehler tritt möglicherweise nur in 5 % der Fälle auf, ist aber für 5 % von 100.000 Benutzern von Bedeutung. Sie müssen lernen, Fehler in Ihrem Code zu protokollieren, zu behandeln und zu antizipieren: Dies sind absolut wesentliche Fähigkeiten für einen Entwickler. Ja, die Fähigkeit, Probleme vorherzusehen, ist ein Instinkt, der sich mit der Zeit und Erfahrung entwickelt. Für einen Anfänger ist es jedoch wichtig, sich daran zu erinnern, dass Fehler ein fast integraler Bestandteil der Entwicklung sind. Wenn Sie wissen, wie Sie Ihren Code mithilfe verschiedener Arten der Fehlerprotokollierung schützen, können Sie sich in Zukunft viele Kopfschmerzen ersparen, insbesondere wenn Sie mit dem Debuggen beauftragt sind. Es kann auch dabei helfen, Probleme zu erkennen, von denen Sie nicht einmal wussten, dass Sie sie haben. Heute haben wir Zugriff auf verschiedene Tools zur Fehlerprotokollierung, die es einfach machen, Schwachstellen in einer Codebasis zu verfolgen. Einer meiner Favoriten ist Sentry, mit dem Sie sehen können, wann ein Problem zum ersten Mal aufgetreten ist und wie oft es auftritt. Erwähnenswert sind außerdem Logentries, Rollbar und Instabug. Es gibt Programme, die systemweite Daten und Probleme überwachen, beispielsweise New Relic und Datadog. Wahrscheinlich werden Sie in Ihrer Entwicklungskarriere auf eine Kombination dieser Programme stoßen, und es lohnt sich, zu lernen, wie man sie nutzt.

3. Testabdeckung

Wie ich bereits sagte, geht es beim Verfeinern Ihrer Programmierkenntnisse um mehr als nur das Schreiben von Code. Sie müssen sicherstellen, dass Ihr Code für andere Entwickler verständlich ist, und wenn jemand ihn zwei Jahre später öffnet, sollte diese Person ihn schnell zur Hand haben und mit der Durchführung von Änderungen beginnen können. Die von Ihnen geschriebene Logik sollte über Jahre hinweg verständlich und wiederverwendbar sein. Aber manchmal ist Ihre Logik komplex und kann nicht vereinfacht werden. Vielleicht aufgrund der Komplexität der Geschäftslogik. Vielleicht aus Zeitmangel. Die Realität ist, dass Fristen Sie manchmal dazu zwingen, nicht optimale technische Entscheidungen zu treffen. Und Sie werden nicht immer alle Anwendungsfälle klar definieren können, bevor Sie mit der Arbeit beginnen. Eine Möglichkeit, Ihren Code zu schützen, besteht darin, Tests zu schreiben, die Änderungen begleiten. Die meisten Programmiersprachen verfügen über zusätzliche Testpakete, die Sie installieren können. Für Ruby verwenden wir beispielsweise Rspec und für React häufig Jasmine. Es gibt verschiedene Arten von Tests, darunter Unit-Tests (zum Testen kleiner Logikteile) und Integrationstests (für End-to-End-Flow-Tests). Sehr oft muss Ihr Code die gesamte Testsuite bestehen, damit er an die gemeinsame Codebasis übermittelt werden kann. Sobald Sie lernen, wie man sie schreibt, fügen Sie „Sicherheitsmaßnahmen“ hinzu, die verhindern, dass zukünftige Änderungen versehentlich die von Ihnen geschriebenen Funktionen überschreiben. Die Testabdeckung hilft auch dabei, das erwartete Verhalten zu definieren, da viele Testfälle in einfachem Englisch verfasst sind. Ich kann Ihnen nicht sagen, wie oft ich in eine vor einigen Jahren geschriebene Datei gegangen bin, eine Änderung vorgenommen habe und herausgefunden habe, dass dadurch ein Dutzend Tests fehlgeschlagen sind, obwohl ich dachte, ich hätte das erwartete Verhalten gut verstanden . Einmal habe ich sogar eine Funktionalität kaputt gemacht, die ich vor ein paar Monaten selbst geschrieben hatte. Glücklicherweise haben meine Unit-Tests dies sofort ergeben. Beim Durchsehen von Pull-Requests fällt mir auf, dass Entwickler der Testabdeckung oft nicht genügend Aufmerksamkeit schenken, und das gilt sowohl für einfache als auch für komplexe Änderungen. Auch ich bin daran schuld, insbesondere wenn die Fristen knapp sind. Aber mir fallen mehrere Projekte ein, bei denen Änderungen an einer Stelle zu Ausfällen an vier anderen Stellen führten. Dies erhöhte unseren Stresspegel und erhöhte die Arbeit auf uns, obwohl wir es ohnehin schon eilig hatten, die Frist einzuhalten. Solche Situationen hätten vermieden werden können, wenn wir uns die Zeit genommen hätten, rechtzeitig Unit-Tests zu schreiben. Das Erlernen des Schreibens kann eine mühsame Aufgabe sein, insbesondere für einen neuen Entwickler, und das Schreiben verlangsamt definitiv den gesamten Entwicklungsprozess. Aber je früher Sie mit dem Schreiben von Tests beginnen, desto weniger Kopfschmerzen erwarten Sie und Ihr Team in der Zukunft.

4. Codeüberprüfung

Dieser Punkt hängt mit dem allerersten zusammen – der gemeinsamen Arbeit an Codebasen. Oft sieht der Prozess zum Vornehmen von Änderungen an der Codebasis so aus. Sie schreiben lokal Code. Um ihn in den Hauptzweig Ihrer Codebasis zu übertragen, erstellen Sie eine Pull-Anfrage (eine visuelle Zusammenfassung Ihrer Änderungen) und andere Entwickler in Ihrem Team überprüfen Ihren Code, bevor Sie der Zusammenführung grünes Licht geben. Verschiedene Teams haben unterschiedliche Anforderungen an die Genehmigung eines Pull-Requests, aber im Allgemeinen sollten Sie damit rechnen, dass Ihre Änderungen auf jeden Fall von jemandem überprüft und umgesetzt werden. Es ist erwähnenswert, dass Sie nicht nur Ihren Code zur Überprüfung einreichen, sondern auch den Code einer anderen Person überprüfen. Zu lernen, den Code anderer Leute zu lesen, ist eine wichtige Fähigkeit für einen Entwickler und sollte im Laufe Ihrer Karriere weiterentwickelt werden. Als ich anfing und gebeten wurde, mir die Pull-Anfragen anderer Leute anzusehen, verstand ich nicht ganz, wonach ich suchen sollte. Zuerst dachte ich, ich sollte nach Fehlern suchen. Es sind ein paar Jahre vergangen, und ich betrachte Codeüberprüfungen mittlerweile eher als eine Plausibilitätsprüfung denn als eine gründliche Untersuchung. Letztendlich ist es der Entwickler, der die Pull-Anfrage gesendet hat, der dafür verantwortlich ist, seinen Code zu überprüfen, die erforderlichen Tests hinzuzufügen und diesen Code sicher zur gemeinsamen Datenbank beizutragen. Es ist nicht die Aufgabe des Gutachters, versteckte Probleme zu identifizieren. Wenn ich heutzutage Code überprüfe, überprüfe ich die Lesbarkeit (z. B. sind diese Variablen- und Methodennamen beschreibend), Organisation und Struktur (ob der Code besser organisiert werden kann, sodass er für jemanden, der ihn zum ersten Mal sieht, klarer ist). . Je vertrauter Sie mit der Codebasis werden, desto einfacher ist es natürlich, potenzielle Probleme zu erkennen. Aber Sie können auch als Anfänger damit beginnen, Code-Review-Fähigkeiten zu erwerben. Dies ist unter anderem auch eine gute Möglichkeit, sich mit den Codemustern vertraut zu machen, die Ihre erfahreneren Kollegen verwenden.

5. Richtige Google-Suche

Kein Entwickler weiß alles über Programmierung, seine Programmiersprache oder sogar seine Codebasis. Bisher war ich mir sicher, dass jeder außer mir sofort verstehen würde, welche Methoden, Abfragen und Strategien in diesem oder jenem Fall zum Einsatz kommen sollten. Aber je mehr Leute ich traf, desto klarer wurde mir, wie oft Entwickler bei Google nach Antworten auf ihre Fragen suchen. Sogar erfahrene! Es gibt zu viele Details in unserer Branche, als dass wir sie im Auge behalten könnten. Mir wurde schnell klar, dass von mir nicht verlangt wurde, alles auswendig zu wissen, sondern zu lernen, wie man richtig nach Antworten sucht. Stackoverflow wird Ihr bester Freund. Wenn Sie an etwas hängen bleiben, besteht die Möglichkeit, dass schon jemand anderes daran hängen geblieben ist. Versuchen Sie bei der Problemlösung genau herauszufinden, was schief läuft, beschreiben Sie es in Worten und geben Sie diese Wörter in eine Suchmaschine ein. Die Fähigkeit, die Probleme, mit denen Sie konfrontiert sind, artikulieren zu können, wird viel mehr helfen als das Auswendiglernen.

Abschluss

Früher oder später werden Sie auf Ihrer Softwareentwicklungsreise zwangsläufig auf Enttäuschungen stoßen. Daraus gibt es kein Entrinnen. Aber je mehr Sie die Tools und Strategien nutzen, die diese Frustrationen lindern sollen, desto lohnender wird Ihre Karriere sein. Bleiben Sie auf Kurs und geben Sie nicht auf.
Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION