Python Lernen - Ein Selbstversuch mit Schleifen, Schlangen und Schildkröten
Bevor ich damit beginne, euch meine Erfahrungen mit der Programmiersprache Python mitzuteilen, möchte ich euch zu allererst einen Einblick geben, wer eigentlich diesen Selbstversuch gewagt hat: Ich heiße Alisa, habe an der Hochschule Coburg Produktdesign studiert und null Ahnung vom Programmieren und den dazugehörigen Sprachen.
Völlig unbedarft bin ich natürlich nicht, was Digitalisierung, Programmiersprachen etc. angeht, schließlich arbeite ich auch bei Zukunft.Coburg.Digital (kurz: ZCD) und da bekommt man natürlich einiges mit. Was aber nicht heißt, dass ich selbst auch könnte – oder im Detail verstehen würde, was unsere Gründer*innen da in die Maske eingeben.
Als in unserer Veranstaltungsreihe von ZCD ein Vortrag plus Workshop über die Programmiersprache Python angekündigt wurde, dachte ich mir in meinem nicht mehr ganz so jugendlichen Leichtsinn: „Im Studium hattest du keine Zeit, Programmieren zu lernen, also nutzt du jetzt die Gelegenheit.“ (Und heimlich dachte ich mir natürlich, dass ich nach dem Vortrag immer noch aussteigen und den Workshop canceln könnte, sollte ich mich völlig überfordert fühlen).
Excel-Tabellen automatisch auswerten lassen mit Python - nur eines von zig Versprechen
Es klang auch nach der ultimativen Arbeitserleichterung: Sobald ich die Grundlagen verstanden habe, kann ich flugs ein paar Zeilen eintippen und anschließend automatisch Excel-Tabellen auswerten, E-Mail-Prozesse automatisieren oder lange Texte analysieren lassen – und das auch als Laie. „Das wär’s doch! Die Büroarbeit ist zukünftig in zehn Minuten erledigt und ich hab‘ Zeit für die wichtigen Dinge.“ – das dachte ich mir und saß hochmotiviert im Vortrag zu Python.
Der knapp zweistündige Vortrag von Joshua Kraft, Informatik-Student in Heidelberg, Python-Mutterprogrammiersprachler und studentischer Unternehmensberater, war informativ, kurzweilig und vorallem: begeisternd. Joshua hat uns mit seiner lässigen Art die Grundlagen von Python nahegebracht und – ich kann da natürlich nur für mich sprechen – echt Lust auf den Workshop gemacht. Auch wenn ich mangels Vorkenntnisse, die tieferen Abläufe zum Ende hin nicht mehr ganz so einfach nachvollziehen konnte: Meine Anmeldung für den zweitägigen Workshop habe ich nicht gecancelt. Es war einfach zu spannend, was sich mit ein paar Zeilen Code alles machen ließ.
Praktischer Anwendungsfall: Für die Schildkröte das Kühlschrankklima programmieren
Erster Workshop-Tag, ich sitze wieder hochmotiviert vor meinem Laptop, Kaffee ist natürlich mit am Start und als analoges Kontrastprogramm liegen Zettel und Stift bereit. Es kann losgehen. Wir sind 14 bunt zusammengewürfelte Teilnehmer*innen aus den unterschiedlichsten Feldern, von VWL über Maschinenbau bis Publizistik ist alles dabei. Und auch der Wissenstand was Programmieren angeht, ist völlig verschieden: Es gibt Teilnehmer*innen wie mich, die absolute Laien sind und solche, die sogar fünf und mehr (!) Programmiersprachen beherrschen. Dementsprechend gehen auch die Wünsche, was man letztendlich mit Python anfangen möchte, weit auseinander. Stefan z.B. kennt sich bereits mit den Grundlagen aus. Er kam über seine Schildkröte zu Python, denn er hat damit seinen Kühlschrank so umprogrammiert, dass darin das perfekte Wohlfühlklima für den Winterschlaf seines gepanzerten Mitbewohners herrscht. Dieter dagegen möchte mit Python Hundetransporter überwachen und die Daten automatisch analysieren.
Python, Anaconda, Jupyter - What?
Wir starten mit dem praktischen Teil: Zuerst müssen wir alle Anaconda installieren. Das ist eine Umgebung, in der verschiedene Python-Versionen installiert werden können. Wir lernen als Erstes: Nicht alle Python-Anwendungen funktionieren in der gleichen Python-Version ohne sich gegenseitig zu behindern – also packen wir die Pythons in die Anaconda, um unerwünschte Nebeneffekte zu vermeiden. So weit, so gut. Als nächstes installieren wir unser eigentliches Programmierinterface in Anaconda: Jupyter.
Und dann können wir auch endlich mit dem Programmieren starten! Also zumindest fast alle, denn leider konnte einer der Teilnehmer*innen wegen eines streikenden Computers nicht mitmachen.
Joshua startet mit den Grundlagen: list, string, boolean, tupel und so weiter. Es macht sich für mich bezahlt, dass ich schon beim Vortrag dabei war. Ich kann der Logik auf der Python aufgebaut ist gut folgen und verstehe die Grundkonzepte, die uns Joshua vorstellt. Nach jedem Themenblock bekommen wir eine kleine Aufgabe gestellt und werden in Gruppen auf Python losgelassen. In meiner Gruppe sind zwei Andreas´ und in Zusammenarbeit mit ihnen konnte ich die Aufgaben ziemlich problemlos lösen. Denn auch wenn die Syntax mir noch Probleme bereitet, kann ich zumindest einen Beitrag zum logischen Aufbau liefern – ein erstes Erfolgserlebnis.
Die vier Stunden vergehen wie im Flug – und ich bin anschließend zwar mental ziemlich ausgelaugt, aber immer noch voll motiviert. An meiner Motivation ändert sich auch nur wenig, als mir die anderen in unserer lockeren Gesprächsrunde danach erklären, dass man Python nur durch jahrelange Fleißarbeit richtig lernen kann und wenn ich bis dato folgen konnte, schon viel gelernt habe. Einen kleinen Dämpfer verpasst mir das aber trotzdem, ob ich mir das dann auch wirklich aufhalsen werde?
Wichtigster Tipp: Stackoverflow konsumieren bis zum Abwinken
Zweiter und letzter Workshop-Tag. Heute soll es um Anwendungen von Python im Arbeitsalltag gehen, graphische Auswertungen von Exceltabellen und Parsen von Texten aus PDfs steht auf dem Plan. Wir starten mit Cheat Sheets: Denn für jeden Fehler, der beim Programmieren mit Python auftauchen könnte, gibt es auf der Seite stackoverflow garantiert eine Lösung.
Kurzer Exkurs: stackoverflow.com ist eine Seite von Programmierer*innen für Programmierer*innen. Das Portal ist eine Mischung aus Frageportal, Wikipedia und reddit.Noch einfacher geht’s, wenn wir unser Problem in Google eingeben.„Für die ersten zwei Jahre, die ihr programmiert, schaut dort (Anm. bei Google oder stackoverflow) nach. Den Fehler, den ihr habt, hatte sicher schon jemand anderes“, rät uns Joshua.
Also googeln, googlen, googlen. Soweit komme ich mit. Doch nachdem wir mit der Wiederholung des letzten Tages durch sind, merke ich schnell, dass ich an meine Grenzen komme. Ich kann dem Vortrag von Joshua zwar logisch folgen, parallel dazu aber das Gleiche zu programmieren – keine Chance. Ich entschließe mich, mich besser auf die Inhalte zu konzentrieren und zuzuhören.
Wissenschaftliche Daten automatisch graphisch veranschaulichen lassen
In den Gruppenübungen kann ich leider nur noch wenig beitragen und so lasse ich mir von meinen beiden Teamkollegen zeigen, wie das Ganze funktioniert. Joshua springt von Gruppe zu Gruppe, um uns unter die Arme zu greifen. So werden wissenschaftliche Exceldaten anschaulich als Graphen dargestellt, Exceltabellen automatisch nach vorgegebenen Parametern sortiert und die Ergebnisse als Textdatei ausgegeben.
Auch dieser Vormittag verging wie im Flug und am Ende waren alle – mich eingeschlossen – super zufrieden mit dem Workshop von Joshua. Ich mache mir auch nichts draus, dass ich am Schluss nur noch zuhören, aber nicht aktiv programmieren konnte. Schließlich bin ich schon vorgewarnt worden, dass ich nach nur 8h Workshop sicher keine Python-Expertin sein werde.
Nach zwei Tagen intensiven Workshop bin ich vor allem eines: mental ausgelaugt. Das war viel Input und auch wenn es wirklich Spaß gemacht hat, bin ich mir nicht sicher, ob ich es zeitlich schaffen werde, mir Python beizubringen. Doch eines habe ich auf jedenfall gelernt: Können würde ich es. Und vielleicht sollte ich mir als Anreiz eine Schildkröte zulegen.