PyCologne Treffen Januar 2016
Datum: 13.01.2016, 19:00 Uhr Ort: Chaos Computer Club Cologne (C4), Köln Anwesend: 23 Personen
Zum Jahresauftakt ging es zunächst um Erwartungen und Wünsche an pyCologne für 2016, danach stellte Chris Arndt Entity Component Systems mit einer Beispielanwendung vor und Henning Dickten gab eine Einführung ins Logging in Python. Bei den Lightning Talks ging es um automatisiertes Code-Audit, die Frage "pythonic oder nicht" und Highlights aus der Data Science des Jahres 2015.
Agenda
- Was erwartet ihr von pyCologne für 2016? (Stefan Erbschwendner)
- Entity Component Systems mit Beispielanwendung (Chris Arndt)
- Einführung und Diskussion: logging (Henning Dickten)
- Automatisches Code Audit (Christian Geier)
- Pythonic oder nicht (Christian Geier)
- Bei Zeit: gitpandas-Beispiel (Christian Geier)
- 5 Highlights für Data Science 2015 (Henning Dickten)
Vermischtes / News
- http://dataconomy.com/14-best-python-pandas-features/
- https://github.com/wdm0006/git-pandas
- hasattr() might not behave like you expected on python 2
- Python will move to github for scm
- (Jupyter, ex IPython) Notebook 4.1 released
Ankündigungen
Das PythonCamp findet vom 2. bis 3. April 2016 statt: http://pythoncamp.de. Voranmeldung für pyCologner ist möglich (der Rest erst ab Freitag): Wer sich als Organisation "pyCologne" im User-Profil auf der BarCamp-Webseite einträgt, wird mit Zeitverzögerung herausgepickt, das ist keine Automatik. Helfende Hände aus der Gegend sind gern gesehen, eine Anmeldung als Helfer ist dafür nicht zwingend nötig, einfach früher kommen und später gehen.
Außerdem: Data Science Meetup Köln am 29.01. im Startplatz, Mediapark
Plenumsdiskussion: Was erwartet ihr von pyCologne für 2016?
Stefan Erbschwendner eröffnet die Diskussion:
- Alle sind eingeladen, Beiträge (kurz oder lang) zu liefern, für alle Niveaus
- Code, auch nicht perfekter, ist gerne gesehen
- Webseite verbessern?
- 10 Jahre PyCologne
- Workflow, Werkzeuge, Bibliotheken
- Ein Projekt/Beispiel über das Jahr hinweg aus verschiedenen Gesichtspunkten zeigen
- Diversität: unterschiedliches Python-Vorwissen, Hintergründe, Anwendungsbereiche
Präsentationen
Einführung und Diskussion: logging - Henning Dickten
- Zentrale Auswahl des Verbose-Levels mit dem logging-Modul, Ausgabe nicht auf stdout
- Vergleichsweise langsam, Vorsicht beim Einsatz in rechenintensiven Teilen des Codes
- Logging in Kommandozeilenskripten: https://gist.github.com/SpotlightKid/7a3162f8180bcf04dcbd
- Bei größeren Projekten zentrales Logging von Submodul-Logs, Lesbarkeit hängt von guter Namenswahl ab
- Nutzt jeder logging, lässt sich das Logverhalten von Modulen Dritter steuern
- Einzeiliges Loggen ist vorzuziehen
- Für Performance: assert nutzen (wird mit entsprechenden Parametern gar nicht ausgeführt)
- Logging-Beispiel
- Empfohlen:
logging.info("infostring %s %i", arg1, arg2)
Entity Component Systems (ECS) mit Beispielanwendung - Chris Arndt
Folien, Beispiele und Installationshinweise: https://github.com/SpotlightKid/talk-ecs-pycologne
Methode zur (architektonischen) Strukturierung von Programmcode: Trennung von Identität, Verhalten und Daten von Objekten im Gegensatz zur klassischen Objektorientierung.
Esper
ECS-Bibliothek für Python, unabhängig von Grafik- oder Game-Engine: https://github.com/benmoran56/esper
Hinweis aus dem Plenum: Ein Styleguide als Objektphilosophie hilft auch bei Namespaces und der Benennung von Properties, siehe https://www.google.com/design/spec/material-design/introduction.html
5 Highlights für Data Science 2015 - Henning Dickten
- Numba: Decorator für annähernde C-Geschwindigkeit
- (Ana)Conda: pip + virtualenv, plattformunabhängig, schnell produktiv, mit den typischen Nachteilen gebündelter Systeme
- Jupyter: Code ausprobieren und mit anderen teilen
- matplotlib: neue Version mit vielen Updates
Lightning Talks
Automatisches Code Audit - Christian Geier
Pythonic oder nicht - Christian Geier
Sehenswerte Vorträge:
- Raymond Hettinger - Beyond PEP 8: https://www.youtube.com/watch?v=wf-BqAjZb8M
- Brandon Rhodes - The Day Of The EXE Is Upon Us: https://www.youtube.com/watch?v=wsczq6j3_bA (hier vor allem interessant: Performance des dynamischen Dispatching von Python), Folien: http://rhodesmill.org/brandon/slides/2014-04-pycon/day-of-the-exe/
- Mehr Ähnliches: http://pymust.watch/
Kneipe
Der Abend wurde mit gemeinsamem Essen, Trinken und regem Gespräch im Herbrands beendet.
Nächster Termin: 10.02.2016
Protokoll des Treffens, gemeinsam im Etherpad mitgeschrieben und aus dem Archiv der Jahre 2013 bis 2020 übernommen.