Help us!

Take some time to transcribe PyCon 2014 talks! Click on the "Share" button below the video and then "Subtitle" to get started.

PyCon DE 2013

URL:
https://2013.de.pycon.org/
Description:
No description.
Date:
Oct. 14, 2013
Number of videos:
52
batou - multi(component|host|environment|.*) deployment
PyCon DE 2013
Christian Theune
Recorded: Oct. 17, 2013Language: German

batou ist ein Werkzeug um das Deployment für server-basierte Anwendungen zu automatisieren.

Es basiert auf vielen Ideen von Puppet, Fabric und anderen Werkzeugen, bietet aber einen spezifische Modellierungsansatz, der das Konzept von "Konvergenz" einfach umsetzbar macht.

In dem Vortrag möchte ich erläutern warum Deployments zu automatisieren schwierig ist, was "Konvergenz" dazu beitragen kann um es einfach zu machen, und wie das in Batou ganz praktisch aussieht.

boost.python - die Nabelschnur zu Python
PyCon DE 2013
Reinhard Wobst
Recorded: Oct. 17, 2013Language: German

Mit boost.python kann man Klassen und Klasseninstanzen an einen eingebetteten Python-Interpreter weiterreichen und die Instanzen dort verändern; ebenso lassen sich Python-Objekte bequem in C++ verarbeiten. Gegenüber der Python-C-API entfällt das fehlerträchtige Referenz-Handling, und der Stil ist näher an Python. Eigentlich ist diese Bibliothek die erste Wahl für diese Situation, doch leider ist die Dokumentation völlig unzureichend. Hilfe gibt es im Netz, doch unstrukturiert und nicht immer optimal. Der Vortrag geht auf Missverständnisse und typische Fehler ein, die bei der Nutzung wenigstens anfangs auftreten, zeigt die (noch vorhandenen) Grenzen auf und bietet einige "Kochrezepte". Außerdem zeigt er, wozu das alles in der Praxis gut sein kann.

Continuous building with Pybuilder
PyCon DE 2013
YADT Project
Recorded: Oct. 17, 2013Language: German

Pybuilder ist ein erweiterbares und benutzerfreundliches continuous Build Tool für Python, welches die Arbeit mit fremden (und eigenen) Python-Projekten angenehmer macht. Damit lassen sich diverse Buildtools wie coverage, unittest, pip oder auch setuptools zentral instrumentieren. Und das Beste zum Schluß : 100% open source!

Continuum Data Analytics Stack
PyCon DE 2013
Dr. Yves Hilpisch
Recorded: Oct. 17, 2013Language: German

Continuum Analytics bietet mit Anaconda Accelerate eine kommerzielle, skalierbare und unternehmenstaugliche Python-Distribution. Diese basiert auf der beliebten Open Source Distribution Anaconda.

Gegenüber der freien Distribution verfügt Accelerate über Bibliotheken wie NumbaPro oder IOPro, die eine nachhaltige Beschleunigung von typischen Data Analytics Aufgaben mit Python erlauben.

Bokeh, eine Open Source Bibliothek, etabliert einen neuen Standard für die interaktive, Web-basierte Visualisierung von großen Datenmengen.

Der Talk illustriert die Leistungsfähigkeit des "Continuum Data Analytics Stack" an Hand einer Reihe von praxisnahen Beispielen, z.B. aus dem Finanzumfeld, und gewährt auch einen Einblick in aktuelle sowie geplante Entwicklungen und Erweiterungen.

Die Dinge im Internet der Dinge mit Python verbinden...
PyCon DE 2013
Andreas Schreiber
Recorded: Oct. 17, 2013Language: German

Das Internet der Dinge besteht aus kleinen, manchmal intelligenten, Geräten und Sensoren, die über das Internet verbunden sind. Typische Sensoren sind Wettermessgeräte oder medizinische Geräte. Das Internet der Dinge wird nun bald real da sein, was durch günstige kleine Einplatinencomputer wie Raspberry Pi oder Arduino mit beeinflusst wird. Allerdings haben diese Geräte nicht viel Rechenleistung. Außerdem sind sie in machen Umgebungen auch nur mit eingeschränkter Netzwerkbandbreite angebunden. Um nun (viele) solche Geräte zu verbinden und Daten austauschen zu lassen sind sehr leichtgewichtige Protokolle und Implementierungen notwendig.

Der Vortrag ist über das Protokoll Message Queuing Telemetry Transport (MQTT), ein sehr geeignetes Protokoll zum Verbinden kleiner Geräte und Sensoren. MQTT basiert auf einer Publish/Subscribe-Architektur. Es eignet sich gut zum Schicken von Daten von Sensoren zu anderen Geräten. Zum Beispiel lassen sich Temperaturmesswerte von einem Temperaturfühler ohne viel Overhead zu einem Server schicken oder zu einem Smartphone als Push-Nachricht übermitteln. Ein andere Anwendung von MQTT sind Chat-Systeme, z.B. ist das Facebook-Messaging auf Basis von MQTT implementiert.

In dem Vortrag geht es vor allem um Open-Source-Implementierungen von MQTT. Speziell wird der freie MQTT-Broker Mosquitto und dessen Python-Client-Bibliothek vorgestellt. Mosquitto ist eine leichtgewichtige Implementierung die effizient auf günstigen Einplatinenrechnern oder Smartphones läuft. An ein paar Bespielen in Python wird im Vortrag verdeutlicht wie leicht sich Anwendungen auf Basis von MQTT realisieren lassen: Die Übertragung von Temperaturmesswerten per Raspberry Pi zu einem Server, das Senden von Push-Nachrichten zu Android-Smartphones und das Senden von Smartphones aus einer Kivy-App heraus.

FritzConnection
PyCon DE 2013
Klaus Bremer
Recorded: Oct. 17, 2013Language: German

Die AVM Fritzbox ist ein weit verbreiteter Router für den Internet-Zugang und bietet darüber hinaus auch Funktionen einer Telefonanlage.

FritzConnection ist eine Sammlung von Modulen, die eine Python-API zur FritzBox implementieren.

Der Vortrag gibt einen Überblick über das Funktionsprinzip, den Stand der Entwicklung sowie Beispiele für den Einsatz.

