Wie man Python auf einfache Weise lernt (und nicht so, wie ich es getan habe)

Python soll eine der am einfachsten zu erlernenden Programmiersprachen sein. Als ich das wusste, fühlte ich mich ziemlich schlecht, als ich es das erste Mal versuchte und es nicht lernte. Es war noch schlimmer, als ich das zweite Mal versagte.

Aber es stellt sich heraus - und das habe ich beim dritten Versuch gelernt -, dass Python wirklich zugänglich ist, selbst für einen geisteswissenschaftlich liebenden Nicht-Programmierer wie mich. Man muss es nur richtig angehen.

Wie ich es nicht geschafft habe, Python zu lernen ... das erste Mal

Das erste Mal, dass ich versuchte, Python zu lernen, war vor fast einem Jahrzehnt. Ich war mir nicht sicher, was ich damit machen wollte - vielleicht einen Teil meiner Arbeit automatisieren, vielleicht eine kleine App schreiben. Es schien nur eine Fähigkeit zu sein, die gut zu wissen wäre.

Also nahm ich eine Kopie des damals kostenlosen Learn Python the Hard Way PDF und versuchte, es durchzuarbeiten.

Die erste Wand, die ich traf, war die Einrichtung von Python auf meinem eigenen System. Besonders zu dieser Zeit wurden die meisten Anweisungen dazu für erfahrene Programmierer geschrieben, und ich habe ewig gebraucht, um alles durchzuarbeiten.

Ich wollte lernen, wie man Python-Code schreibt, und mein erster Schritt bestand darin, fünf Stunden lang mit der Befehlszeile zu kämpfen. Ich war demotiviert, bevor ich überhaupt angefangen habe.

Sobald ich die Dinge eingerichtet hatte, konnte ich zusammen mit dem Buch Code schreiben. Und ich habe für eine Weile das Zusammensetzen eines sehr einfachen Text-Abenteuerspiels verlangsamt.

Aber wenn ich mich der ersten echten Herausforderung stelle - diesen Momenten, die immer beim Codieren auftreten, wenn etwas nicht funktioniert und man einfach nicht herausfinden kann, warum -, höre ich auf.

Ich hatte wichtigere Dinge zu tun, als meinen Kopf gegen die Tastatur zu schlagen und durch unergründliche Fehlermeldungen zu rätseln. Besonders wenn mein Endziel darin bestand, ein Text-Abenteuerspiel zu machen, das mir egal war und das niemand jemals spielen würde.

Wie ich es nicht geschafft habe, Python zu lernen ... das zweite Mal

Einige Jahre später versuchte ich es erneut. Zu diesem Zeitpunkt arbeitete ich als Journalist und interessierte mich für Datenjournalismus und insbesondere für Web-Scraping.

Ich wusste, dass Python-Codierungskenntnisse erforderlich sein würden, also fand ich eine Online-Bildungsplattform - ich werde nicht sagen, welche - und begann einen Python-Anfangskurs.

Wie die meisten MOOCs war dieser Kurs videobasiert. Ich sah mir einen Vortrag über ein Python-Thema an, beantwortete ein Quiz auf der Kursseite, um zu bestätigen, dass ich das Material gelernt hatte, und fuhr dann mit dem nächsten Modul fort.

Erfahrene Programmierer können wahrscheinlich schon erraten, was als nächstes geschah: Als ich versuchte, Python-Code für mich selbst zu schreiben, konnte ich nichts tun.

Als ich jemand anderem beim Codieren in Videos zuschaute und seine Erklärungen hörte, hatte ich gedacht, ich würde lernen, wie man es für mich selbst macht. Und die Multiple-Choice- und Fill-in-the-Blank-Tests, an denen ich zu 100% teilnahm, schienen zu bestätigen, dass ich das Material verstanden hatte.

Aber als es Zeit wurde, es selbst anzuwenden, konnte ich es natürlich nicht. Ich konnte die Videos zurückscannen und kopieren, was der Dozent getan hatte, aber es fiel mir wirklich schwer, alles, was ich gelernt hatte, auf meine eigenen Projekte anzuwenden.

Es war auch schwierig, motiviert zu bleiben, weil ich an Dingen arbeitete, die nicht relevant schienen.

Ich wollte Web Scraping lernen. Stattdessen hatte ich Schwierigkeiten, Videovorträge über das Konzept der objektorientierten Programmierung (OOP) zu verstehen. Was hatte das alles mit meinen Zielen zu tun? Ich war mir nicht sicher, und das machte es einfach, aufzuhören. Nochmal.

Warum ich versagt habe

