List of videos

EuroPython 2024 — Lightning talks Friday

[EuroPython 2024 — Forum Hall on 2024-07-12] Lightning talks Friday https://ep2024.europython.eu/session/lightning-talks-friday Enjoy Fridays lightning talks. Short talks about everything by everyone. Hosted by Elise Kasai and Mark Smith: 00:00 *Welcome to Friday's Lightning Talks* 01:52 *Community Conference / Events Announcements & Celebration!* 07:12 *OpenFHE - Matrix Arithmetic Library* — Sukanya Mandal 10:05 *A mysterious case of distorted 3D models* — Miro Hrončok 15:28 *How to `from italia import 🤌`* — Ester Beltrami 21:26 *How the cycle Garbage Collection works* — Mark Shannon 25:58 *A EuroPython Poem* — Emma Cooke 29:56 *Testing Hardware Specs with Pytest* — Thomas Ganahl 33:30 *Presentation slides dos and don'ts* — Reuven Lerner 38:57 *Who wants to be a millionaire?* — Rodrigo Girão Serrão 44:13 *Level Up Your Presentations with Better Screenshots* — Rudolfs Berzins 48:53 *Python C++ API with Nanobind* — Fernando Pereira 54:43 *self.optimize() to become a better programmer* — Muzher Sharif --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/

Watch
EuroPython 2024 — Sprint orientation

[EuroPython 2024 — Forum Hall on 2024-07-12] Sprint orientation https://ep2024.europython.eu/session/sprint-orientation What is a sprint? Where are they going to take place? Can I even join? And how? Let us answer these questions and a few more in the Sprint orientation --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/

Watch
EuroPython 2024 — Closing Session

[EuroPython 2024 — Forum Hall on 2024-07-12] Closing Session https://ep2024.europython.eu/session/closing-session That's it for the tutorial and talks. Thank you all and before we all use what we learned let's have a short recap. --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/

Watch
Test java and C applications with python — Roberto Polli

[EuroPython 2024 — North Hall on 2024-07-12] Test java and C applications with python by Roberto Polli https://ep2024.europython.eu/session/test-java-and-c-applications-with-python Did you know that Python can be used to test foreign code, such as Java and C? This enables writing tests for legacy code in a very few time, reducing development time and improving code coverage (e.g., using python frameworks to generate testcases for foreign code). If you have C and Java services that communicates over the network, you can use python as a glue to anticipate some integration tests directly in python. --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/

Watch
Adventures in not writing tests — Andy Fundinger

[EuroPython 2024 — North Hall on 2024-07-12] Adventures in not writing tests by Andy Fundinger https://ep2024.europython.eu/session/adventures-in-not-writing-tests Sometimes we write code that we don't expect to go to production; they are one-offs or analysis to understand our data. However, a good analysis may be worth repeating, and before we know it, the code that was never supposed to go to production is running every day and driving critical decisions – it is in production. Once our code is in production, we have to maintain it, and that means we need tests to ensure that changes made to the code while maintaining it do not change other behavior. Hypothesis is a Python library for creating inputs that are good for exercising code. Hypothesis tests create many different inputs for a single test case, with a special concentration on inputs that are likely to break your code. If the code was originally written to understand data, then new data we feed it over time could be very different from what was initially expected or planned for. With Hypothesis, we randomize our test outputs and they become just as unknown as our real-world outputs. Our tests then confirm certain properties to prove that the analysis was performed as expected. Ghostwriting is a feature of Hypothesis that writes tests based on the type hints in your code. This can not only save time, but also validate our type hints. The savings in time and toil can be significant, but the ghostwritten tests do also need some additions to truly test our code. We'll look at what is needed to both generate proper inputs and check our outputs. --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/

Watch
Pytest Design Patterns — Miloslav Pojman