Der Sourcecode ist verfügbar auf Bitbucket: https://bitbucket.org/kbr/fritzconnection

Handling Big Data with Python
PyCon DE 2013
Florian Wilhelm
Recorded: Oct. 17, 2013Language: German

The talk gives a small introduction of how Blue Yonder applies machine learning and Predictive Analytics in various fields as well as the challenges of Big Data. Using the example of Blue Yonder's machine learning software NeuroBayes, we show the made efforts and hit dead ends in order to provide a flexible and yet easy to use interface for NeuroBayes to Data Scientists. Since NeuroBayes is written in FORTRAN for performance reasons different interface approaches were tried which lead us eventually to a Python interface. In the talk we elaborate on the up- and downsides of the different approaches and the various reasons why Python won the race with an emphasize on the benefits of the Python ecosystem itself. Also, we discuss performance as well as scalability issues with Python and how we address them. In detail, we show the application of Cython to speed up calculations in the Python interface layer as well as distributed computing in a private cloud called Stratosphere. Scalability and efficiency is of utmost importance when data processing is time critical. Our overall goal is to give the audience an overview how Python fits in the software ecosystem of a company handling Big Data.

High-Level Programmierung in der Raumfahrt
PyCon DE 2013
Felix Huber
Recorded: Oct. 17, 2013Language: German

Field Programmable Gate Arrays (FPGA) werden normalerweise auf Registerebene programmiert mit Hardwarebeschreibungssprachen wie Verilog oder VHDL. Dies ist vergleichbar mit Assemblerprogrammierung eines Mikroprozessors. Die Sprache Handel-C (sic!) hat sich zum Ziel gemacht, Hardwarebeschreibung mit C-Syntax zu ermöglichen, unabhängig von der zu Grunde liegenden Hardware. Dazu muß das Problem die Synchronizität durch die inhärente Parallelität einer Hardwarefunktion gelöst werden. Mit Handel-C ist es nun möglich, einen Algorithmus in C zu schreiben, auf einem Rechner zu simulieren und anschließend aus dem identischen Quellcode eine Hardwareimplementierung zu synthetisieren. Dabei gehen die Vorteile einer Hochsprache nicht verloren, im Gegenteil: durch den global optimierenden Compiler werden weniger Ressourcen auf dem FPGA benötigt. Zusammen mit Bibliotheken für Fest- und Fließkommaarithmetik, Graphikausgabe und Tastatur bedient sich ein FPGA dann wie ein embedded Prozessor mit einem Geschwindigkeitszuwachs von Faktor 100.

Kivy und Arduino - Robotersteuerung mit dem Smartphone
PyCon DE 2013
Andreas Bresser
Recorded: Oct. 17, 2013Language: German

In diesem Vortrag wird gezeigt, wie man ein Robotik-Board (Arduino) über Bluetooth durch ein Smartphone steuern kann. Hierbei kommt Kivy als Framework für die Grafische Oberfläche zum Einsatz.

Lupa - LuaJIT in Python
PyCon DE 2013
Stefan Behnel
Recorded: Oct. 17, 2013Language: German

Der Python-Interpreter hat den Ruf, eine ausgereifte und grandios einfach zu verwendende dynamische Sprache und Laufzeitumgebung zu bieten, die für jede noch so exotische Anforderung eine Lösung bereit hält.

Ein oft genanntes Manko ist jedoch die begrenzte Performance des Interpreters für stark algorithmisch geprägte, kritische Teile von Anwendungen. Insbesondere hochdynamischer und generierter Code kommt hier schnell an seine Grenzen.

Auf der anderen Seite existiert mit LuaJIT2 eine sehr schnelle JIT-kompilierte Laufzeitumgebung der dynamischen Programmiersprache Lua, die bereits so manche Performance-Rekorde gebrochen hat und sich durch ihre geringe Größe leicht in andere Programme einbinden lässt. Das große Manko von Lua ist jedoch das Fehlen von Standard-Bibliotheken, die extrem begrenzten Sprach-Features und der daraus resultierende hohe Aufwand bei der Entwicklung größerer Anwendungen.

Mit Lupa steht eine Verbindung der beiden Programmiersprachen bereit, die es ermöglicht, aus Python heraus Lua-Code auszuführen und direkt mit diesem zu kommunizieren und Daten auszutauschen. So kann der größte Teil einer Anwendung in Python implementiert werden, und einzelne Aufgaben können von der schnellen LuaJIT-Umgebung übernommen werden.

Dieser Vortrag stellt das Projekt vor und gibt Einblicke in die Integration der beiden Programmiersprachen.

MapReduce mit Disco
PyCon DE 2013
Dr. Jan Morlock
Recorded: Oct. 17, 2013Language: German

Mit dem MapReduce-Verfahren können massive Datenmengen auf einem Rechencluster verarbeitet werden. Namensgeber und wichtige Bestandteile sind eine Map- und eine Reduce-Phase. Diese werden jeweils parallelisiert ausgeführt und ermöglichen somit eine optimale Auslastung der vorhandenen Ressourcen. Im Vergleich zu einer entsprechenden sequentiellen Implementierung können dadurch große Zeiteinsparungen erreicht werden.

Mit dem freien Disco-Framework können MapReduce-Aufgaben leicht in Python erstellt werden. Beim Zugriff auf die Eingabedaten werden verschiedene Protokolle unterstützt. Während der Ausführung kann der Zustand des Rechenclusters sowie der Fortschritt der einzelnen Aufgaben mit Hilfe einer Weboberfläche überwacht werden. Ein verteiltes Dateisystem, das Disco Distributed Filesystem (DDFS), wird zur Speicherung der Zwischen- und Endergebnisse verwendet.

py.test - feature and new release highlights
PyCon DE 2013
Holger Krekel
Recorded: Oct. 17, 2013Language: German

py.test is a popular tool for writing tests in Python. It offers unique features not found in other testing tools. Apart from some basics, this talk introduces the modular fixture mechanism, the assert statement reporting and discusses the latest news of pytest-2.4 such as better doctest support and using contextmanagers in conjunction with fixtures. We'll also quickly discuss the most popular from the many existing plugins.