Rückblickend ist es nicht allzu schwierig herauszufinden, warum ich versagt habe. Das erste Mal waren meine großen Fehler:

  1. Ich habe kein klares Ziel . Warum habe ich Python gelernt? Ich wusste es nicht wirklich. Das macht es wirklich einfach, aufzuhören, wenn es schwierig wird - was früher oder später immer der Fall sein wird.
  2. Vorab eine zu große Herausforderung . Früher oder später würde ich herausfinden , wie Python auf mein System zu bekommen, aber diese nach oben mit der Einstellung Null einschlägiger Erfahrung, bevor ich so viel geschrieben hatte als print(‘Hello world!’)ein Rezept für Frustration und Misserfolg war.

Wenn Sie etwas Herausforderndes lernen, insbesondere als Anfänger, benötigen Sie frühe Siege, um zu glauben, dass Sie es wirklich können.

Angefangen mit einer frustrierenden Herausforderung, bei der es nicht einmal um Codierung ging, wurde sichergestellt, dass ich diese motivierenden und bestätigenden frühen Siege nicht bekam.

Beim zweiten Mal habe ich diese Fehler vermieden, aber stattdessen einige neue gemacht:

  1. Ich habe nicht dadurch gelernt. Das Anschauen von Videos und das Bestehen von Quiz gab mir das Gefühl, ich könnte codieren, aber ich codierte nicht wirklich. Wenn ich tat Versuch (und nicht) , Code zu schreiben, war es noch frustrierend , weil ich dachte , ich verstand es schon. Und weil ich in jedem Video ein paar Klicks machen musste, um verschiedene Abschnitte erneut anzusehen und Dinge neu zu lernen.
  2. Ich hatte ein klares Ziel, aber keinen klaren Weg dorthin. Ich wusste, dass ich Datenjournalismus und Web Scraping machen wollte, aber ich nahm an einem allgemeinen Python-Kurs teil. Das bedeutete, dass ich Lektionen lernte, die für die Softwareentwicklung von entscheidender Bedeutung waren, aber für den Datenjournalismus nicht so relevant waren. Es fiel mir oft schwer, die Grundlagen, die ich im Unterricht lernte, mit dem zu verbinden, was ich eigentlich mit dem Code machen wollte.

Während all dem machte ich auch einen weiteren großen mentalen Fehler. Ich dachte darüber nach, Python in sehr schwarz-weiß zu lernen. Entweder hatte ich Python gelernt - ganz Python - oder ich hatte es nicht getan.

Dies machte die Aussicht auf Lernen wirklich einschüchternd. Immer wenn ich mich einer Herausforderung stellte, wurde es durch die Tatsache verschlimmert, dass ich an eine mythische Python-Ziellinie dachte, die noch sehr, sehr weit entfernt war.

Das ist natürlich falsch. Wie eine gesprochene Sprache sind Python (und andere Programmiersprachen) nichts, was Sie jemals wirklich zu Ende lernen. Und wie bei einer gesprochenen Sprache müssen Sie Python nicht fließend beherrschen, um Dinge zu erledigen.

Wie Ihnen jeder Austauschstudent im ersten Jahr sagen wird, können Sie nur fragen: "Wie viel kostet das?" und "Wo ist das Badezimmer?" in der Landessprache kann Ihre Lebensqualität wirklich beeinträchtigen.

Gleiches gilt für Python. Sie müssen nicht alles wissen - oder sogar alles, was notwendig ist -, um einen echten Unterschied in Ihrem eigenen Leben zu bewirken.

Aber das ist eine Lektion, die ich nur zufällig gelernt habe.

Wie ich tatsächlich (etwas) Python gelernt habe

Bis 2018 hatte ich das Erlernen von Python aufgegeben. Ich hatte es zweimal versucht und war zweimal gescheitert! Aber dann wurde ich bei Dataquest eingestellt, einem Unternehmen, das datenwissenschaftliche Fähigkeiten - einschließlich Python-Programmierung - online vermittelt.

Mein neuer Job erforderte keine Programmierkenntnisse, aber ich dachte, ich müsste die Lernplattform trotzdem ausprobieren. Ich musste unser Produkt verstehen und wissen, was unsere Lernenden erlebten. Vielleicht, dachte ich, könnte ich sogar genug lernen, um ein bisschen Web-Scraping zu machen, wie ich es vorher geplant hatte.

Mit ein wenig Angst habe ich ein Konto erstellt und unseren Python for Data Science-Kurspfad gestartet.

