List of videos

From bigger than 1 billion years to smaller than 1 second by Isaac Bernat
The goal of this talk is to empower people with over a dozen optimisation techniques which may be effectively used in a wide variety of situations, even beyond Python. I will present best practices, typical pitfalls and common tools, but the main focus will be on a practical approach. I will showcase a small problem and a naive solution, just a few lines of Python, so that it's easily understood. Iteratively I will apply each optimisation, explain the reasoning behind it and note how execution time is reduced. By the end of the talk, one will see how the code evolved from something that would take bigger than 1 billion years to compute to smaller than 1 second on a regular laptop. I will also compare running times between Python, PyPy and C++ implementations (one being just a few milliseconds), and show how the techniques may achieve vastly different speedups from the python versions. Audience level: Intermediate Speaker: Isaac Bernat (github.com/isaacbernat), back-end engineer at Ivbar, LOGEX Group
Watch
Equip your performance toolbox Cython vs Pybind11 by Gavin Chan
Developing Python applications is handy and rapid, but its performance is always concerned, especially on the CPU bound problems. We will go through the common tricks and tips to archive the best performance on the Python level. Then the two reputable libraries, Cython and Pybind11, will be visited to archive the compiled language performance and compared with their implementation, flexibility and performance. Audience level: Intermediate Speaker: Gavin Chan, quantitative developer in AXA Investment Manager Chorus Ltd with 7+ years of experience in software development and finance industry.
Watch
Make your Python code fly at transonic speeds! by Ashwin Vishnu Mohanan
The talk is particularly useful for developers of Python applications which does heavy computation, with or without NumPy - for data science, research etc. Python extensions allows for creation of high-performance applications, which can compete with C or C++ based ones. There are more than one framework to achieve this (for example, Cython, Pythran and Numba) with similar syntaxes but different underlying implementations. The talk surveys the state of the art of creating extensions and introduces Transonic (https://transonic.readthedocs.io). Transonic is a pure-Python package acting as a unifying front-end for writing extensions with the aim to enhance the developer experience. Audience level: Intermediate Speaker: Ashwin Vishnu Mohanan, Ph.D. in Engineering Mechanics from KTH and post-doctoral researcher at Stockholm University. 5+ years of experience as a research software developer and contributor to various open-source projects.
Watch
Asyncio in the Wild
Asyncio is a fairly new tool and no often used in production. In this talk we will be aiming for use-cases and examples so people can get more confidence moving away from the synchronous world. The talk aims to solve the problem of uncertainty when getting started with asynchronous programming in Python. After the talk the audience will be equipped with new tools they can look up at home to get started with asynchronous web development in Python, also, hopefully, they will have some extra confidence in the area. Slides from talk: https://github.com/akoskaaa/pycon-se-2019 Audience level: Intermediate Speaker: Ákos Hochrein, software engineer and book enthusiast. He worked at various companies both on the frontend and the backend to deliver highly available and scalable solutions to their customers using the power of Python for the past 10 years. In his free time, he likes to read about psychology and dystopias while exploring the beer culture of Berlin.
Watch
Test Fast, Fix More - Property based testing with Hypothesis by Alexander Hultnér
Test Fast, Fix More – Property based in Python testing with Hypothesis Did you ever miss that corner case bug? Maybe it was a negative integer, strange timezone conversion behaviour, off by one error or something entirely else. These subtle bugs are often hard to catch and are easily missed in test cases. You like me have probably ran into plenty of code utilising only happy path testing, only to later discover subtle bugs which are easily fixed once pointed out. This is where property based testing comes into the picture. In this talk I will focus on a wonderful Python library called Hypothesis but the concepts apply to other languages as well. Hypethesis is based on the same concept as the famous QuickCheck library for Haskell, which in turn have been ported a large number of languages. Hypothesis uses a wide range of input to find edge cases that you could otherwise easily miss, once it finds these cases it narrows down the input to the minimal breaking example to provide failures which are easier to understand. Audience level: Intermediate Speaker: Alexander Hultnér
Watch
IPython: How a notebook is changing science - PyCon SE 2015
Juan Luis Cano Target audience: Beginners IPython was born as an Interactive Python shell on steroids 14 years ago, but its notebook tool is shaping the way scientists, developers and even journalists communicate and explore science. Let us examine IPython's importance in Open Science now that Nature highlighted one of its awesome features!
Watch
Bulding an interpreter in RPython - PyCon SE 2015
Julian Berman Target audience: Advanced users RPython is a language and toolchain for building interpreters, most prominently PyPy, a Python interpreter. But RPython is a powerful tool for writing interpreters for many dynamic languages. We'll learn how to write a simple interpreter in RPython by implementing a parser, bytecode compiler and VM for a small language.
Watch
Lightning talks - First Day - PyCon SE 2015
Lightning talks for the first day of PyCon SE 2015
Watch
From Explicitness to convention: A Journey from Django to Rails - PyCon SE 2015
Rebecca Meritz Target audience: Advanced users I've just switched jobs from writting Django fulltime to writing Rails fulltime. This talk will be a reflection on what I miss from Django and why and what I've gained from Rails.
Watch