Python Packages
PyCon DE 2013
Daniel Hepper
Recorded: Oct. 17, 2013Language: German

setup.py, PyPI, easy_install, pip, distutils, setuptools, virtualenv - wer ein Paket nutzen oder den eigenen Code als Paket verteilen will muss sich durch einen Dschungel von Modulen und Werkzeugen kämpfen. Dieser Vortrag bringt Licht ins Dunkel und stellt aktuelle Best Practices für die Verwendung und Erstellung von Python-Paketen vor.

Pythons Datenmodell - Ein Überblick
PyCon DE 2013
Oliver Bestwalter
Recorded: Oct. 17, 2013Language: German

Pythons Datenmodell ist sehr einfach: alles ist ein Objekt (wirklich alles). Darüberhinaus verfügt die Sprache über eine Reihe von Konventionen und Protokollen, die es sehr einfach machen, die eigenen Klassen dazu zu überreden, sich wie native Datentypen zu verhalten.

In diesem Vortrag werden die dafür nötigen zentralen Konzepte eingeführt und mittels einfacher Beispiele demonstriert.

Table Partitioning with Django
PyCon DE 2013
Max Tepkeev
Recorded: Oct. 17, 2013Language: English

Table partitioning can be thought of as a division of one large table into several smaller tables which represent that original table. Table partitioning is "transparent", that means that in theory you don't need to change any code to work with partitioned tables.

We will talk about table partitioning theory in general and implementations in different database servers. Why and when we need to do table partitioning. What problems we can face and how we can solve them.

Django provides us with great database abstraction and ORM, but how can we use it with table partitioning ? We will talk about existing libraries for Django to work with table partitioning, their differences, which is the best (if any) and why.

VHIST - Dokumentation von Workflows wissenschaftlicher Python-Anwendungen
PyCon DE 2013
Andreas Hüsgen , Michael Sué , Stefan Vollmar
Recorded: Oct. 17, 2013Language: German

Wir haben mit VHIST ein Dateiformat entwickelt, um Workflows im Bereich Scientific Computing möglichst vollständig zu erfassen. VHIST ist PDF-kompatibel sowie PDF-unabhängig auswertbar. Wir bieten Werkzeuge, um halb- bzw. vollautomatisch VHIST-Dateien zu generieren und auszuwerten. Die Referenzimplementierung verwendet Python; Python-(scriptable)-Programme können besonders gut integriert werden.

Was Sie schon immer über „Visualisierung mit Python“ wissen wollten
PyCon DE 2013
Josef Heinen
Recorded: Oct. 17, 2013Language: German

Schon lange hat sich Python in den Software-Entwicklungsabteilungen von Forschung und Industrie etabliert, nicht zuletzt wegen der Verbreitung von Bibliotheken wie SciPy oder Matplotlib. Bei der Verarbeitung großer Datenmengen oder im Zusammenspiel mit GUI-Toolkits stößt man aber leicht an die Grenzen der interpretativen Programmierung.

Der Vortrag zeigt auf, wie solche Anforderung auf der Basis des GR Frameworks, einer "Lightweight"-Alternative zu Matplotlib, umgesetzt werden können. Im Einzelnen wird beschrieben wie man mit aktuellen Software-Technologien Echtzeit-Anwendungen oder rechenintensive Simulationen in Python realisieren kann. So lässt sich zum Beispiel durch die Verwendung von Just-In-Time Kompilierung mit Numba(Pro) eine enorme Performance-Steigerung erzielen. An konkreten Beispielen werden die Vorzüge des GR Frameworks im Zusammenspiel mit JIT-Compilern, graphischen Benutzeroberflächen (GUIs) sowie OpenGL, aber auch vor dem Hintergrund einer stetig ansteigenden Paketflut beschrieben.

Asynchrone Programmierung mit Tornado
PyCon DE 2013
Florian Ludwig
Recorded: Oct. 16, 2013Language: German

Tornado ist eine asynchrone Netzwerkbibliothek mit der Fähigkeit zehntausende Verbindungen zu verwalten. Dieser Vortrag legt dar, wie dies erreicht wird und für welche Probleme Tornado die Lösung ist - und für welche nicht. Mit Praxisbeispielen wird vorgestellt, wie TCP-Server und Webanwendungen realisiert werden können und wie man asynchron auch ohne Callback-Jungle programmieren kann.

Content Management mit Web APIs
PyCon DE 2013
Arndt Droullier
Recorded: Oct. 16, 2013Language: German

NoSql ein Schritt weiter: CMS-Systeme mit Web API lassen sich wie NoSql Datenbanken erweitert um Daten-Validierung, Workflow und Template Renderer verwenden. Ergebnis sind neue Anwendungsfälle wie Backends für Javascript Anwendungen oder Structured Data Services. Gezeigt am Beispiel Nive cms.

Data Mining mit Orange
PyCon DE 2013
Andreas Bresser
Recorded: Oct. 16, 2013Language: German

Es wird eine einfache Einführung in das Thema Data Mining gegeben. Dazu werden anschauliche Beispiele für den Einsatz von Orange gezeigt. Orange ist ein Open Source Programm, das Data Mining und Datenvisualisierung durch visuelle Programmierung oder Python Scripting ermöglicht.

Ereignis-diskrete Simulation mit SimPy
PyCon DE 2013
Stefan Scherfke
Recorded: Oct. 16, 2013Language: German

Simulationen kommen immer dann zum Einsatz, wenn Experimente an realen Systemen mit hohen Risiken bzw. Kosten verbunden oder gar nicht erst möglich sind. Zudem erlauben Simulationen es, Vorgänge, die in der realität lange Zeiträume beanspruchen, in zumeist wesentlich kürzerer Zeit nachzuvollziehen.

Nach einer kurzen Einführung in das Thema zeigt dieser Vortrag anhand einfacher Beispiele, wie sich Ereignis-diskrete Simulationen mit SimPy umsetzen lassen und welche Funktionen SimPy zur Umsetzung komplexerer Simulationen bietet.

File-I/O ist doch ganz einfach, oder?
PyCon DE 2013
Christian Kauhaus
Recorded: Oct. 16, 2013Language: German

