Interview mit Dominik Geldmacher und Jochen Wersdörfer

„Die Python-Community ist generell eine der offensten, hilfsbereitesten und freundlichsten“
Keine Kommentare

Python wird von vielen Programmierern, Studien und Rankings nicht erst seit gestern großes Potential bescheinigt. Wir haben mit Dominik Geldmacher und Jochen Wersdörfer, den Köpfen hinter dem deutschsprachigen Python-Podcast, über ihr Projekt, die Einsatzmöglichkeiten der Sprache und die Community gesprochen.

Dominik Geldmacher und Jochen Wersdörfer betreiben seit 2018 ihren deutschsprachigen Python Podcast, der sich seit seinem Start immer größerer Beliebtheit erfreut. Wir haben mit den beiden Pythonistas unter anderem über den Einsatz der Programmiersprache im Web-Bereich, aber auch in der aktuellen Corona-Krise gesprochen.

Entwickler: Hallo und vielen Dank, dass ihr beiden euch Zeit für dieses Interview genommen hat. Python wird aktuell in allen großen Rankings als eine der auf aufstrebendsten Programmiersprachen mit großem Potential geführt. Was macht Python so besonders im Vergleich zu anderen Sprachen?

Dominik Geldmacher: Python hat eine auffallend ästhetische Syntax, die mir vom ersten Augenblick an gefallen hat. Außerdem ist die Sprache gut dokumentiert und viele großartige Entwickler haben wertvolle Beiträge dazu geleistet, von denen jeder viel lernen kann. Ansonsten kann man mit Python auch schnell verschiedenste Dinge zusammenkleben, das ist im Alltag sehr praktisch.

Jochen Wersdörfer: Als Programmiersprache kann man es nicht allen recht machen. Die Wahl der Kompromisse, die Python eingegangen ist, führt aber dazu, dass es in den meisten Fällen einfacher ist, ein Programmierprojekt mit Python umzusetzen, als beispielsweise mit Java. Was nicht bedeutet, dass Java nie die richtige Wahl wäre. Es ist nur weitaus weniger offensichtlich, wann das der Fall ist, als viele glauben. Wenn man sich nur die theoretischen Sprachfeatures anschaut, könnte man auf die Idee kommen, dass Sprachen wie C++/C#/Java für die meisten Programmierprojekte eine gute Wahl wären, Python hingegen nur in ein paar Spezialfällen. Tatsächlich würde ich aber behaupten, dass die Python-Tradeoffs für die meisten Anwendungsfälle deutlich besser passen und man Sprachen wie C++ nur in Spezialfällen braucht, mit denen die meisten Programmierer nie zu tun haben.

Entwickler: Wie seht ihr die weitere Entwicklung von Python? Wird sich die Sprache zukünftig auch mehr in Bereichen wie der Web-Entwicklung durchsetzen können?

Dominik: Django ist mit der neuen Async-Funktionalität auf einem sehr guten Weg und vor allem im Server-Backend gut aufgestellt.

Das Web ist immer besonders schnelllebig, es bleibt spannend, was da alles noch auf uns zukommen wird.

An den JavaScript-Frameworks wie Vue kommt man im Web natürlich nicht vorbei. Das Web ist immer besonders schnelllebig, es bleibt spannend, was da alles noch auf uns zukommen wird.Vielleicht werden wir ja alle überrascht und es gibt eines Tages sogar ein Python-Frontend im Browser, wer weiß.

Jochen: Ich denke, dass Web-Entwicklung neben Data Science der zweite große Bereich ist, in dem Python auch jetzt schon eingesetzt wird. Einige Beispiele für Webseiten, bei denen Python eine wichtige Rolle spielt wären Facebook (fast alle Backend-Services, DevOps, Monitoring – es sind über 20 Millionen Zeilen mittlerweile), Instagram, Youtube, Spotify, Dropbox, Reddit, Pinterest, Eventbrite (die Liste ließe sich noch lang fortsetzen).

Strategisch hat Python im Bereich Web-Entwicklung zwei fundamentale Nachteile gegenüber Javascript: Man kann erstens nicht den gleichen Code im Frontend und Backend laufen lassen, d. h. man muss immer Teile der Applikationslogik doppelt implementieren. Und zweitens gibt es für Javascript mittlerweile ausgereifte UI-Toolkits, die für Python fehlen. Selbst wenn Python irgendwann via WebAssembly auch im Frontend einsetzbar würde, bliebe das zweite Problem. Aber wer weiß.

ML Summit Munich 2020

Market Segmentation in the Era of Big Data

mit Özge Sahin (SkyScry)

Deep Learning mit TensorFlow

Mit Jakob Karalus (Deloitte Consulting)


Entwickler: Python gilt aufgrund der übersichtlichen und knappen Syntax als eine der einfach zu erlernenden Programmiersprachen. Was würdet ihr Entwicklern raten, die Python lernen möchten? Gibt es eine Best-Practice?

Dominik: Sucht Euch ein Projekt, an dem ihr Spaß habt und fangt einfach an. Habt keine Angst Fehler zu machen und fragt andere, möglichst erfahrenere Entwickler nach ihrer Meinung. Das wichtigste ist wirklich viel zu coden, an möglichst realen Projekten. Lasst die vielen guten Anfänger-Tutorials bei Seite, sobald ihr die grundlegende Syntax verstanden habt.

