List of videos

When Models Query Models - presented by Michal Maciejewski
EuroPython 2022 - When Models Query Models - presented by Michal Maciejewski [Liffey Hall 1 on 2022-07-15] The design of large-scale engineering systems, including but not limited to aerospace, particle accelerators, nuclear power plants, is carried out by a wide range of numerical models such as CAD files, finite-element models, and machine learning surrogate models to name a few. In order to provide a uniform modelling interface, we encapsulate numerical models in notebooks. A notebook is controlling model creation, execution, and query of results. Numerical solvers are embedded into Docker containers and provide an isolated and reproducible environment exposing a language-agnostic REST API. A model registry enables efficient queries of models. The overall system is represented as a collection of models that exchange data. Then, the design optimization involves execution of a dependency tree of models to study the impact of a parameter change and perform its optimization. In this contribution, we present a model query mechanism allowing notebook models to query one another. The model dependencies are represented with a graph with suitable processing algorithms. In order to ensure that only affected models are executed we derive and cache a model resolution order. The presented modelling framework relies on open source-technologies (packages: pydantic, Fast API, Jupyter, papermill, scrapbook, containers: Docker and Openshift as well as databases: MongoDB and Redis) and the talk will focus on good practices and design decisions encountered in the process." Licence: https://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
Writing secure code in Python - presented by Yan Orestes
EuroPython 2022 - Writing secure code in Python - presented by Yan Orestes [Liffey B on 2022-07-15] Is your Python code secure? This talk will show how some inattentions, mistakes and assumptions that we, as developers, carry in our code can lead to serious vulnerabilities in our applications. All of that, of course, with lots of examples! At the end, the talk will present a simple way to audit Python code in order to facilitate the maintenance of your security with the identification of possible vulnerabilities. - Learn how `eval()`, pickle, and pip are vulnerable to arbitrary code execution - Understand the importance of cryptographically-secure randomness - Learn how to audit your code and keep your programs secure - ... and more!" Licence: https://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
Circuit board design to finished product: hobbyist’s guide to hardware manufacturing -Sebastian Roll
EuroPython 2022 - From circuit board design to finished product: the hobbyist’s guide to hardware manufacturing - presented by Sebastian Roll [Liffey Hall 2 on 2022-07-15] Ever wondered how hardware is made, or curious about making your own? We share our experiences manufacturing a programmable gamepad for use in IoT/MicroPython workshops. We will cover the entire production process, including: - Designing the PCB (Printed Circuit Board) - Choosing microcontroller and parts - Finding, ordering and assembling components - Pulling together firmware, drivers and software Mistakes were indeed made along the way. Let's turn them into valuable lessons! This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License http://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
Try Something Different: Explore MicroPython (a rough guide for newcomers) - presented by Andy Piper
EuroPython 2022 - Try Something Different: Explore MicroPython! (a rough guide for newcomers) - presented by Andy Piper [Liffey Hall 2 on 2022-07-15] MicroPython is a reimplementation of Python for microcontrollers, originally developed as a result of a Kickstarter campaign. Today, it is an approachable way into programming for many young people, via boards like the Raspberry Pi Pico, the BBC micro:bit and the CodeBug - you can even run it on LEGO bricks! It is increasingly being used in commercial fields as well. MicroPython is helping Python to get into even more places, and making programmers more efficient as it does so. Andy Piper wanted to learn more, so he spent some time travelling and adventuring on the internet, to discover the community and projects around MicroPython. The goal of this session is to briefly explain the What, Why and How of MicroPython. There *will* be circuit boards, and discussion of microcontrollers! We will take a look at examples, from established development boards to brand new ones. We will also acknowledge how MicroPython has been built upon, to enable different ways of working (with CircuitPython), and LEGO robots (via PyBricks). Finally, and most importantly, you'll get a good sense of the places you can find and learn from the MicroPython community, and how you can get involved and contribute! This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License http://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
Saving Lives with Predictive Geo - AI - presented by Sumedh Ghatage
EuroPython 2022 - Saving Lives with Predictive Geo - AI - presented by Sumedh Ghatage [Liffey Hall 2 on 2022-07-15] We will demonstrate an end-to-end methodology using geospatial Python libraries to understand the use of Multi-Criteria Decision making methods taking into account driving variables. This talk will also throw light upon: 1. Getting the large imagery datasets into DL friendly format 2. Resampling of Satellite image data in python 3. Conducting overlay analysis with weights 4. Calculation of zonal statistics at house level 5. Future Scope We'll also showcase the geo-visualization portal we created and the technologies used, how you can use Python to convert large GeoJSON output to light vector tiles, and create a seamless experience for the user through an intuitive front-end. This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License http://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
Unfolding the paper windmills - presented by Mai Giménez
EuroPython 2022 - Unfolding the paper windmills - presented by Mai Giménez [Liffey Hall 2 on 2022-07-15] Research is done on the shoulders of giants. Luckily and unluckily, those giants spoke paper-English and documented their achievements kind of publicly so we could advance the science. In this talk, we will dissect the structure of a paper, looking for the essential points that will help us understand it and implement it. Following we will get our hands dirty and implement the paper using Python. In particular, we will dive into the seminal paper ""Attention is all you need"" and implement a transformer using JAX. The key takeaways from this talk are: - Demystify academic reading. - Understand the Transformer architecture. - An introduction to the JAX ecosystem. This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License http://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
Mercury - Build & Share Data Apps from Jupyter Notebook - presented by Piotr Płoński
EuroPython 2022 - Mercury - Build & Share Data Apps from Jupyter Notebook - presented by Piotr Płoński [Liffey Hall 2 on 2022-07-15] The Mercury (https://github.com/mljar/mercury) is a new framework for converting Jupyter Notebook to a web app. The widgets are constructed based on the YAML config (similar to R Markdown). The user can tweak the values of the widgets and execute the notebook from the top to the bottom. The notebook sharing is as simple as sending a link. What is more, you can decide whether to show or hide the code. In the talk, I would like to show how the Python notebook can be converted to a web app and deployed to the cloud. This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License http://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
Jupyter - Under the Hood - presented by Dhanshree Arora
EuroPython 2022 - Jupyter - Under the Hood - presented by Dhanshree Arora [Liffey Hall 2 on 2022-07-15] Jupyter Notebooks at their core are just JSON documents that contain all your code, markdown styles and outputs. Yet when you run a notebook, there's a lot that's happening under the hood - from starting a session with the notebook server, to launching an IPython kernel, and a rich Web UI communicating with the notebook server and the IPython kernel using Jupyter's REST APIs and ZMQ websockets. We will explore the Jupyter ecosystem and see how this system comes together. The architecture of all the offerings in the Jupyter Project (such as the classic Jupyter Notebook), the newer JupyterLab IDE, or the scalable multi-user environment - JupyterHub is completely distributed. At their core, there's a front end client like a web browser or a qt console that talks to the Notebook server using its many APIs (like the kernel API) and to the language kernel (in our case IPython) using ZMQ Sockets, allowing the Jupyter architecture to scale easily. In this presentation, we look closely at these REST API calls, and the ZMQ socket traffic using simple tools like the browser's network tab. We will also try to manipulate a notebook using simple code to get a full appreciation of these internals. This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License http://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
Build your own Playlist Recommender System with Python using your GDPR Data - by Marcel Kurovski
EuroPython 2022 - Build your own Playlist Recommender System with Python using your GDPR Data - presented by Marcel Kurovski [Liffey Hall 1 on 2022-07-15] Personalized Playlist Recommendations on Spotify are great – some of them let us discover new songs, some others help us to rediscover songs. However, rediscovery seems to be limited on the more recent past, i.e. going only a month backwards. This is a problem if you like to rediscover some of your favorite songs you might have listened to a longer while ago. Sometimes we add them to our ""liked songs"" where they likely fade away. However, you once explicitly declared those tracks as favorites. So, what is it that we can do about this missing piece in personalized playlist recommendations? Well, the first thing we do is to request our personal usage data from Spotify according to GDPR. Second, we analyze and enrich it with track audio features offered by Spotify’s rich Web API. We derive the music taste profile of ourselves from 12 months of streaming history and use this taste profile to retrieve favorite songs we haven’t listened to for more than a year. In my talk, I present you the Python package I build for this purpose, possible extensions and enable you to create your own personalized playlist to rediscover your past! This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License http://creativecommons.org/licenses/by-nc-sa/4.0/
Watch