Der Vortrag soll Bewusstsein dafür schaffen, wann man sich aus einer komfortablen Umgebung (z.B. einem Application-Framework) in eine systemspezifische Domäne begibt. Aus meiner Erfahrung im DevOps-Umfeld sind mir viele Fälle bekannt, in denen Code auf Entwickler-Maschinen keine Probleme macht, sich aber auf produktiven Servern nicht ausreichend robust verhält. Die Eigenschaften von File-I/O in Python dienen dabei als durchgehendes Anwendungsbeispiel.

Der Vortrag gliedert sich in zwei Teile. Im ersten Teil möchte ich anhand von ausgewählten "Pannen" zeigen, wann ein with open(...) allein nicht ausreicht, da z.B. die Python-Standardfunktionen keine Zuverlässigkeit im Sinne der ACID-Eigenschaften gewährleisten. Im zweiten Teil geht um konkrete Programmiertechniken wie Write-Replace-Updates, Locking oder fsync, die die Robustheit von I/O ggf. unter Einschränkung der Plattformunabhängigkeit erhöhen.

Der Anwendungsteil des Vortrags basiert auf Material aus meinem Blogpost zum gleich Thema.

Fluid-Simulation für VFX mit PyOpenCl
PyCon DE 2013
Dieter Morgenroth
Recorded: Oct. 16, 2013Language: German

Python ist zu langsam für die Berechnung von komplexen Simulationen für Visual FX? Weit gefehlt! Wir stellen ein System vor, dass auf Basis des PyOpenCl Projekts von Andreas Klöckner eine Fluid Simulation umsetzt, die sich über ein Client / Server Konzept direkt in die Software 3dsmax integriert und interaktives Arbeiten ermöglicht. Dabei läuft die Simulation gleichermaßen auf allen Kombinationen aus Linux / Windows / GPU / CPU. Ein Erfahrungsbericht aus der Anwendung der PyOpenCl Library.

Interaktive Datenanalyse und Visualisierung mit Python, pandas & Co.
PyCon DE 2013
Dr. Yves Hilpisch
Recorded: Oct. 16, 2013Language: German

Python hat sich als ernste Alternative für die effiziente und hochperformante Analyse auch von großen Datenmengen etabliert. Der Vortrag stellt die wesentlichen Python-basierten Tools für die interaktive Datenanalyse und Visualisierung vor und veranschaulicht diese an Hand von praxisnahen Beispielen.

Der Vortag nutzt IPython Notebooks um die Interaktivität in Echzeit zu veranschaulichen.

Introduction to django CMS
PyCon DE 2013
Benjamin Wohlwend , Stefanie Weilenmann
Recorded: Oct. 16, 2013Language: German

Wir werden das Open Source Content Management System «django CMS» vorstellen. Einerseits zeigen wir das Backend, aber auch das Frontend, geben Erfahrungen von Developern weiter und von CMS-Verwendern. Patrick Lauber, als Senior Web Developer geht in die Tiefe, Stefanie Weilenmann wir das CMS anhand einer kurzen Schulung zeigen.

Komponenten einer komplexen Web-Applikation
PyCon DE 2013
Daniel Hepper
Recorded: Oct. 16, 2013Language: German

Komplexe Web-Applikationen bestehen aus mehr als einem Webserver, einer Datenbank und etwas Code. Dieser Vortrag gibt einen Überblick über die typischen Bausteine wie Celery als Task Queue, Haystack für Volltextsuche, Sentry als Log-Diensten und automatischem Deployment mit Fabric und Salt. Die vorgestellte Komponenten werden anhand einer Django-Applikation erläutert, sind jedoch zum Großteil auch mit anderen Frameworks nutzbar.

MIDI-Geräte drahtlos steuern mit OSC, Raspberry Pi und python-rtmidi
PyCon DE 2013
Christopher Arndt
Recorded: Oct. 16, 2013Language: German

Mit der python-rtmidi Bibliothek lässt sich mit Python unter den drei gängigsten Betriebssystemen Windows, OS X und Linux auf MIDI-Schnittstellen zugreifen und MIDI-Daten senden und empfangen. Viele elektronische Musikinstrumente und anderes Soundequipment werden noch immer vorwiegend über das MIDI-Protokoll gesteuert und besitzen nur herkömmliche MIDI-Interfaces. Mit Hilfe einer auf python-rtmidi und pyliblo aufsetzenden Software, der OSC-MIDI-Bridge, einem Raspberry Pi und je einem billigen WLAN- und USB-MIDI-Interface, lassen sich solche Geräte kostengünstig in ein drahtloses Netzwerk einbinden und z.B. über Tablet-Computer steuern, auf denen entsprechende Software installiert ist, die OSC (Open Sound Control) unterstützt (z.B. TouchOSC oder TB MIDI Stuff). Dies ist insbesondere für Situationen praktisch, in denen kein sperriger Desktop-Computer oder Laptop mit MIDI-Schnittstelle vor Ort vorhanden oder gewünscht ist.

Mit einer "Live"-Demonstration zeigt der Referent diese von ihm implementierte Software in Aktion (ca. 4 min) und erläutert dann kurz die dabei benutzten Protokolle (MIDI und OSC) (5 min), stellt die verwendeten Python-Bibliotheken python-rtmidi und pyliblo vor (4 min) und erläutert die eingesetzten Software-Techniken. Dabei wird insbesondere auf die asynchrone Behandlung von MIDI-Input und Output via des multiprocessing-Moduls der Standardbibliothek eingegangen (5 min). Abschliessend werden noch einige Anregungen für weitere Einsatzzwecke von python-rtmidi und der OSC-MIDI-Bridge gegeben (2 min).

python-rtmidi ist ein Python-Bindung für die C++-Bibliothek RtMidi und wurde mit Cython realisiert. Die Software befindet sich noch im Alpha-Status, da momentan noch die Unterstützung der Kernel Streaming API unter Windows fehlt (Windows wird aber über das WinMM-Framework unterstützt). Die vorhandene Funktionalität ist jedoch stabil und es ist geplant, vor der PyCon.DE eine Beta-Version zu veröffentlichen. Die darauf aufsetzende OSC-MIDI Bridge ist bisher nur als Beispielskript in der python-rtmidi-Distribution verfügbar, wird aber stetig weiterentwickelt und voraussichtlich demnächst in ein eigenes Projekt ausgegliedert.