[EuroPython 2024 — North Hall on 2024-07-12] Pytest Design Patterns by Miloslav Pojman https://ep2024.europython.eu/session/pytest-design-patterns Proper testing of your Python application doesn't require a rewrite into hexagonal architecture (whatever it means 🤷). In this session, we'll explore battle-tested techniques to enhance the maintainability of your test suite. - *Embracing Well-Known Patterns:* The test client or transaction-bound tests are well-established patterns originating from Django. We will explore how to extend these foundational practices within pytest. - *Employing Fixture Factories:* How to ensure that our test data clearly cover the intended scenarios? Unpack the utility of fixture factories, streamlining the setup process. - *Mocking without Monkey Patching:* Learn effective mocking, steering clear of the problematic practice of monkey patching. We'll explore strategies to achieve accurate testing using favorite frameworks and libraries. - *Covering More with Parametrized Fixtures:* Many developers are familiar with pytest fixtures and parametrized tests, but may not be aware of the power of their combination: parametrized fixtures. Discover how to easily build more comprehensive tests. - *Rethinking Test Categorization:* The traditional division into unit and integration tests often falls short in practical application. We'll check an alternative approach that can better align with real-world scenarios. The goal is not merely to report higher coverage but to have tests that can be trusted. By incorporating established patterns, you'll be empowered to focus on what truly matters. --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/

Watch
Python Observability Perfected: Advanced Techniques with OpenTelemetry — Anton Caceres

[EuroPython 2024 — North Hall on 2024-07-12] Python Observability Perfected: Advanced Techniques with OpenTelemetry by Anton Caceres https://ep2024.europython.eu/session/python-observability-perfected-advanced-techniques-with-opentelemetry In the evolving landscape of serverless and cloud technologies, Python stands out as a key player for building microservices. Yet, as these systems grow, tracking their performance and catching bugs become increasingly complex. This presentation introduces OpenTelemetry, a rising standard that equips us with tools to monitor not just Python code but also vital components like databases and message queues. It's designed to blend seamlessly with Python, offering a unified method to collect, process, and share telemetry data across different parts of a distributed system. This talk starts by discussing the importance of observability in modern distributed environments. Then, we'll dive into OpenTelemetry, focusing on its Python SDK's basics. We'll walk through a hands-on example, showing how to integrate OpenTelemetry into a Python project for automated and manual tracking. Finally, we'll explore how to leverage the insights gained from OpenTelemetry for more effective system monitoring, ensuring smoother operation and easier troubleshooting. --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/

Watch
A Tale of Scaling Observability — Toomas Ormisson

[EuroPython 2024 — North Hall on 2024-07-12] A Tale of Scaling Observability by Toomas Ormisson https://ep2024.europython.eu/session/a-tale-of-scaling-observability What it’s like to keep the lights on in a rapidly growing business - how we’ve scaled our metrics, logging and tracing beyond processing 50TB+ of telemetry a day, and what we’ve learned along the way. During this session, we will discuss the challenges of scaling high load services, and give few pointers to developers to help your chosen open-source observebility tool function as a product. --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/

Watch
​​Encrypted computing in Python using OpenFHE — Sukanya Mandal

[EuroPython 2024 — North Hall on 2024-07-12] ​​Encrypted computing in Python using OpenFHE by Sukanya Mandal https://ep2024.europython.eu/session/encrypted-computing-in-python-using-openfhe Fully Homomorphic Encryption (FHE) is a privacy-enhancing technology that enables performing computations over encrypted data. FHE has recently seen a lot of progress, and commercial applications of FHE are now available. One of the main application domains for FHE is privacy-preserving machine learning. We introduce a Python interface for OpenFHE, a popular open-source FHE C++ software library that supports all common FHE schemes. OpenFHE is a NumFocus-sponsored open-source project that has been authored by a community of well-known FHE cryptographers and software engineers.The talk provides a high-level introduction to FHE and its applications, and then provides an overview of the Python API. Several examples are presented to both illustrate FHE concepts and show the practicality of the technology. More information about the OpenFHE project: * Main website: https://www.openfhe.org/ ; * OpenFHE discourse forum: https://openfhe.discourse.group/ ; * Main OpenFHE repository: https://github.com/openfheorg/openfhe-development ; * OpenFHE organization: https://github.com/openfheorg ; * Main OpenFHE design paper: https://eprint.iacr.org/2022/915 ; --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/

Watch