5 Wege Eine Coding Academy bringt Ihnen bei, wie man ein Programmierer ist

Foto von Clément H auf Unsplash

Hintergrund

Mein Name ist Nick Coultas und ich wohne derzeit in Reno, Nevada. Was Programmierer / Entwickler betrifft, gibt es hier eine sehr kleine Community. Das wurde mir bald klar, als ich anfing, mein lokales Community College zu besuchen, um meinen Associates of Science nachzugehen, und mich auf den Weg zur lokalen Universität für Informatik / Programmierung machte. In dieser Zeit bin ich auf die Lambda School gestoßen, eine 6-monatige Vollzeitakademie für Informatik / Webentwicklung. Je mehr ich darüber nachdachte, desto aufgeregter wurde ich und das Timing war perfekt. Anfangs war ich nervös, verängstigt, definitiv überwältigt. Nach über 70 abgeschlossenen Projekten ohne Capstone-Projekt habe ich jedoch so viel Wissen darüber gesammelt, wie man ein professioneller Programmierer ist. Ich habe nicht nur gelernt; Mit den neuen Programmiersprachen und der neuen Syntax habe ich auch die wahren Soft Skills und Fähigkeiten gelernt, die es braucht, um ein professioneller Entwickler zu werden.

1. Wie man wie ein Entwickler denkt

Nachdem ich diesen Header geschrieben hatte, fragte ich meine Frau - wenn sie nur den Header lesen würde, was würde sie denken? Ihre Antwort lautete: "Wie man Computer intelligent macht / Code lernt". Ich bin sicher, dass dies der ursprüngliche Gedanke der meisten Leute ist, die dies lesen, aber es gibt so viel mehr zu denken als nur Code zu lernen. Als Entwickler / Programmierer lösen Sie ständig Probleme, überlegen sich kreative Lösungswege und verwenden zuvor gelöste Probleme als Richtlinie, um beim Erstellen eines neuen Projekts zu vermeiden. Sie zerlegen jedes Problem in kleine Teile und lösen jeden Abschnitt einzeln, um schließlich die Antwort auf das gesamte Problem zu erhalten. Ich habe das in der Lambda School sehr schnell gelernt, besonders in Code / Projekte, mit denen ich nicht vertraut war. Ich konnte die Informationen, die ich aus Vorlesungen und praktischen Übungen erhalten hatte, nutzen, um das Problem in Teile zu zerlegen. Ich würde jedes Stück einzeln durcharbeiten, bis die Gesamtantwort klar wurde. Mit dieser neuen Art des Lernens und des Herangehens an Probleme wusste ich, wie ich es sofort beheben konnte, falls ich danach auf etwas Ähnliches stieß.

Eine weitere wichtige Rolle beim Denken wie ein Entwickler spielt die Planung. Egal, ob Sie ein Trello-Board verwenden, um jeden Schritt in eine Checkliste zu planen, oder ob Sie einen Drahtrahmen als visuelle Grundlage für die Funktionsweise des Projekts verwenden, Sie planen immer Ihren nächsten Angriffsplan. Sie bewerten jeden Schritt auch anhand einer Skala von Wichtigkeit dahingehend, ob er so schnell wie möglich abgeschlossen und implementiert werden muss oder ob es sich um eine Funktion handelt, die später bereitgestellt werden kann.

2. Pair Programming / Arbeiten in Teams.

Als ich anfänglich mit dem Konzept der Paarprogrammierung konfrontiert wurde, machte es mich wirklich nervös, insbesondere in einer intensiven und immersiven Umgebung. Die Menschen in der Lambda School kommen aus den unterschiedlichsten Bereichen, auch mit Vorkenntnissen im Schreiben von Code. Ich wollte nicht "unintelligent" klingen, weil andere vielleicht mehr wissen als ich, und ich wollte meinen Partnern nicht schaden. Die Kommunikation mit meinen Partnern, um herauszufinden, ob sie mehr wussten als ich oder ob ich mehr wussten als sie, half mir zu lernen, wie man Programme effektiv koppelt und effektiv in einem Team arbeitet. Dabei habe ich gelernt, wie man so effizient wie möglich kommuniziert, indem man Fragen stellt oder Ideen zur Verbesserung eines Projekts vorschlägt. Dies hat mir auch geholfen, meinen Denkprozess zu erklären, während ich Code schreibe. Es hat auch geholfen zu erklären, warum ich mich entschieden habe, etwas anderes zu tun, besonders wenn ich der Navigator und mein Partner der Fahrer bin.

Die Lambda School ist ein Online-Programm, bei dem alle Programmteilnehmer remote arbeiten. Während der Paarprogrammierung und der Arbeit an Capstone-Projekten konnten wir nicht einfach zum Schreibtisch neben uns gehen und Fragen stellen. Wir haben uns auf Zoom als unsere Hauptplattform für Anrufe und Bildschirmfreigaben verlassen. So konnten wir ständig kommunizieren und Nachrichten über Slack senden. Dieser Prozess hat mir definitiv gezeigt, wie wichtig es ist, mit Ihren Partnern kommunizieren zu können.

3. Ausdauer, Beständigkeit und Körnung

Auf dem Weg zum professionellen Entwickler / Programmierer spielen die Fähigkeiten, hartnäckig und beständig zu sein sowie ein gutes Zeugnis zu haben, eine große Rolle. Sie müssen sich immer auf die jeweilige Aufgabe konzentrieren und wissen, dass es immer einen Weg gibt, eine Lösung zu finden. Die Übereinstimmung mit Ihrem Code ist der Schlüssel. Sie müssen ständig über neue Sprachen, Frameworks und Updates auf dem Laufenden bleiben. Sie haben noch nie ein Projekt "fertig". Es gibt immer Dinge, die Sie zurückgehen und aktualisieren können, um das Projekt oder die App zu verbessern. Grit zu haben geht auch mit Hartnäckigkeit einher. Es kann vorkommen, dass Sie Ihr Gesicht in die Tastatur schlagen und versuchen, eine Lösung zu finden. In diesen besonderen Momenten müssen Sie motiviert bleiben und das Problem, mit dem Sie konfrontiert sind, weiterhin lösen.