Mittwoch Lightning Talks
PyCon DE 2013
Recorded: Oct. 16, 2013Language: German

(00:00) 2. Test Driven Infrastructure - Schlomo Schapiro

(0:04:48) 3 What's (Not so) New In Python 3.4 - C. Heimes

(0:04:50) 3 What's (Not so) New In Python 3.4 - C. Heimes

(0:09:38) 4. Unicode: wide build vs narrow build - Christian Kauhans

(0:14:23) 5. Nikola - Static Blog Generator - U. Spallele

(0:18:51) 6. Ahoy! Local Message Broadcasts - M. Specht

(0:23:34) 7. Python 2 & 3 mit demselben Code - Stefan

(0:27:12) 8. YADT - An Augmented Deployment Tool - YADT Team / Max Riehl

(0:31:51) 8. YADT - An Augmented Deployment Tool - YADT Team / Max Riehl

(0:31:53) 10. Krumme Nadel im Heuhaufen - R. Wobst

(0:31:58) 10. Krumme Nadel im Heuhaufen - R. Wobst

(0:37:00) Python Brochure

(0:41:22) Python Brochure

(0:41:26) Python Brochure

(0:41:32) 9. Python Camp 2014 PyCologne - Reimar Bauer

Schlangenhochzeit in der Wolke
PyCon DE 2013
Jens Klein
Recorded: Oct. 16, 2013Language: German

Googles Appengine steht für hochskalierbare Anwendungen in der Cloud. Locandy ist unser Startup für mobile Location based Games.

Auf der Cloud-Platform mit ihrer sehr restriktiven Python-Umgebung haben wir das Portal für Spieler, Autoren und Business Kunden umgesetzt. Browser, Mobile-App und PDF-Server werden damit bedient.

Dabei ist nicht alles so rund gelaufen, wie wir es gerne gehabt hätten. Die Probleme wurden gelöst - dank Python mit seinem starken Werkzeugkasten.

Der Vortrag geht kurz auf die Anforderungen ein, zeigt auf welche Probleme es gab und wie wir sie gelöst haben. In einem Github Repository stelle ich ein Buildout inkl. kleiner Beispielapplikation mit den meisten dieser Lösungen zur Verfügung.

SCons - Software bauen in Python
PyCon DE 2013
Dirk Bächle
Recorded: Oct. 16, 2013Language: German

Dieser Vortrag stellt SCons (www.scons.org) und seine Benutzung vor. Er richtet sich in erster Linie an Softwareentwickler oder Betreuer von großen Buildumgebungen, die nach Alternativen zu herkömmlichen Tools, wie CMake oder autotools, suchen.

SCons ist ein Buildsystem das vollständig in Python programmiert wird. Die Eingabedateien zur Definition der einzelnen Buildschritte werden ebenfalls als Pythonskripte ausgeführt. Durch diese Kombination einer DSL (Domain Specific Language) mit der Allzwecksprache Python, lassen sich auch komplizierte Softwareprojekte einfach spezifizieren und bauen.

Das Framework das sich hinter dem Startskript verbirgt, ist auf einfache Erweiterbarkeit und hohe Flexibilität ausgelegt.

Während des Vortrags soll gezeigt werden wie man ein Projekt richtig anfängt und make-typische Denkweisen vermeidet. Die Vorteile von SCons und Standardfragen, z.B. zur Erweiterung des Systems für neue Buildschritte, werden diskutiert.

Am Ende soll der Zuhörer einen Eindruck von der Arbeitsweise des Programms erhalten haben, und entscheiden können ob sich der Einsatz von SCons für sein Softwareprojekt lohnen würde.

Spinning a Web Framework
PyCon DE 2013
Martijn Faassen
Recorded: Oct. 16, 2013Language: English

Over the years I've been exposed to a lot of ideas in web frameworks. Reflecting on these ideas is valuable when you build a new one, but also when you simply use an existing web framework.

In this talk I will discuss the slow genesis of Morepath, a micro web-framework with super powers that I've created, and discuss some of the ideas behind it, things I've learned, and also share some thoughts about the creative process.

The ideas behind Morepath are not revolutionary, but hopefully still make you think.

Wiki-Restauration aus dem Web Cache
PyCon DE 2013
Reimar Bauer
Recorded: Oct. 16, 2013Language: German

Nach einem Totalschaden ist bei Webanwendungen nicht unbedingt alles verloren. Die Inhalte sind in der Regel auf eine begrenzte Zeit in Suchmaschinen wieder zu finden.

Der Vortrag beschreibt ein Verfahren das Anfang des Jahres zum Einsatz kam um Wiki-Seiten aus dem HTML Webcache zurück in Wiki-Seiten Markup zu übersetzen.

Wissenschaftliches Publizieren mit Python
PyCon DE 2013
Dr. Yves Hilpisch
Recorded: Oct. 16, 2013Language: German

Python hat sich als eine der bedeutendsten Programmiersprachen in vielen Bereichen der Wissenschaft etabliert. Jüngere Entwicklungen im Bereich des Publizierens machen die Nutzung von Python noch attraktiver. So ist es heute recht einfach möglich ausführbaren Python-Code in Dokument-Sourcen zu integrieren und die Ergebnisse dieses Codes direkt in das Dokument zu importieren (z.B. Formeln, Berechnungen, Abbildungen).

Der Vortrag skizziert Tools wie IPython Notebook, Sphinx (inkl. IPython Extension) oder auch PythonTEX. Er zeigt auch, wie einfach Open Research mit Hilfe dieser Tools zu realisieren ist.

Wo ist meine Pfadklasse?
PyCon DE 2013
Oliver Bestwalter
Recorded: Oct. 16, 2013Language: German

Zusammenfassung der Diskussion um die Einführung einer Pfadklasse in die Python Standard Library. Überblick über bereits existierende Bibliotheken, gefolgt von einem pragmatischen Ausblick.

