List of videos

Rafael Monnerat - Hyperconvergence meets BigData

Rafael Monnerat - Hyperconvergence meets BigData [EuroPython 2016] [18 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/hyperconvergence-meets-bigdata) This presentation show how to deploy **[Wendelin][1]**, the free software platform for Big Data & Machine Learning, using **[SlapOS][2]** , the free software hyperconverged Operating System (hOS). Written in 100% in Python, SlapOS and Wendelin, can create a complete Big Data Infraestruture with out-of-core capabilities ready to use and operate in just few hours. [1]: http://www.wedelin.io [2]: http://community.slapos.org ----- This presentation aims to demonstrate how to use [SlapOS][1] (Hyperconverged OS) to deploy an entire Big Data Infrastrucure and show how "data life cycle" can be managed with [Wendelin][2] - covering ingestion, analysis, visualization and weaving it into an application. We'll show how Wendelin and SlapOS could handle acquisition, analysis and exploitation of data, making it a potential solution for IOT scenarios where data is available and needs some logic applied before being presented as web application, possibly on a commercial basis. The agenda of the presentation includes an introduction on SlapOS, as a tool used to deploy a wide range of different services and an introduction of Wendelin, as a tool in order to make out-of-core python applications. After a short introduction, we progress to show the steps to deploy SlapOS infrastructure and later to deploy Wendelin on the just deployed SlapOS, including an use case which shows SlapOS deploying a fluentd instance to ingest data to the Wendelin Database. To conclude, we make a live demo with an Jupiter using out-of-core python to handle wav files stored on Wendelin, and a second short demo on handle computer resources consumption data. [1]: http://community.slapos.org [2]: http://www.wendelin.io/

Watch
Liana Bakradze - Learn Python The Fun Way

Liana Bakradze - Learn Python The Fun Way [EuroPython 2016] [18 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/learn-python-the-fun-way) Programming is one of the most important 21st-century skills and tons of different online and offline resources can help you to master it. On the other hand, playing games is really effective way for us to learn and it's also the most fun. But is it possible to learn real programming language like Python by playing a game? In this talk I'll show you some projects that allow you to achieve that. I also want to inspire you to help such projects and to suggest ideas how to do that. ----- Programming is one of the most important 21st-century skills. It doesn't only provide promising career opportunities but teaches how to reason logically, systematically and creatively. Code readability, rich standard library, straightforward syntax and other features make Python a great language for teaching beginners how to program. Python community is very supportive and friendly to newcomers and does awesome work to make Python available to everyone. Tons of different online and offline resources can help you to master Python programming. Problem solving is the classical way of learning how to code. But it can be boring for some people, especially for kids. On the other hand, playing games is really effective way for us to learn and it's also the most fun. You can find different games designed to teach basics of programming, but most of them use special visual environments and don't teach real text based languages. But is it possible to learn programming language like Python by playing a game? In this talk I'll show you a few projects for different age and levels that allow you to achieve that. I'll pay attention on methods that are used to teach programming. I also want to inspire you to help such projects and to suggest ideas how to do that.

Watch
Daniel Pope - Pygame Zero

Daniel Pope - Pygame Zero [EuroPython 2016] [18 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/pygame-zero) Pygame Zero is a new game engine for education, built on top of Pygame. It makes writing your first games extremely simple, while saving beginners from certain potential pitfalls. Daniel will introduce Pygame Zero, walk through creating a simple game, and discuss the background for Python in education and the design philosophy behind Pygame Zero. ----- Pygame Zero is a new game engine for education, built on top of Pygame. It makes writing your first games extremely simple, while saving beginners from certain potential pitfalls. This talk will introduce Pygame Zero, walk through creating a simple game, and discuss the background for Python in education and the design philosophy behind Pygame Zero. Pygame is a powerful set of libraries for graphics, sound, input and more. But it is just a library: each program needs to import and set up the libraries, implement a game loop and load resources among numerous other concerns. While seasoned Pythonistas have no trouble with this, teachers told us that they found it difficult to teach with Pygame. There is simply too much boilerplate involved, and getting students to reproduce the boilerplate perfectly before useful lessons can begin takes too much time out of a 40-minute lesson. Pygame Zero is simple enough that a lesson can be broken down into bitesize steps where meaningful progress can be made with just a couple of lines of code at a time.