In der Lambda-Schule wurden diese Dinge nicht direkt unterrichtet. Es handelt sich um Soft Skills, an denen Sie sich weiterentwickeln und die Sie im Laufe der Zeit lernen. Als Entwickler / Programmierer springen Sie ständig in Code, mit dem Sie vielleicht nicht vertraut sind, oder beginnen sogar ein ganz neues Projekt mit einer Technologie, die für Sie völlig neu ist. Sie müssen hartnäckig sein, um herauszufinden, wie der Code funktioniert und wie Sie eine Sprache oder ein Framework verwenden, mit dem Sie noch nie zuvor vertraut waren. Dies kann das schrittweise Durchlaufen des Codes umfassen, um zu sehen, was er tut, oder das Lesen der Dokumente für eine ganz neue Sprache oder ein ganz neues Framework. Wenn Sie mit einem Problem konfrontiert sind, müssen Sie auch hartnäckig sein, um die Lösung zu finden, ob dies darin besteht, Ihre Schritte erneut zu verfolgen, Ihren Code zu protokollieren oder das vorliegende Problem zu untersuchen. Sie müssen auch konsistent sein, so viel Code wie möglich täglich schreiben, weiterhin mit neuen Frameworks / Sprachen Schritt halten und bestehende Projekte bei Bedarf erweitern.

4. Hindernisse überwinden

Wie ich bereits sagte, werden Sie diese frustrierenden Momente erleben, in denen es scheinbar keine Lösung für Ihr Problem gibt. Sie werden sich den Zeiten des Impostor-Syndroms gegenübersehen und das Gefühl haben, dass Sie die Aufgabe nicht erledigen können. Nachdem ich meine neu gefundenen Soft Skills in die Praxis umgesetzt habe, stelle ich fest, dass ich in diesen Situationen erfolgreich bin. Das treibt mich dazu, härter zu arbeiten, und ich bin mir sicher, dass viele von Ihnen dies lesen.

Die Lambda-Schule hat mir beigebracht, dass ich tun kann, was ich mir vorgenommen habe. Wenn wir uns einem Problem oder Hindernis in der Lambda School gegenübersehen, sei es ein Problem im Code oder ein Fehler, den wir lösen mussten, hatten wir immer eine Anleitung, aber wir bekamen die Antwort nie auf den Punkt. Wir mussten weiter daran arbeiten, bis wir selbst zu den Lösungen kamen. Das ist das Beste, weil es mir persönlich geholfen hat, zu erkennen, wozu ich fähig bin. Ich kann eine Antwort finden, sei es durch weitere Nachforschungen, durch lautes Aussprechen meiner Schritte gegenüber mir (oder meiner Frau) oder durch Zurückverfolgen meiner vorherigen Schritte. Ich kann Ihnen nicht sagen, wie oft ich meiner Frau (die nichts über Programmierung weiß) ein Problem erklärt habe, nur damit die Glühbirne in meinem Kopf ausgeht und auf halbem Weg stehen bleibt, weil ich eine Antwort gefunden habe.

Das Gefühl, ein Hindernis zu überwinden, ist wie ein Lottogewinn. Dies ist (meiner Meinung nach) auch eine der besten Möglichkeiten, um zu lernen, da es nicht nur Ihr Selbstvertrauen stärkt, sondern es Ihnen auch ermöglicht, das Wachstum zu sehen, das Sie erzielt haben.

Foto von Joshua Earle auf Unsplash

5. Persönliche und berufliche Weiterentwicklung

Ich habe mich zuvor in der Lambda-Schule mit persönlichem Wachstum befasst, aber es steckt noch so viel mehr dahinter, als ich in einem Artikel wiedergeben kann. Ich habe neue erfolgreiche Eigenschaften entwickelt, Hindernisse überwunden und mit Partnern kommuniziert / gepaart. Ich hatte auch eine enorme berufliche Entwicklung. Ich bin 21 und beginne meine Karriere. Mir ist klar geworden, dass die Verbindungen riesig sind. Nicht nur, wenn es darum geht, ein professioneller Entwickler / Programmierer zu sein, sondern auch im Leben und im Allgemeinen. Ich habe nicht nur durch Lehrer und Mitarbeiter, sondern auch durch meine Kollegen erstaunliche Verbindungen aufgebaut. Auch hier hört es nicht auf, ich habe mich weiter vernetzt und gelernt, wie man Verbindungen zu Leuten aufbaut, die professionelle Entwickler aus allen Lebensbereichen sind.

Ich habe gelernt, wie ich mich professionell zu Projekten äußern und meinen Standpunkt ausführlich erläutern kann. Jetzt kann ich meinen Gedankenprozess und den Grund erklären, warum mein Partner und ich einen bestimmten Tech Stack für ein Teamprojekt ausgewählt haben. Ich kann mit meinen Kollegen kommunizieren, wenn ich ein Projekt beginne, und überlegen, welche Schritte am besten geeignet sind, um das beste Ergebnis zu erzielen. Problemlösung, wenn die Codierung sehr umfangreich ist und ich in der Lage bin, Probleme effektiv mit Partnern oder einem Team zu lösen, um die beste Lösung zu finden.

All diese Dinge kann ich in meinem zukünftigen Job als professioneller Softwareentwickler / Ingenieur mitnehmen.

Vielen Dank, dass Sie sich die Zeit genommen haben, dies zu lesen!