XML generieren mit lxml
PyCon DE 2013
Stefan Behnel
Recorded: Oct. 16, 2013Language: German

lxml ist der Platzhirsch unter den XML-Tools für Python. Über das übliche Parsen hinaus bietet es auch einige schöne Möglichkeiten, XML-Dokumente effizient zu generieren. Der Vortrag bietet eine Einführung in die Teile von lxml, die das Erzeugen von XML einfach und übersichtlich machen.

BACARDI - Ein Katalog für Raumfahrtrückstände
PyCon DE 2013
Michael Meinel
Recorded: Oct. 15, 2013Language: German

Das Thema Weltraumschrott tritt vermehrt in die Öffentlichkeit, denn nur wenn jetzt das Augenmerk der raumfahrenden Nationen darauf gerichtet wird, werden wir auch in Zukunft zu den Sternen reisen können. Die Grundlage für eine nachhaltige Raumfahrtstrategie ist die Beobachtung und Katalogisierung der Raumfahrtrückstände für die Planung und Durchführung von Missionen. Am Deutschen Zentrum für Luft- und Raumfahrt e.V. entsteht derzeit der Backend Catalog for Relational Debris Information (BACARDI) als Technologiedemonstrator zum Umgang mit großen Datenmengen.

Die Python-Software kombiniert dazu moderne Technologien wie ZeroMQ und Protocol Buffers zu einem flexiblen, skalierbaren Gesamtsystem, das in der Lage sein soll, den wachsenden Ressourcenansprüchen zu genügen. Dank der plattformunabhängigen Schnittstellen können Komponenten später auch in anderen Programmiersprachen wie C, C# oder Java angebunden werden.

Cython für schnelleren Python-Code
PyCon DE 2013
Stefan Behnel
Recorded: Oct. 15, 2013Language: German

Der Cython-Compiler ist mehr als nur ein Weg, Erweiterungsmodule for CPython zu schreiben. Durch die statische Übersetzung von reinem Python-Code öffnen sich neue Möglichkeiten, den Code vielfach zu beschleunigen. Anhand einiger Beispiele wird gezeigt, wie durch Profiling und gezielte manuelle Optimierung auch reiner Python-Code von statischer Kompilierung profitieren kann, ohne dabei das Ökosystem der CPython-Laufzeitumgebung verlassen zu müssen.

devpi: driving packaging and testing needs
PyCon DE 2013
Holger Krekel
Recorded: Oct. 15, 2013Language: English

devpi provides both a private pypi server, a self-updating pypi.python.org package cache, and work flow commands for uploading, testing and installing packages. This talk shows some example scenarios and discusses the unique feature of seemlessly "inheriting" the pypi.python.org packages into your private index. We'll also look into how you can perform testing of a package before you push a release to the public index or your company-specific private index.

Echtzeit Web-Apps mit Mushroom
PyCon DE 2013
Michael P. Jung
Recorded: Oct. 15, 2013Language: German

Mushroom ist ein einfach zu verwendendes Echtzeit-Web-Messaging-Framework, welches neben Browser-Push-Nachrichten auch Funktionen für die Interprozesskommunikation zur Verfügung stellt.

Dieser Vortrag versucht, Lust auf das Echtzeit-Web zu machen und beantwortet grundlegende Fragen zu Themen wie Skalierbarkeit und Deployment.

Effiziente Python-Entwicklung mit kleinen Teams
PyCon DE 2013
Marc-André Lemburg
Recorded: Oct. 15, 2013Language: German

Python bietet eine sehr effiziente Basis für das Umsetzen von komplexen Projektanforderungen. Die dadurch bedingten kürzeren Entwicklungszeiten liefern allerdings nicht nur Vorteile, sondern bringen auch neue Herausforderungen mit sich.

Der Vortrag liefert praxisnahe und -erprobte Vorschläge für das Projektmanagement, die eine möglichst effiziente Umsetzung von Projekten auf Python-Basis ermöglichen.

Darüber hinaus soll der Vortrag einen Anstoß zu einer Diskussion über Erfahrungen aus dem Bereich Projektmanagement in Python-Projekten liefern. Ziel sollte es sein, durch Erfahrungsaustausch Python insgesamt im Projektgeschäft voranzubringen.

Entwicklung wissenschaftlicher Applikationen mit Python
PyCon DE 2013
Florian Rhiem , Ingo Heimbach
Recorded: Oct. 15, 2013Language: German

Durch Experimente und Simulationen werden im wissenschaftlichen Bereich große Mengen an Daten erzeugt. Diese müssen geeignet aufbereitet werden, um sie in eine für die Wissenschaftler verständliche Form zu überführen. Ein Beispiel dafür ist die Untersuchung von Phasenwechselmaterialien, welche in wiederbeschreibbaren optischen Medien eingesetzt werden. Der beim Löschen und Beschreiben eintretende Wechsel zwischen kristallinem und amorphen Zustand wird auf Großrechnern simuliert und die resultierende molekulare Struktur auf Hohlstellen hin untersucht, da diese Rückschlüsse auf das Verhalten des Materials zulassen. Den Kern der Präsentation nimmt die Entwicklung der Anwendung pyMolDyn ein, welche die Analyse und Visualisierung der Moleküle und Hohlstellen übernimmt.

Dieser Vortrag gibt einen Einblick in die Erfahrungen, die während der mehrjährigen Entwicklung dieser Software gesammelt wurden. Zum einen wird dabei die rechenintensive Analyse der Daten betrachtet und wie diese durch Verwendung von NumPy und (py)OpenCL vereinfacht und beschleunigt werden kann. Zum anderen werden die grafischen Anwendungskomponenten beschrieben, welche mithilfe von wxPython, (py)OpenGL und einem gezielten Zusammenspiel dieser beiden Pakete umgesetzt werden konnten. Neben Performance und Einfachheit der Programmierung werden auch die gewonnenen Eindrücke zu Plattformunabhängigkeit und Interversionskompatibilität vorgestellt. Weiterhin werden Eigenheiten der Anwendungsentwicklung im Bereich der Forschung erläutert und es wird darauf eingegangen, welche Stärken und Schwächen Python in diesem Zusammenhang bietet. Abschließend folgt ein Überblick darüber, wie sich die weitere Entwicklung von pyMolDyn gestalten wird und welche Konsequenzen die gesammelten Erfahrungen in Zukunft für das Projekt haben werden.

