Eine Anleitung für absolute Anfänger.
(Anmerkung des Übersetzers: Das sind Ratschläge vom indischen Autor, aber sie scheinen nützlich zu sein. Ergänzen Sie in den Kommentaren.)

Ein Monat ist viel Zeit. Wenn man jeden Tag 6-7 Stunden mit Lernen verbringt, kann man eine Menge erreichen.
Ziel für den Monat:
- Sich mit den grundlegenden Konzepten vertrautmachen (Variable, Bedingung, Liste, Schleife, Funktion)
- Über 30 Programmierprobleme praktisch lösen
- Zwei Projekte erstellen, um das neue Wissen praktisch anzuwenden
- Sich mit mindestens zwei Frameworks vertrautmachen
- Anfangen, mit IDEs (Entwicklungsumgebungen), Github, Hosting, Services usw. zu arbeiten.
So werden Sie ein Junior-Entwickler (Junior) in Python.
Jetzt der Wochenplan.
Der Artikel wurde mit Unterstützung der Firma EDISON Software übersetzt, die , sowie .
Erste Woche: Machen Sie sich mit Python vertraut
Verstehen Sie, wie alles in Python funktioniert. Überprüfen Sie so viele Dinge wie möglich.
- Tag 1: 4 Grundkonzepte (4 Stunden): Eingabe, Ausgabe, Variable, Bedingungen
- Tag 2: 4 Grundkonzepte (5 Stunden): Liste, for-Schleife, while-Schleife, Funktion, Module importieren
- Tag 3: Einfache Programmierprobleme (5 Stunden): zwei Variablen tauschen, Celsius in Fahrenheit umrechnen, die Summe aller Ziffern in einer Zahl berechnen, prüfen, ob eine Zahl prim ist, eine zufällige Zahl generieren, Duplikate aus einer Liste entfernen
- Tag 4: Programmierprobleme mittlerer Schwierigkeit (6 Stunden): einen String umdrehen (auf Palindrom prüfen), den größten gemeinsamen Teiler berechnen, zwei sortierte Arrays zusammenführen, ein Zahlenrate-Spiel erstellen, das Alter berechnen usw.
- Tag 5: Datenstrukturen (6 Stunden): Stapel, Warteschlange, Wörterbuch, Tupel, verkettete Liste
- Tag 6: OOP – Objektorientierte Programmierung (6 Stunden): Objekt, Klasse, Methode und Konstruktor, OOP-Vererbung
- Tag 7: Algorithmus (6 Stunden): Suche (linear und binär), Sortierung (Blasensortierung, Auswahl), rekursive Funktion (Fakultät, Fibonacci-Folge), Zeitkomplexität von Algorithmen (linear, quadratisch, konstant)
Installieren Sie Python nicht:
Ich verstehe, es klingt widersprüchlich. Aber vertrauen Sie mir. Ich kenne viele Leute, die jegliche Motivation verloren haben, etwas zu lernen, nachdem sie nicht in der Lage waren, eine Entwicklungsumgebung oder Software zu installieren. Ich empfehle, direkt eine Android-App wie oder auf die Website und beginnen Sie, die Sprache zu erkunden. Setzen Sie sich nicht das Ziel, zuerst Python zu installieren, wenn Sie nicht besonders technisch versiert sind.
Woche 2: Beginnen Sie mit der Softwareentwicklung (Projekt erstellen)
Sammeln Sie Erfahrungen in der Softwareentwicklung. Versuchen Sie, alles, was Sie gelernt haben, zu nutzen, um ein echtes Projekt zu erstellen.
- Tag 1: Machen Sie sich mit der Entwicklungsumgebung vertraut (5 Stunden): Die Entwicklungsumgebung ist eine interaktive Umgebung, in der Sie Code für große Projekte schreiben werden. Sie sollten mindestens eine Entwicklungsumgebung gut kennen. Ich empfehle, mit oder Jupyter Notebook
- Tag 2: Github (6 Stunden): Lernen Sie kennen, erstellen Sie ein Repository. Versuchen Sie, Code zu committen, zu pushen und den Unterschied zwischen zwei beliebigen Git-Bäumen zu berechnen. Machen Sie sich auch mit Branching, Merging und Pull Requests vertraut.
- Tag 3: Erstes Projekt: Einfacher Taschenrechner (4 Stunden): Machen Sie sich mit Tkinter vertraut. .
- Tag 4, 5, 6: Persönliches Projekt (jeden Tag 5 Stunden): Wählen Sie eines der Projekte aus und beginnen Sie mit der Arbeit daran. Wenn Sie keine Ideen für ein Projekt haben, schauen Sie sich diese Liste an:
- Tag 7: Hosting (5 Stunden): Verstehen Sie den Server und das Hosting, um Richten Sie Heroku ein und deployen Sie die Version Ihrer Anwendung.
Warum ein Projekt:
Wenn Sie nur blind den Schritten im Tutorial oder Video folgen, werden Sie nicht lernen, selbstständig zu denken. Sie müssen Ihr Wissen in einem Projekt anwenden. Sobald Sie all Ihre Energie darauf verwendet haben, eine Antwort zu finden, werden Sie sich daran erinnern.
Woche 3: Entwickeln Sie sich als Programmierer weiter.
Ihr Ziel in Woche 3 ist es, ein allgemeines Verständnis des Softwareentwicklungsprozesses zu erlangen. Sie müssen Ihre Fähigkeiten nicht perfektionieren. Aber Sie sollten einige Grundlagen kennen, da diese Ihren Arbeitsalltag beeinflussen werden.
- Tag 1: Grundlagen der Datenbanken (6 Stunden): Grundlegende SQL-Abfragen (Create Table, Select, Where, Update), SQL-Funktionen (Avg, Max, Count), relationale Datenbank (Normalisierung), innere Joins, äußere Joins usw.
- Tag 2: Verwenden Sie Datenbanken in Python (5 Stunden): Verwenden Sie ein Datenbank-Framework (SQLite oder Pandas), verbinden Sie sich mit der Datenbank, erstellen und fügen Sie Daten in mehrere Tabellen ein, lesen Sie Daten aus den Tabellen.
- Tag 3: API (5 Stunden): Lernen Sie, APIs zu nutzen, vertiefen Sie Ihr Wissen über JSON, Mikrodienste, REST-APIs.
- Tag 4: Numpy (4 Stunden): und üben Sie dessen Nutzung.
- Tag 5, 6: Website-Portfolio (5 Stunden pro Tag): Lernen Sie Django, , schauen Sie sich auch das Framework Flask an
- Tag 7: Unittests, Protokolle, Debugging (4 Stunden): Verstehen Sie Unittests (PyTest), lernen Sie, mit Protokollen zu arbeiten und diese zu überprüfen, und verwenden Sie Breakpoints
Echte Zeitskala (Geheimnis):
Wenn Sie sich diesem Thema widmen und sich voll und ganz darauf konzentrieren, können Sie alles in einem Monat erledigen.
- Lernen Sie Python kontinuierlich. Beginnen Sie um 8 Uhr morgens und lernen Sie bis 17 Uhr. Machen Sie eine Mittagspause und Snacks (insgesamt eine Stunde)
- Um 8 Uhr morgens erstellen Sie eine Liste von Dingen, die Sie heute lernen werden. Nehmen Sie sich danach eine Stunde Zeit, um alles, was Sie gestern gelernt haben, zu wiederholen und auszuprobieren.
- Von 9 Uhr morgens bis 12 Uhr mittags lernen und üben Sie weniger. Nach dem Mittagessen treten Sie in Fahrt. Wenn Sie bei einem Problem steckenbleiben, suchen Sie online nach einer Lösung.
- Verbringen Sie jeden Tag 4-5 Stunden mit Lernen und 2-3 Stunden mit Praktiken. (maximal können Sie sich einen freien Tag in der Woche gönnen)
- Ihre Freunde werden denken, dass Sie verrückt sind. Enttäuschen Sie sie nicht – entsprechen Sie dem Bild.
Wenn Sie Vollzeit arbeiten oder an einer Universität studieren, benötigen Sie mehr Zeit. Als Student brauchte ich 8 Monate, um alles auf der Liste zu erledigen. Jetzt arbeite ich als Senior-Entwickler. Meine Frau, die in der Zentralbank der USA arbeitet, benötigte ein halbes Jahr, um alle Aufgaben auf der Liste abzuschließen. Es spielt keine Rolle, wie viel Zeit es braucht. Schließen Sie die Liste ab.
Vierte Woche: Nehmen Sie die Suche nach einem Job (Praktikum) ernst
Ihr Ziel der vierten Woche ist es, ernsthaft über eine Beschäftigung nachzudenken. Auch wenn Sie derzeit keinen Job annehmen möchten, lernen Sie viel im Verlauf der Vorstellungsgespräche.
- Tag 1: Lebenslauf (5 Stunden): Erstellen Sie einen einseitigen Lebenslauf. Platzieren Sie oben im Lebenslauf eine kurze Übersicht über Ihre Fähigkeiten. Fügen Sie unbedingt eine Liste Ihrer Projekte mit Links zu Github hinzu.
- Tag 2: Website-Portfolio (6 Stunden): Schreiben Sie einige Blogs. Fügen Sie diese in das vorherige Website-Portfolio ein, das Sie erstellt haben.
- Tag 3: LinkedIn-Profil (4 Stunden): Erstellen Sie ein Profil auf LinkedIn. Übertragen Sie alle Informationen von Ihrem Lebenslauf nach LinkedIn.
- Tag 4: Vorbereitung auf Vorstellungsgespräche (7 Stunden): Suchen Sie die häufigsten Fragen in Vorstellungsgesprächen bei Google. Üben Sie das Lösen von 10 Programmierproblemen, die in Vorstellungsgesprächen gestellt werden. Machen Sie dies auf Papier. Fragen aus Vorstellungsgesprächen finden Sie auf Websites wie Glassdoor, Careercup.
- Tag 5: Networking (~ Stunden): Verlassen Sie den Stauraum. Beginnen Sie, an Meetups und Jobmessen teilzunehmen. Lernen Sie Recruiter und andere Entwickler kennen.
- Tag 6: Bewerben Sie sich einfach auf Stellen (~ Stunden): Suchen Sie nach „Python Jobs“ und sehen Sie sich die Stellenangebote auf LinkedIn und lokalen Jobseiten an. Wählen Sie 3 Stellen aus, auf die Sie sich bewerben möchten. Passen Sie Ihren Lebenslauf für jede davon an. Finden Sie 2-3 Dinge in den Anforderungen, die Sie nicht kennen. Verbringen Sie die nächsten 3-4 Tage damit, diese zu verstehen.
- Tag 7: Lernen Sie aus den Absagen (~ Stunden): Jedes Mal, wenn Sie eine Absage erhalten, identifizieren Sie 2 Dinge, die Sie wissen müssen, um den Job zu bekommen. Verbringen Sie dann 4-5 Tage damit, Ihre Fähigkeiten in diesen Bereichen zu verbessern. So werden Sie nach jeder Absage besser als Entwickler.
Bereitschaft zur Arbeit:
Die Wahrheit ist, dass Sie nie zu 100% bereit für einen Job sein werden. Alles, was Sie brauchen, ist, 1-2 Dinge sehr gut zu lernen. Und sich mit anderen Fragen vertraut zu machen, um die Hürde der Vorstellungsgespräche zu überwinden. Sobald Sie einen Job bekommen, werden Sie eine Menge lernen.
Genießen Sie den Prozess:
Lernen ist ein Prozess. Auf Ihrem Weg werden sicherlich Schwierigkeiten auftreten. Je mehr es gibt, desto besser werden Sie als Entwickler.
Wenn Sie die Liste in 28 Tagen abschließen können, sind Sie großartig. Aber selbst wenn Sie 60-70% der Liste abarbeiten, entwickeln Sie die notwendigen Eigenschaften und Fähigkeiten. Diese werden Ihnen helfen, ein Programmierer zu werden.
Wo lernen:
Wenn Sie immer noch nicht wissen, wo Sie anfangen sollen,
- (eine unterhaltsame Android-App zum Lernen von Python)
- (kostenlose Ressourcen zum Lernen in der Webversion)
- (schauen Sie sich die Videos an und lernen Sie)
Ich wünsche Ihnen eine aufregende Reise. Die Zukunft liegt in Ihren Händen.
Übersetzung: Diana Sheremyeva
Quelle: habr.com