Watch
Rachel Willmer - 20 years without a 'proper job'

Rachel Willmer - 20 years without a 'proper job' [EuroPython 2016] [18 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/keynote-20-years-without-a-proper-job) Have you ever wondered how you could be your own boss? or how you could make money from your side project? or build the next Facebook or Uber. To be a coder in today's world of work is to have amazing opportunities to design the business life you want. I've enjoyed the last 20 years without a 'real job', as company founder, freelancer and side-project-hacker. Now I am bootstrapping my current company to profitability. Listen to my stories and learn from my mistakes and successes. ----- Have you ever wondered how you could be your own boss? If so, then this talk is for you. Maybe you're working on a sideproject and wonder how you could make some money from it? Or maybe you have the idea for the next Facebook or Uber? To be a coder in today's world of work is to have amazing opportunities to design the business life you want. You can work remotely; you can write books, or teach, or consult, with anyone anywhere. You can have a crazy idea on Friday and have it running by Monday. Design your architecture to use cloud computing, so your tiny team can scale up your huge ideas. Or keep it small, and just earn some extra money with a Wordpress plugin, or a training course. It has been 21 years since I last had a 'real job' and a regular income. I survived creating and running a company through the madness of the dotcom years. I made money from sideprojects, that I had started just for fun and for learning. I have freelanced without needing to use an agency to find the work. And now I'm bootstrapping my current business to profitability. Listen to my stories and learn from my mistakes and successes.

Watch
Burkhard Kloss - Performant Python

Burkhard Kloss - Performant Python [EuroPython 2016] [18 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/performant-python) Python is a great language. Easy to learn, friendly to use, widely used. It is not, however, renowned for being fast. In a lot of situations that does not matter. Sometimes it really does. This talk will introduce you to some tools and techniques for making sure your Python code becomes fast enough – without turning into a maintenance nightmare. Warning: may contain small bits of other languages. ----- Python is a great language. Easy to learn, friendly to use, widely used. It is not, however, renowned for being fast. In a lot of situations that does not matter. Sometimes it really does. This talk will introduce you to some tools and techniques for making sure your Python code becomes fast enough – without turning into a maintenance nightmare. Fast code does not have to be unreadable - and when you're writing Python, it really pays of to think "pythonically". That does mean using the included batteries, and utilising the ecosystem of tools around the language, too. Warning: may contain small bits of other languages.

Watch
Cameron Macleod - Implementing a Sound Identifier in Python

Cameron Macleod - Implementing a Sound Identifier in Python [EuroPython 2016] [18 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/implementing-a-sound-identifier-in-python) The talk will go over implementing a Shazam-style sound recogniser using DSP techniques and some fantastic libraries. It will cover implementation, challenges and further steps. The project is still a work in progress and the code is [available on GitHub][1]. It was inspired by the [Over-the-Air Audio Identification talk][2] at FOSDEM 2016. [1]: https://github.com/notexactlyawe/abracadabra [2]: https://fosdem.org/2016/schedule/event/audio_identification/ ----- The talk will go over the journey of implementing a Shazam-style sound recogniser using DSP techniques and some fantastic libraries. It will cover implementation, challenges and further steps. The project is still a work in progress at the time of proposal and the code is [available on GitHub][1]. It was inspired by the [Over-the-Air Audio Identification talk][2] at FOSDEM 2016. The basic structure of the project consists a classifier that fingerprints audio and stores it in a searchable form and a recogniser that fingerprints a smaller chunk of audio and then searches the stored records to find the most suitable fit for it. The recogniser will be exposed as an API to allow for different front-ends. I will aim to introduce both the field of DSP and concepts behind applications like Shazam in a simple easy-to-understand manner. The audience will not need any prior experience in anything except Python. [1]: https://github.com/notexactlyawe/abracadabra [2]: https://fosdem.org/2016/schedule/event/audio_identification/

Watch
Alain Martin - Python as the keystone of building and testing C++ applications