Plone 5
PyCon DE 2013
Timo Stollenwerk
Recorded: Oct. 15, 2013Language: German

Plone 5, das nächstes Major Release des Python-basierten Open Source Content Management Systems Plone, verspricht einige interessante Neuerungen.

Der Vortrag wird den aktuellen Stand der Entwicklung vorstellen und insbesondere auch im Detail aufzeigen, welche Neuerungen heute schon produktiv mit der aktuellen Version 4.3 eingesetzt werden können. Unter anderem wird Plone 5:

  • neue, leistungsfähigere Inhaltstypen zur Verfügung stellen, die through-the-web veränderbar sind
  • ein neues, moderenes User Inteface bekommen, einschließlich neuer Widgets
  • ein neues Modul für multilinguale Seiten bieten
  • schneller sein
  • einfacher zu erlernen sein
Python Einsteiger-Programmierwettbewerb
PyCon DE 2013
Reimar Bauer
Recorded: Oct. 15, 2013Language: German

Im Planungsprozess der diesjährigen PyCon DE ist ein Programmierwettbewerb für SchülerInnen im Alter von 13 bis zum vollendetetem 21 Lebensjahr enthalten.

Die Techniken, die zur Vorbereitung eingesetzt wurden, sowie die Medien und die Python Software des Portals pymove3d.pysv.org werden dargestellt.

Das Ergebnis des Wettbewerbs und der Ausblick auf 2014 mit der Zielvorgabe diesen Wettbewerb zur Europython fortzusetzen bedarf großer Aufmerksamkeit.

Python verbindet - Der Python Software Verband e.V. in 20 Minuten
PyCon DE 2013
Mike Müller
Recorded: Oct. 15, 2013Language: German

Der Python Software Verband (PySV) ist als eingetragener Verein in Deutschland organisiert, und versteht sich als Support-Organ der gesamten deutschsprachigen Python-Community. 2011 hat sich der PySV langsam aber sicher organisatorisch aus dem früheren DZUG e.V., der bereits vollständig aus Python Enthusiasten bestand, emanzipiert und seine Neustrukturierung im letzten Jahr weitgehend abgeschlossen.

Die wichtigsten Mittel zur Unterstützung der Community sind u. a. unsere aktiven Mitglieder und die PySV-Website als zentraler Anlaufpunkt und der neue Usergruppen-Hub. Der PySV unterstützte und organisierte bereits die Python-Konferenzen PyCon.DE 2011 und 2012 als verantwortlicher Partner mit. Auch die PyCon.DE 2013 wird er in enger Zusammenarbeit mit der Kölner PyCologne Usergroup und dem DLR ermöglichen. In den Jahren 2014 und 2015 wird der PySV sogar Mitausrichter der EuroPython – der größten europäsichen Python-Konferenz – sein. Die Berliner Usergroup mit dem PySV im Rücken konnte sich in der Bewerbung durchsetzen.

Auch kleinere, aber deswegen nicht unwichtigere Events unterstützt der PySV. Neben dem mittlerweile schon traditionellen PythonCamp in Köln sind das verschiedene Python-Sprints und u.A. der World Plone Day an mehreren Orten. Auf Messen wie der CeBIT, der überregionalen FrOSCon Konferenz und den Berliner und Chemnitzer Linuxtagen und dem Linuxtag in Berlin sorgt der Verband dafür, dass Python regelmäßig präsent ist.

Der gemeinsam neu entwickelte Programmierwettbewerb nimmt Formen an. Studenten erhalten vom PySV Unterstützung für die Teilnahme an der EuroSciPy.

Wie der Verband der Community helfen kann, wird mit allen, die mithelfen wollen, gemeinsam erarbeitet. Er bietet organisatorische, finanzielle und technische Hilfe für Usergruppen, Sprints und Workshops mit Python-Bezug. Alle Python-Enthusiasten sind eingeladen im Verein aktiv mitzuarbeiten. Neue Ideen und Verbesserungsvorschläge sind immer gern gesehen. Unsere Grundregel lautet: “Soviel Unterstüzung wie möglich, so wenig Reglementierung wie möglich.”

Recruiting Session (Neu)
PyCon DE 2013
Daniel Hepper
Recorded: Oct. 15, 2013Language: German

Sponsoren stellen sich vor und weisen auf aktuell offene Stellen hin.

Schwachstellen und Sicherheitslücken
PyCon DE 2013
Christian Heimes
Recorded: Oct. 15, 2013Language: German

In diesem Vortrag werden eine Reihe von Schwachstellen behandeln, die in der Vergangenheit in CPython oder prominenten Pythonprojekten aufgetreten sind. Als Python Kernentwickler und Mitglied des Python Security Response Team war ich in die Analyse und Korrektur, zum Teil auch in die Entdeckung dieser Lücken involviert.

Jede Schwachstelle zählt exemplarisch einen oder mehrere typische Programmierfehler auf. Mit Hilfe von best practices wird gezeigt, wie man sicher mit Betriebsystemressourcen und Daten aus nicht vertrauenswürdigen Quellen umgeht, kryptographischen Algorithmen korrekt verwendet und side channel attacks verhindert.

Desweiteren werde ich einen Ausblick auf geplante Änderungen und sicherheitsrelevante Verbesserungen in Python 3.4 geben. Jenseits von Python wird der Vortrag auch beleuchten, welche Fallstricke und Probleme Compiler, Betriebsysteme und moderne CPU-Architekturen mit sich bringen und sie sogar die Entwicklung sicherer Software verhindern können.

Sphinx i18n
PyCon DE 2013
Markus Zapke-Gründemann
Recorded: Oct. 15, 2013Language: German

Sphinx hat schon rudimentäre Unterstützung für die Internationalisierung von Dokumentationen mit Hilfe von gettext. Dieser Vortrag berichtet über die eigenen Erfahrungen und diskutiert weitergehende Lösungsansätze.

