List of videos

Philip Jones - Quart a asyncio alternative to Flask
Quart a asyncio alternative to Flask [EuroPython 2018 - Talk - 2018-07-27 - Smarkets] [Edinburgh, UK] By Philip Jones Flask is a great web mirco-framework, that is best utilised with event-loop concurrency. Sadly with Flask the event-loop framework can't be asyncio, although some extensions (Flask-Aiohttp) have tried. Quart is the solution as it shares the Flask API and is based on asyncio. In addition Quart goes beyond Flask adding HTTP/2 and websockets. This talk will outline why event-loop concurrency is a good choice for web servers, why asyncio is a good choice and then give an overview of Quart, demonstrating features that go beyond the Flask framework. 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://ep2018.europython.eu/en/speaker-release-agreement/
Watch
Petr Viktorin - Bytecodes and stacks: A look at CPython’s compiler and its execution model
Bytecodes and stacks: A look at CPython’s compiler and its execution model [EuroPython 2018 - Talk - 2018-07-27 - Smarkets] [Edinburgh, UK] By Petr Viktorin So, you wrote some Python code. What needs to happen before it starts running? And once it's running, how does Python keep track of what it's doing? I'll talk about CPython's tokenization, parsing, bytecode and its serialization and cache, the stack-based virtual machine, line number tables, and code, frame and function objects. Don't worry if you've never heard of these concepts. While even experts should learn something new, the talk is aimed at anyone who's worked on a Python project or two. 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://ep2018.europython.eu/en/speaker-release-agreement/
Watch
Joshua Lowe - EduBlocks - Making the transition to Python easier!
EduBlocks - Making the transition to Python easier! [EuroPython 2018 - Talk - 2018-07-27 - Smarkets] [Edinburgh, UK] By Joshua Lowe Looking for ways to make the transition from block based programming to Python easier, then look no further! In this talk 14 year old Josh will introduce you to his project called EduBlocks, which is a drag and drop version of Python 3 that he has created to help teachers introduce programming languages, like Python, to children at an earlier age. The goal of the project is to make the transition from block based programs like Scratch to Python easier for students and teachers, as presently there is no drop-in solution that bridges this gap. Josh will share his journey so far with you, from how he came up with the idea when he was only 11 years old, the developments along the way, the exciting plans for the future and how schools today in over 72 different countries around the world are making use of EduBlocks on the Raspberry Pi and micro:bit. 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://ep2018.europython.eu/en/speaker-release-agreement/
Watch
Jeethu Rao - Faster Python startup
Faster Python startup [EuroPython 2018 - Talk - 2018-07-27 - Smarkets] [Edinburgh, UK] By Jeethu Rao The cPython’s startup speed generally quite fast compared to other similar dynamic language interpreters. Despite this, the interpreter’s startup time increases linearly with the number and size of imported python modules. Although interpreter startup speed isn't a significant concern in long running servers, it does matter for the command line and other frequently launched applications. One of the oldest tricks in the book, when it comes to performance optimizations is to perform frequent and expensive operations fewer times and reuse results from previous invocations. We noticed that the overhead of reading and un-marshalling .pyc files at startup can be eliminated if we could directly embed code objects and their associated object graph from .pyc files into the data segment of the cPython binary. This technique is quite similar to the approach taken by image based languages like Smalltalk in the past. Implementing this for cPython is made simpler because marshaled code objects in .pyc files contain a subset of the types of objects that marshal format supports. With this approach, loading a module included in the python binary is as cheap as dereferencing a pointer, albeit at the cost of increased binary size. This talk will discuss the approach taken to implement the aforementioned idea for Python 3.6 and the challenges faced in implementing it. It will also talk about benchmark results from the improvements and possible future directions for this work. Although this talk delves into cPython internals, no prior experience with cPython internals is required to follow along. 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://ep2018.europython.eu/en/speaker-release-agreement/
Watch
EuroPython 2018 - Sprint Orientation
Sprint Orientation [EuroPython 2018 - - 2018-07-27 - Smarkets] [Edinburgh, UK] 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://ep2018.europython.eu/en/speaker-release-agreement/
Watch
Dan Taylor - Get Productive with Python in Visual Studio Code
Get Productive with Python in Visual Studio Code [EuroPython 2018 - Talk - 2018-07-27 - Smarkets] [Edinburgh, UK] By Dan Taylor In this demo driven session, we’ll show you how to use the cross-platform, free, and open source Visual Studio Code for all your Python development needs. From editing, to linting, to debugging and more, you will learn how to get started, as well as tips and tricks to save you time in your everyday development lifecycle. If you’re an experienced Python developer, you will learn how to take advantage of all of Visual Studio Code’s capabilities to maximize your productivity. If you’re a new Python developer, you will learn more about Python and how to use Visual Studio Code to get up and running quickly. We will start by showing how to create a new application, configure linting, manage virtual environments, and run code. Then we’ll show how to use more powerful features like debugging, unit testing and Visual Studio Live Share for collaborative editing and debugging with your co-workers. Finally, we’ll show how you can install additional extensions to set up your keyboard bindings, manage docker containers, deploy to the cloud, and more! 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://ep2018.europython.eu/en/speaker-release-agreement/
Watch
Alexandre Figura - Integration Tests with Super Powers
Integration Tests with Super Powers [EuroPython 2018 - Talk - 2018-07-27 - Smarkets] [Edinburgh, UK] By Alexandre Figura You are maybe like me: I never learned at school how to write tests. My teachers gave me at first a broad overview of computer history. Then, they explained me some basic design patterns. And to finish, I often had to write more or less basic programs, to validate and demonstrate my skills. Not the kind of code I would be really proud of today: the procrastinator monkey living in my head at this time was more thinking about planning my summer holidays, rather than writing Ninja code! And to make things worse, my studies focused on network and system engineering. Not software architecture. Funny story, because I decided to become programmer a couple of years later... What I realize now is that I don't have as much time as before to learn. And in a world driven by business, where time is money, and where tradeoffs are the rule, there is rarely enough money to write both shiny new features and a complete test suite. People who practice Test-Driven Development know how complicated it can be to write proper tests. TDD is often discouraging at first: the learning curve is steep. But this problem also exists in the testing world in general. Because writing good tests is hard, many beginners get headaches trying to reach this goal. How to convince project managers to have more time for writing tests in these conditions... But "le jeu en vaut la chandelle" as we say in French ("the juice is worth the squeeze"). Well tested applications are not only easier to maintain and extend. They also have in general a better API. That's what we will see in this talk, by focusing on how to write integration tests. Our journey will begin with a presentation of different testing strategies. We will then jump to the practical part, using Pytest, interface testing , dependency injections and stubs, amongst many others. And because we want to add nice buzzwords on our resume after EuroPython, we will finish this talk by automating the whole with Docker Compose. 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://ep2018.europython.eu/en/speaker-release-agreement/
Watch
Alex Willmer - Rehabilitating Pickle
Rehabilitating Pickle [EuroPython 2018 - Talk - 2018-07-27 - Smarkets] [Edinburgh, UK] By Alex Willmer Pickle is a compact serialisation protocol for Python objects. It could be a convenient way for Python programs and distributed systems to communicate. Unfortunately pickle is widely considered to be unsafe, and it has lead to several vulnerabilities over the years. As the Python manual warns The pickle module is not secure against erroneous or maliciously constructed data. Never unpickle data received from an untrusted or unauthenticated source. Does this have to be the case? Can we use Pickle safely? This talk will be a deep dive into what an attacker can do with a maliciously constructed pickles. I’ll show what defences you can implement against the common attacks, especially those that gain arbitrary code execution. I will present new research into other attacks, and mitigations. Finally I will review a few less known alternatives to pickle. This talk will expand on a https://www.youtube.com/watch?v=5omAT9sqguE&list=PLWsDEQH0HiPZUhtqGczfDnNdiJMhWpmWd&index=9&t=13m10s PyLondinium 2018 lightning talk 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://ep2018.europython.eu/en/speaker-release-agreement/
Watch
EuroPython 2018 - Lightning talks on Friday, July 27
Lightning talks [EuroPython 2018 - - 2018-07-27 - Smarkets] [Edinburgh, UK] 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://ep2018.europython.eu/en/speaker-release-agreement/
Watch