List of videos

Martin Christen, Roberto De Ioris, Tomislav Uzelac - Making Games with Python: Mission Impossible?
"Making Games with Python: Mission Impossible? [EuroPython 2017 - Panel - 2017-07-11 - Arengo] [Rimini, Italy] A discussion about making full-featured, commercial games in python, both 2D and 3D. Looking at state of the art approaches to using python in gaming, we will compare the alternatives: pygame (2D API), OpenGL (via pygame/pySDL2), Unreal Engine 4 and the Godot Engine (with further comparison to Unity 3D game engine). We will also look at other benefits of using python in the gaming context, such as integration with 3D modelling software, scripting the asset pipeline and GIS data integration. Finally, can (and should) python move beyond being the language of plugins and scripts, and become the main language for creating game development projects? License: This video is licensed under the CC BY-NC-SA 3.0 license: https://creativecommons.org/licenses/by-nc-sa/3.0/ Please see our speaker release agreement for details: https://ep2017.europython.eu/en/speaker-release-agreement/
Watch
John Kraal - High Availability Scaling with Share Nothing Architecture
John Kraal - High Availability Scaling with Share Nothing Architecture [EuroPython 2016] [21 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/high-availability-scaling-with-share-nothing-architecture) Scaling a project to a worldwide scale with the same performance and availability in every region using Python isn’t easy, but with the right mindset and tools it’s a very viable target. ----- We will discuss methods of delivering software, with automated scaling systems, building units out of your project to manage separately and how to reliably and securely distribute data to separate clusters, and how we have achieved this with the use of Celery, Redis, Databases, Protobuf and other modern tools, whilst making sure to highlight our pitfalls and successes
Watch
Rogier van der Geer - How to conquer the world
Rogier van der Geer - How to conquer the world [EuroPython 2016] [21 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/a-genetic-algorithm-to-play-the-game-of-risk) The popular board game of Risk has many fans around the world. Using a Python-based simulation of the game, we use a genetic algorithm to train a risk-playing algorithm. ----- During this talk we'll explain what genetic algorithms are and we'll explain an entertaining use-case: how to win at popular board games. During the talk we'll demo how object oriented patterns help with the design and implementation of these algorithms. We'll also demonstrate a library that allows users to push their own risk bots into a game and battle it out on.
Watch
Katharine Jarmul - I Hate You, NLP... ;)
Katharine Jarmul - I Hate You, NLP... ;) [EuroPython 2016] [21 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/i-hate-you-nlp) In an era of almost-unlimited textual data, accurate sentiment analysis can be the key for determining if our products, services and communities are delighting or aggravating others. We'll take a look at the sentiment analysis landscape in Python: touching on simple libraries and approaches to try as well as more complex systems based on machine learning. ----- Overview ------------- This talk aims to introduce the audience to the wide array of tools available in Python focused on sentiment analysis. It will cover basic semantic mapping, emoticon mapping as well as some of the more recent developments in applying neural networks, machine learning and deep learning to natural language processing. Participants will also learn some of the pitfalls of the different approaches and see some hands-on code for sentiment analysis. Outline ----------- * NLP: then and now * Why Emotions Are Hard * Simple Analysis * TextBlob (& other available libraries) * Bag of Words * Naive Bayes * Complex Analysis * Preprocessing with word2vec * Metamind & RNLN * Optimus & CNN * TensorFlow * Watson * Live Demo * Q&A
Watch
Ralph de Wargny - High Performance Python on Intel Many-Core Architecture
Ralph de Wargny - High Performance Python on Intel Many-Core Architecture [EuroPython 2016] [21 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/high-performance-python-on-intel-architecture) This talk will give an overview about the Intel® Distribution for Python which delivers high performance acceleration of Python code on Intel processors for scientific computing, data analytics, and machine learning. ----- In the first part of the talk, we'll look at the architecture of the latest Intel processors, including the brand new Intel Xeon Phi, also known as Knights Landing, a many-core processor, which was just released end of June 2016. In the second part, we will see which tools and libraries are available from Intel Software to enable high performance Python code on multi-core and many-core processors.
Watch
Anthon van der Neut - Beyond scraping
Anthon van der Neut - Beyond scraping [EuroPython 2016] [20 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/beyond-scraping-getting-data-from-dynamic-heavily-javascript-driven-websites) This talk show how a to create a simple, evolving, client server architecture combining zeromq, selenium and beautifulsoup, which allows you to scrape data even from variable dynamic sites like Sporcle and KhanAcademy. Once the page analysis has been implemented regular "downloads" can easily be deployed without cluttering your desktop, your headless server and/or anonymously. ----- Scraping static websites can be done with `urllib2` from the standard library, or with some slightly more sophisticated packages like `requests`. However as soon as JavaScript comes into play on the website you want to download information from, for things like logging in via openid or constructing the pages content, you almost always have to fall back to driving a real browser. For web sites with variable content this is can be time consuming and cumbersome process. This talk show how a to create a simple, evolving, client server architecture combining zeromq, selenium and beautifulsoup, which allows you to scrape data from sites like Sporcle, StackOverflow and KhanAcademy. Once the page analysis has been implemented regular "downloads" can easily be deployed without cluttering your desktop, your headless server and/or anonymously. The described client server setup allows you to restart your changed analysis program without having to redo all the previous steps of logging in and stepping through instructions to get back to the page where you got "stuck" earlier on. This often decreases the time between entering a possible fix in your HTML analysis code en testing it, down to less than a second from a few tens of seconds in case you have to restart a browser. Using such a setup you have time to focus on writing robust code instead of code that breaks with every little change the sites designers make.
Watch
Víctor Terrón - Kung Fu al amanecer con itertools
Víctor Terrón - Kung Fu al amanecer con itertools [EuroPython 2016] [19 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/kung-fu-al-amanecer-con-itertools) El módulo itertools es una de las piedras angulares de la programación avanzada en Python. Esta charla proporciona consejos prácticos del álgebra de iteradores que pueden aplicarse de forma inmediata. Descubrir el módulo itertools supone arrancar el velo de nuestros ojos, y una vez usadas funciones como `repeat()`, `takewhile()`, `dropwhile()` o `product()` no hay marcha atrás — es imposible volver al mundo de los meros mortales donde las soluciones son más complejas y necesitan más memoria. ----- El módulo itertools es una de las piedras angulares de la programación avanzada en Python. Parte de la biblioteca estándar, nos ofrece un álgebra de iteradores que permite encadenar abstracciones de forma elegante, haciendo posibles soluciones sencillas a la par que más eficientes en su consumo de memoria. El objetivo de esta charla es el de, ante todo, proporcionar consejos y lecciones claras que puedan aplicarse de forma inmediata. Ilustrándolo con numerosos ejemplos, los asistentes abandonarán la charla habiendo asimilado como mínimo varios conceptos que mejorarán indiscutible e irremediablemente su código. El énfasis se hará en mostrar casos específicos en los que una solución tradicional puede ser mejorada una y otra vez con funciones del módulo itertools. Supongamos, por ejemplo, que queremos alternar indefinidamente entre dos valores: -1 y 1. El recién iniciado utilizaría una variable cuyo valor iría modificando a cada paso y el usuario medio quizás optaría por un generador infinito. Ambas soluciones dignas y honorables, pero que palidecen ante la maestría del artista marcial que que tan sólo necesita `itertools.cycle()`. Porque el módulo itertools es así: una vez caído el velo de nuestros ojos y descubiertas funciones como `repeat()`, `takewhile()`, `dropwhile()` o `product()`, no hay marcha atrás. En esta charla vamos a aprender a reconocer cuándo pueden ser usadas, proporcionándonos en una única línea lo que para los meros mortales supone mucho más trabajo.
Watch
Guillem Duran - Interactive data Kung Fu with Shaolin
Guillem Duran - Interactive data Kung Fu with Shaolin [EuroPython 2016] [18 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/interactive-data-kung-fu-with-shaolin) “Notebooks come alive when interactive widgets are used”, but programming complex applications that rely entirely on widgets may end up being a painful and frustrating process. Shaolin is a new python project that aims to provide a framework for building interactive complex dashboards. ----- You can read in The Project Jupyter web page that “Notebooks come alive when interactive widgets are used”, but programming complex applications that rely entirely on widgets may end up being a painful and frustrating process. Shaolin is a new python project that aims to provide a framework for building interactive complex dashboards. Shaolin provides all the basic tools for building complex interactive data analysis applications using the pydata ecosystem. Arbitrary code can be embedded into a Dashboard -a class that works as a “black box” that allows to easily define a GUI based on the ipywidgets package- to process any data in any form and then let you interactively define how to plot it using automatically generated widgets. Hierarchical combinations of Dashboards can be arranged then to build more complex applications. The talk is divided in two sections. First one introduce the framework and its main features: - Custom syntax for defining widgets in a simplified way. - Dashboards: Syntax rules and capabilities. - Combining Dashboards to build complex applications. - Interactive plot creation. - Integration with pydata. Second section will show how this framework can be used to analyse real data using Dashboards without writing any code. I will show how to transform market data time series into graphs using pandas and networkx, then plot it interactively using bokeh and Vpython.
Watch
Thierry Carrez/Doug Hellmann - How OpenStack makes Python better (and vice-versa)
Thierry Carrez/Doug Hellmann - How OpenStack makes Python better (and vice-versa) [EuroPython 2016] [18 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/how-openstack-makes-python-better-and-vice-versa) OpenStack is an infrastructure stack mostly developed in Python. In this talk, Thierry Carrez and Doug Hellmann, both Python Software Foundation fellows and OpenStack Technical Committee members, will look at the symbiotic relationship between OpenStack and Python. ----- OpenStack is an open source stack that can be deployed on raw computing resources to privately or publicly present Infrastructure as a Service. It now consists of more than 4.5 million lines of code, 85% of which is Python. In this talk, Thierry Carrez and Doug Hellmann, both Python Software Foundation fellows and OpenStack Technical Committee members, will look at the symbiotic relationship between OpenStack and Python. We'll go back in history and explain why OpenStack originally picked Python as its main language 6 years ago, and explore what does Python bring to OpenStack. We'll dive into examples of OpenStack pushing Python libraries to their limits and exposing new bugs. We'll look into the massive cloud-based continuous integration system that OpenStack uses and explain how it exposes bugs in Python libraries in the minutes after they are published to PyPI. We'll look into Python libraries that were created by the OpenStack community and libraries that the OpenStack community took over. Finally we'll expose a few best practices that Python developers can follow to get the most of this symbiotic relationship.
Watch