Sponsoring von Open-Source - und damit den Chef überzeugen
PyCon DE 2013
Schlomo Schapiro
Recorded: Oct. 15, 2013Language: German

Nutzen Sie Open-Source-Software?

Haben Sie schon einmal eine Kleinigkeit ändern wollen?

Konnten Sie für “Einwurf kleiner Münzen” diese Änderung machen lassen?

Open-Source-Software zeichnet sich unter anderem durch die leichte Anpassbarkeit an die eigenen Bedürfnisse aus. Doch nicht jeder kann oder möchte die Software selbst ändern. Lieber würde man die Autoren oder andere Spezialisten damit beauftragen.

Der Vortrag gibt Einblick in die praktische Arbeit mit dem Sponsoring von Open-Source-Projekten und beantwortet die Frage, wie man mit Hilfe von Sponsoring seine eigenen Probleme schneller und günstiger lösen kann: Nach der Vorstellung typischer Entwicklungsmodelle von Open-Source-Projekten erfahren Besucher, wie sie Kontakte zu Open-Source Projekten knüpfen können und damit jemanden finden, der ihnen weiter hilft.

Weitere Themen sind

  • rechtliche Aspekte wie ein Werksvertrag, Gewährleistung und einfache Abwicklung
  • Anforderungen so formulieren, dass der Kundennutzen und die Nachhaltigkeit im Vordergrund steht
  • Abnahmekriterien für den Auftrag
  • Wirtschaftlichkeitsberechnung und Kosten-Nutzen-Abwägung
  • Nachhaltige Lösungen statt ewigen Workarounds
  • Mehrwert für sich und die Open-Source-Gemeinschaft schaffen
  • Imagepflege über Open-Source-Sponsoring
  • Eigene Open-Source Projekte durch Externe weiterentwickeln lassen

Als konkrete Beispiele dienen diverse in Python entwickelte Open-Source Projekte der ImmobilienScout24.

Über die Verwendung von Python zur Strukturanalyse von Schiffen
PyCon DE 2013
Berthold Höllmann
Recorded: Oct. 15, 2013Language: German

Der Germanische Lloyd ist ein international tätiges technisches Dienstleistungsunternehmen, das sich mit u.a. mit der sicherheitsrelevanten Bewertung von Schiffsstrukturen befasst.

Für die Festigkeits- und Schwingungsberechnung von neuen Konstruktionen wurden und werden beim Germanischen Lloyd Python Tools eingesetzt. Diese dienen zur Manipulation von Berechnungsmodellen, zur Bereitstellung von Simulationsmodellen in unterschiedlichste Berechnungsformate, zur Kopplung unterschiedlicher (kommerzieller und nicht kommerzieller) Berechnungsprogramme, zur Implementierung eigener Berechnungsverfahren sowie zur Ergebnisdarstellung. Für die unterschiedlichen Aufgaben werden verschiedene frei verfügbare Bibliotheken wie numpy oder scipy sowie eigene in C, C++ und FORTRAN geschriebene Extensions und Module eingesetzt. Für die Anbindung der Extensions an Python werden sowohl Interface Generatoren (f2py, Cython) als auch handgeschriebener Code unter Verwendung der Python C API verwendet.

Vom Commit zum Deployment - Build pipelines in Jenkins
PyCon DE 2013
Thomas Fenzl
Recorded: Oct. 15, 2013Language: German

Wenn man Code in ein Repository eincheckt möchte man dazu schnelles und aussagekräftiges Feedback.

Natürlich sind lokal die Tests durchgelaufen (oder etwa nicht?), aber wie kann man weitere Überprüfungen automatisieren? Dieser Vortrag zeigt, wie man in Jenkins und Werkzeugen wie nose/pylint/coverage build pipelines anlegt, die von Unittests und linting bis zum Deployment gehen können.

Von der Entwicklung bis zum Deployment mit standardisierten und konfigurierbaren Laufzeitumgebungen
PyCon DE 2013
Juergen Schackmann
Recorded: Oct. 15, 2013Language: German

Es wird gezeigt, wie Laufzeitumgebungen (Betriebssystem, Services wie Datenbank oder Webserver, Python, Applikation) standardisiert konfiguriert und automatisiert erzeugt werden können. Somit wird sichergestellt, dass eine Applikation immer in definierten und weitgehend identischen Umgebungen ausgeführt wird - unabhängig von den verschiedenen Phasen des Lebenszyklus (Entwicklung, Test, Produktion etc.) und persönlichen Präferenzen und Know-how der involvierten Personen. Hierfür eingesetzt werden: Vagrant, Virtualbox,Puppet, Virtualenv.

Who let the robot out? Qualitativ hochwerte Software mit Hilfe von Continuous Integration erstellen
PyCon DE 2013
Timo Stollenwerk
Recorded: Oct. 15, 2013Language: German

Continuous Integration ist Begriff aus der Softwareentwicklung, der den Prozess des fortlaufenden Zusammenfügens von Komponenten zu einer Anwendung beschreibt. Das Ziel der kontinuierlichen Integration ist die Steigerung der Softwarequalität. Jede "Integration" führt zu einem automatisierten Build-Prozess der verschiedene Software-Tests und Code-Analyseschritte ausführt um Fehler so früh wie möglich erkennen und beheben zu können.

Dieser Vortrag wird die Prinzipien der Kontinuierlichen Integration vorstellen und aufzeigen wie diese für ein Python-Projekt umgesetzt werden können. Dabei werden die Erfahrungen aus dem Betrieb des CI-Servers für das Plone Projekt, eines der größten Python-basierten Open Source Projekte, vorgestellt. Unter anderem werden die folgenden Themen behandelt:

  • Aufsetzen eines Continous Integration Servers mit Travis-CI oder Jenkins
  • Einbindung verschiedener Versionskontrollsysteme
  • Das Ausführen verschiedener Tests und die Analyse der Code-Qualität für jede Integration
  • Wie Jenkins verwendet werden kann um automatisch eine Software Dokumentation zu erstellen, die Entwickler zu benachrichtigen, Software Releases zu erstellen und Software zu deployen
  • Das Schreiben und kontinuierliche Ausführen von funktionalen Akzeptanztests, basierend auf Robot Framework