Alain Martin - Python as the keystone of building and testing C++ applications [EuroPython 2016] [18 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/python-as-the-keystone-of-building-and-testing-c-applications) This talk explains how Ableton’s developers use Python to build and test C, C++ and Objective-C code. Our "build-system" is a collection of Python scripts that simplify our workflows, and help us write better software. The top-level scripts share a common design which makes them easy to use, maintain and extend. This talk describes the essence of that design, so you can apply it to your own project. ----- At Ableton, we make [Live][1], [Push][2] and [Link][3], unique software and hardware for music creation and performance. Live is a C++ desktop application built from a 15-year old code base. Push is an instrument embedding a multicolor display which renders a [Qt Quick][4] scene powered by [Qt][5]. Link is a technology that keeps music devices in time and is available to app developers as [LinkKit][6], an iOS SDK. "But what does all that have to do with Python?", you might ask. This talk answers that question by explaining how our developers use Python to build and test C, C++ and Objective-C source code. Based on [GYP][7], what we call "build-system" is a collection of Python scripts that simplify our workflows, and help us write better software. The three top-level scripts, "configure.py", "build.py" and "run.py", share a common design which makes them easy to use by developers, as well as easy to maintain and extend. This talk describes the essence of that design, so you can apply it to your own project. [1]: https://www.ableton.com/live/ [2]: https://www.ableton.com/push/ [3]: https://www.ableton.com/link/ [4]: https://www.qt.io/qt-quick/ [5]: http://www.qt.io/ [6]: https://ableton.github.io/linkkit/ [7]: https://gyp.gsrc.io/

Watch
Noah Kantrowitz - Behind Closed Doors: Managing Passwords in a Dangerous World

Noah Kantrowitz - Behind Closed Doors: Managing Passwords in a Dangerous World [EuroPython 2016] [18 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/behind-closed-doors-managing-passwords-in-a-dangerous-world) A modern application has a lot of passwords and keys floating around. Encryptions keys, database passwords, and API credentials; often typed in to text files and forgotten. Fortunately a new wave of tools are emerging to help manage, update, and audit these secrets. Come learn how to avoid being the next TechCrunch headline. ----- Secrets come in many forms, passwords, keys, tokens. All crucial for the operation of an application, but each dangerous in its own way. In the past, many of us have pasted those secrets in to a text file and moved on, but in a world of config automation and ephemeral microservices these patterns are leaving our data at greater risk than ever before. New tools, products, and libraries are being released all the time to try to cope with this massive rise in threats, both new and old-but- ignored. This talk will cover the major types of secrets in a normal web application, how to model their security properties, what tools are best for each situation, and how to use them with major web frameworks.

Watch
David Charles - Managing Kubernetes from Python using Kube

David Charles - Managing Kubernetes from Python using Kube [EuroPython 2016] [18 July 2016] [Bilbao, Euskadi, Spain] (https://ep2016.europython.eu//conference/talks/managing-kubernetes-from-python-using-kube) Kubernetes is the Google Borg inspired control plane for Docker containers. It has a great API but needs a load of HTTP client code and JSON processing to use it from Python. This talk introduces Kube, a Python wrapper around the Kubernetes API that enables you to manage your Kubernetes cluster in a pythonic way while avoiding any Kubernetes API peculiarities. Programmers and operations folk who are interested in interacting with the Kubernetes API using Python. ----- ## Abstract Docker has had a transformative influence on the way we deploy software and Kubernetes, the Google Borg inspired control plane for Docker-container- hosting-clusters, is gaining similar momentum. Being able to easily interact with this technology from Python will become an increasingly important capability in many organisations. I'll discuss what the motivations behind writing Kube. We'll dive into Kube using the Python interactive interpreter, getting connected to the API, and simple viewing and label update operations. Finally I'll discuss more advanced resource management activities like Kube's 'watch' API capability. ## Objectives Attendees will learn about the key concepts in getting resource information out of their Kubernetes cluster using Kube. ## Outline 1. Setting the scene (3 minutes) 1. Other Python kubernetes wrappers (2 minutes) 1. Kubernetes concepts quick recap (5 minutes) 1. Dive into Kube in the Python interactive interpreter (10 minutes) * Outline prerequisites * The entry point - a Cluster instance * Views and Items - two important Kube concepts * Item meta data: labels and versions 1. More Kube features (5 minutes) * Creating and deleting resources * Using Kube's Watch API support * The cluster proxy attribute for when you need to get at the actual API. 1. Q&A (5 minutes)

Watch