Zu meiner Überraschung fühlte es sich lustig und einfach an. Und zu meiner größeren Überraschung dauerte es nicht lange, bis ich das Gefühl hatte, einige Projekte selbst bauen zu können.

Ich habe ein kleines Skript geschrieben, um E-Mails zu sortieren. Ich habe Python verwendet, um einige Umfragedaten schnell zu analysieren. Und in Anfällen und Anfängen baute ich das große Web-Scraping- und Analyseprojekt auf, von dem ich als Journalist geträumt hatte.

Ich war - und bin - eigentlich Python mit meiner Arbeit zu erleichtern, und mein Leben zu verbessern. Ein paar Jahre später bin ich noch ein Anfänger, aber ich kann kleine Skripte zusammenhacken, um die Dinge zu vereinfachen und Datenanalyseprobleme zu lösen, die ich bei der Arbeit mit Python habe.

Dies geschah, weil ich eher zufällig als beabsichtigt auf eine Methode gestoßen war, Python zu lernen, mit der fast alle Fehler vermieden wurden, die ich bei meinen früheren Bemühungen gemacht hatte:

  • Ich kam mit einem klaren Ziel ins Spiel - lernen Sie genug Python, um ein wenig Datenarbeit zu leisten, damit ich unsere Kunden besser verstehen kann.
  • Ich habe die anfängliche Herausforderung, Python vollständig zu installieren, vollständig vermieden, da Sie mit Dataquest Code direkt in einem Browserfenster lernen und schreiben können.
  • Ich lernte das Codieren, indem ich tatsächlich codierte, anstatt jemand anderem beim Codieren zuzusehen.
  • Ich lernte auf einem Pfad, der speziell für Python-Daten entwickelt wurde, sodass alles, was ich lernte und jede Übung, die ich machte, relevant war.
  • Ich habe nur versucht zu lernen, was ich brauchte, und nicht versucht, ganz Python zu lernen.

So erleichtern Sie das Erlernen von Python

Wenn ich auf meine Fehler und dann auf meinen zufälligen Erfolg zurückblicke, denke ich, dass es sich um ein paar einfache Dinge handelt:

Gehen Sie zuerst mit einem Ziel hinein. Warum willst du Python lernen? Was möchten Sie konkret damit bauen? Wenn Sie keine gute Antwort auf diese Frage haben, wird es wirklich schwierig sein, motiviert zu bleiben.

Zweitens finden Sie einen Weg zu lernen, indem Sie das tun, was Sie tatsächlich tun möchten. Wenn Sie eine gezielte Lernressource finden, wie eine Plattform, auf der Python speziell für Spieleentwickler unterrichtet wird, ist das großartig. Allgemeine Lernressourcen können jedoch auch funktionieren, solange Sie das Gelernte mit einigen Python-Anfängerprojekten anwenden, während Sie studieren.

Das Erlernen des Codierens muss das eigentliche Schreiben von Code beinhalten, und es muss tatsächlich das Schreiben von Code beinhalten, der etwas tut, an dem Sie interessiert sind.

Drittens vermeiden Sie die Herausforderung, Python und seine verschiedenen Bibliotheken auf Ihrem lokalen System einzurichten.

Es gibt jetzt viele Online-Plattformen, auf denen Sie Code in einem Webbrowser schreiben und ausführen können, oder Sie können Code in einem Notizbuch auf Google Colab oder einer ähnlichen Plattform schreiben und ausführen. Versuchen Sie einfach, sich den Einstieg so einfach wie möglich zu machen. Sie können sich später um Ihr lokales Setup kümmern.

Viertens, versuchen Sie nicht, "Python zu lernen". Das ist ein gewaltiges langfristiges Ziel, das wohl unerreichbar ist - selbst die besten Python-Entwickler wissen nicht buchstäblich alles darüber.

Versuchen, stattdessen zu lernen , wie man verwendet Python eine einfache Version von Ihrem Ziel - Projekt zu erstellen, oder einem Teil dieses Projektes. Erfahren Sie dann, wie Sie mit Python das Projekt vergrößern oder mit dem nächsten Schritt fortfahren.

Teilen Sie große Aufgaben in kleinere Teile auf und konzentrieren Sie Ihre Ziele darauf, etwas zu bauen, damit Sie die psychologische Belohnung erhalten, etwas gebaut zu haben, wenn Sie eine abgeschlossen haben.

Befolgen Sie diese Richtlinien unabhängig von Ihrem persönlichen Grund, Python zu lernen, und ich bezweifle nicht, dass Sie Ihre Ziele erreichen können, ohne dabei zweimal scheitern und aufhören zu müssen!