Baut so schnell wie möglich etwas Richtiges zusammen. Zum Beispiel ein kleines Minispiel, die Analyse eines lokalen Datensatzes, irgendetwas. Dann zeigt ihr es jemandem, der alles auseinander nimmt. Wenn ihr euch verbessern wollt, könnt ihr auch den Code von Anderen lesen (Django ist meiner Meinung nach recht „pythonic“ geschrieben). Ich habe es geschafft, täglich kleine Aufgaben zu lösen – zum Beispiel bei codewars / Adventofcode, die mich wirklich weitergebracht haben und zu denen es unfassbar effektive Lösungen von erfahrenen Programmierern gibt, von denen man sich wieder eine Menge abschauen kann.

Ich kann auch empfehlen, sich gut in der Community zu vernetzen.

Es gibt tolle Python-Usergroups bestimmt auch in eurer Region und die veranstalten häufig auch coole Python-Sprints oder Hackathons, auf denen man von den Profis richtig was lernen kann.

Jochen: Was Dominik sagt. Projekte, bei denen man ein tatsächliches Problem lösen möchte, helfen auch meiner Erfahrung nach deutlich besser beim Lernen, als abstrakte Tutorials. Ansonsten würde ich zusätzlich empfehlen, zu lokalen Python Usergroup-Treffen zu gehen. Oder sich mal ein bisschen im nächstgelegenen Hackerspace umzuschauen. Viele praktische Probleme sind schwer zu lösen, wenn man auf sich allein gestellt ist.

Entwickler: Ihr sendet seit 2018 den aktuell einzigen deutschsprachigen Podcast über Python. Wie kam es dazu? Wie ist die Resonanz und welche Pläne habt ihr in der Zukunft?

Dominik: Wir haben uns auf einem Python-Barcamp getroffen, uns über Podcasts unterhalten und fanden die Idee großartig. Eigentlich wollten wir einen schrägen Monty-Python Namen wählen, aber python-podcast.de war noch frei.. nunja. Die Resonanz ist ziemlich großartig, wir haben schon an die 1.000 Abonnenten, die unseren Podcast regelmäßig hören und machen mit möglichst monatlichen Folgen weiter, weil uns das Podcasten einen riesigen Spaß macht. Es ist natürlich nicht immer einfach den Turnus einzuhalten, weil wir beide mit Jobs & Familien schon sehr eingebunden sind, aber wir geben nicht auf und versorgen euch weiterhin mit aktuellen News aus der Szene. Mein großer Traum ist es, einmal Python-Erfinder Guido van Rossum ans Mikrofon zu bekommen.

Jochen: Podcast als letztes freies Medium im Internet fand ich schon immer sehr interessant und hatte auch schon länger mit dem Gedanken gespielt, mal selbst einen zu produzieren. Aber erst als ich Dominik auf dem besagten Barcamp getroffen habe, wurde das Ganze konkret und bekam den nötigen Drive um tatsächlich zu starten.

Wir bekommen immer wieder Mails oder werden auf Veranstaltungen angesprochen.

Für mich war tatsächlich eher überraschend, wie viel direkte Interaktion aus dem Podcastmachen entsteht. Und das ist natürlich auch eine große Motivation damit weiterzumachen, wenn man Mails bekommt, in denen Menschen, denen man sonst nie begegnet wäre schreiben, dass sie das interessant oder hilfreich fanden. Inhaltlich werden uns die Themen jedenfalls nicht so schnell ausgehen. Ansonsten bastel ich gerade an der Software, mit der der Podcast publiziert wird und möchte die mittelfristig auf das Django-CMS wagtail umstellen. Überhaupt muss die Webseite schöner werden, aber das ist ja immer so.

Entwickler: Wie würdet ihr die deutschsprachige Python-Community beschreiben? Gibt es hier Besonderheiten zu anderen Sprachen?

Dominik: Also die Python-Community ist generell eine der offensten, hilfsbereitesten und freundlichsten Communites, die ich bisher kennen lernen durfte. Ich habe mich von der ersten Minute an absolut willkommen gefühlt. Das liegt vielleicht am besonders hohen „Nerd-Faktor“.

Jochen: Ehrlich gesagt, kenne ich andere Sprach-Communities nicht so. Über die von Rust hört man auch viel Gutes. Aber ja, ich bin immer wieder erfreut, wie nett und hilfsbereit die Leute dort sind. Ob der hohe Nerd-Faktor eher positiv oder negativ zu werten ist, weiß ich nicht. Für uns ist das natürlich gut, wir sind ja selber welche. Aber vielleicht wäre es auch mal hilfreich andere Typen von Mensch anzusprechen. Ich glaube die Django-Community ist in der Hinsicht innerhalb der Python-Community auch besonders engagiert – beispielsweise mit den Django-Girls Workshops etc..

Entwickler: Python wird besonders oft im Bereich Machine Learning und Data Science verwendet. Seht ihr Einsatzmöglichkeiten im wissenschaftlichen Bereich in der Zeit der Corona-Krise?

Dominik: Ja, auf jeden Fall. Python deckt ein breites Spektrum im Data Science Bereich ab und es gibt vielfältige Lösungsansätze, aber da kann Jochen sicher noch mehr zu sagen.

Jochen: Ja, ich denke das wird auch schon benutzt. Im Grunde verwendet man heute immer Python oder R, wenn man Data Science betreibt. Es gibt zwar auch noch Scala und Java, aber da geht es dann oft eher um den Data-Engineering-Bereich. Und gut, ein großer Teil des Data Science Softwarestacks, den man von Python oder R aus mit einem Jupiter-Notebook heraus bedient, ist dann  in C++ (tensorflow, xgboost..) oder Fortran (numpy, scipy) geschrieben, aber niemand würde auf die Idee kommen, C++ in einem Jupyter-Notebook zu verwenden (hoffentlich bringe ich hier niemanden auf Ideen).

Entwickler: Vielen Dank für das Interview!

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -