Uploaded August 2026 | Updated September 2026, 2 weeks ago
[EuroPython 2026 - S2 on 2026-07-17]
๐ค *Plugins in python - how it is done by Grzegorz Bokota*
๐ https://ep2026.europython.eu/session/plugins-in-python-how-it-is-done
๐ Abstract:
Have you ever wondered how popular tools like pytest or tox are able to discover and use plugins? In this talk we will learn about entry-points in Python package metadata and how they enable plugin discovery. We will review how some popular projects are using this mechanism to create their plugin systems. After a walkthrough of the basics, we will explore how you can use this to create a plugin mechanism for your own project. We will explore possible hook implementations and their advantages and disadvantages. Finally we will learn how to make plugins discoverable on PyPi.
---
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: creativecommons.org/licenses/by-nc-sa/4.0
[EuroPython 2026 - S2 on 2026-07-17]
๐ค *Plugins in python - how it is done by Grzegorz Bokota*
๐ https://ep2026.europython.eu/session/plugins-in-python-how-it-is-done
๐ Abstract:
Have you ever wondered how popular tools like pytest or tox are able to discover and use plugins? In this talk we will learn about entry-points in Python package metadata and how they enable plugin discovery. We will review how some popular projects are using this mechanism to create their plugin systems. After a walkthrough of the basics, we will explore how you can use this to create a plugin mechanism for your own project. We will explore possible hook implementations and their advantages and disadvantages. Finally we will learn how to make plugins discoverable on PyPi.
---
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: creativecommons.org/licenses/by-nc-sa/4.0
![Explaining the 5 types of database and how to choose between them โ Tibs
[EuroPython 2025 โ Terrace 2B on 2025-07-18]
๐ค *Explaining the 5 types of database and how to choose between them by Tibs*
๐ https://ep2025.europython.eu/session/explaining-the-5-types-of-database-and-how-to-choose-between-them
๐ Abstract:
What database should you choose? Worse, what _kind_ of database should you choose?
My aim is to give you enough information to make that choice, or at least be aware of what the alternatives are.
Id argue that there are five important database types at the moment, differing in how they regard the shape of their data. Ill give a brief introduction to each, explaining how it works, and discuss why you might want to use that particular type of database, depending on your data and what you want to do with it. Ill show case at least one open source example of each.
Ill cover:
* Relational (PostgreSQLยฎ, SQLite)
* Columnar (ClickHouseยฎ)
* Document (OpenSearchยฎ)
* Key Value (Valkeyโข๏ธ)
* and as an extra, Graph (Neo4Jยฎ)
The slides are available at https://github.com/Aiven-Labs/the-5-types-of-database
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ Explaining the 5 types of database and how to choose between them โ Tibs](https://i.ytimg.com/vi/YZmyumwFWOg/mqdefault.jpg)

![Become a Python Core Developer in 3 Easy Steps - Tomas Roun
[EuroPython 2026 - S1 on 2026-07-17]
๐ค *Become a Python Core Developer in 3 Easy Steps by Tomas Roun*
๐ https://ep2026.europython.eu/session/become-a-python-core-developer-in-3-easy-steps
๐ Abstract:
Step 1: Fix a bug
Step 2: ???
Step 3: Core developer
Ok, its not that simple but its also not as mysterious as it might seem!
About three years ago I fixed an obscure bug in the unittest module. Today, Im a core developer. This talk is about what happened in between, and how you can start contributing too!
Over the years, I got to work on many different areas of Python. Ive fixed bugs in the parser, added import autocomplete to the REPL, worked on gettext tooling, and eventually found my way to the JIT compiler, all things I knew little about before diving in.
Getting started contributing to CPython can be intimidating, so Ill share some practical things I learned along the way. At the same time, I will spend some time talking about the whole process of how does one go from being just a Python user to becoming a Core developer (with stats included).
If youve ever wanted to contribute to Python but werent sure where to start, this talk is for you!
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ Become a Python Core Developer in 3 Easy Steps - Tomas Roun](https://i.ytimg.com/vi/ZMxuMIFmDuc/mqdefault.jpg)
![EuroPython 2026 - Python Quiz ๐
[EuroPython 2026 - S1 on 2026-07-15]
๐ค *Python Quiz ๐*
๐ https://ep2026.europython.eu/session/python-quiz
๐ Abstract:
Join us for a fast, fun, and brain-twisting quiz all about Python, the tools, and the community.
Test your knowledge, race against the clock, and compete with fellow EuroPython attendees for a shot at some awesome prizes.
Whether youโre a seasoned developer or just love a good challenge, this showdown is your time to shine.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ EuroPython 2026 - Python Quiz ๐](https://i.ytimg.com/vi/ZgM8uCj8fBU/mqdefault.jpg)


![Should you trust Trusted Publishing? - Nikita Karamov
[EuroPython 2026 - S3B on 2026-07-15]
๐ค *Should you trust Trusted Publishing? by Nikita Karamov*
๐ https://ep2026.europython.eu/session/should-you-trust-trusted-publishing
๐ Abstract:
In 2023, PyPI started supporting Trusted Publishers: A way to publish Python packages to PyPI without relying on insecure password and short-lived tokens. Three years later, this approach has become the default answer to package registries security, as it found its way into NPM, crates.io, and RubyGems. But does it actually offer the benefits we hoped it would? Can you really trust the green checkmark, and if you cant, whats the point?
In this talk, I want to look closely at what Trusted Publishers are, and what we _might_ think they are; who they do and do not protect. Well explore the potential centralization problem of relying on Big Tech, US-based CI providers, leaving little room for smaller players like Codeberg and Sourcehut, as well as self-hosted Git forges and CI engines.
But even when using GitHub, Trusted Publisher may be tricky to get right, exposing different backdoors for the attacker to exploit. I want to discuss the illusion of security Trusted Publishers may give the inexperienced PyPI user; that is, if they actually decide to look at the hidden details of the published artifacts. How can we safeguard our Python projects, and should it be us who safeguards it? I will propose some solutions to this issue, including how the package managers and the PyPI registry itself can help us in this task.
Lastly, well reminisce about the past in search of answer. Maybe OpenPGP โWeb of Trustโ wasnt such a bad idea after all? Can we regain our independence in deciding who we do and dont trust?
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ Should you trust Trusted Publishing? - Nikita Karamov](https://i.ytimg.com/vi/_GyFAYbjAOE/mqdefault.jpg)
![Hold on! You have a data team in PyCon Taiwan! โ Wei Lee
[EuroPython 2025 โ Terrace 2B on 2025-07-18]
๐ค *Hold on! You have a data team in PyCon Taiwan! by Wei Lee*
๐ https://ep2025.europython.eu/session/hold-on-you-have-a-data-team-in-pycon-taiwan
๐ Abstract:
When organizing a conference, we often encounter questions such as how to set an appropriate ticket price, how many t-shirts to produce, and how many lunch boxes to estimate. Frequently, our estimates rely on wild guesses, which can lead to inaccuracies. To tackle this issue, we aimed to establish PyCon Taiwan as a data-driven community and formed a data team back in 2021. As the Python community continues to grow with an increasing number of data professionals, this presents a great opportunity for us to attract more volunteers to join PyCon Taiwan.
In our community, we offer an excellent experimental playground for data enthusiasts to test their ideas and explore new technologies. In this talk, I will share how PyCon Taiwan built our internal ETL system using Apache Airflow and discuss our plans to migrate to the soon-to-be-released Airflow 3.0. Additionally, I will explain how we collect data and how it helps us make decisions based on evidence rather than gut feelings.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ Hold on! You have a data team in PyCon Taiwan! โ Wei Lee](https://i.ytimg.com/vi/__3ir15XIdE/mqdefault.jpg)


![How to Maintain 60 Integrations and Not Go Bananas - Ivana Kellyer
[EuroPython 2026 - S3A on 2026-07-15]
๐ค *How to Maintain 60 Integrations and Not Go Bananas by Ivana Kellyer*
๐ https://ep2026.europython.eu/session/how-to-maintain-60-integrations-and-not-go-bananas
๐ Abstract:
Say youve built a library whose main value is providing built-in integrations with a considerable number (say 60+) of different Python packages. Thats cool, and your users are loving the out-of-the-box experience. (Being blissfully unaware of the lengths you had to go to in the background to make things work seamlessly helps.) Everything seems to be working fine, you get the odd bug report or feature request, the usual.
Then one day you wake up and your otherwise fairly chill issue tracker is drowning in folks experiencing an issue with your library that breaks their app. Your first thought is, why is this coming up now, when your last release was two weeks ago? And then you realize: Its not your release that broke the library.
All the third party code youre integrating with? Its become *your* code by extension. You need to react if something changes upstream and breaks your integration in unexpected ways. You can write your integrations so defensively that no one will ever want to read them again, but its not enough: you cant anticipate every single change each of the 60+ packages will ever make.
Lets assume having your users act as a release monitoring system by notifying you on your issue tracker is not what you want. How do you go about this? Youll want somehow to detect breakage early, so you can go fix things before your users are hit by them. And ideally youd do it in a way that maintaining it is not a nightmare.
This talk will take you through one such journey, from recognizing the problem, to various attempts at making it better, to eventually arriving at a solution thats good enough for now (tm).
You might like this talk if you:
- Have to deal with integrations in some shape or form
- Are relying on third-party packages heavily
- Dont like maintaining things by hand
- Like to have that this can be automated with a script itch scratched
- Are intrigued that theres a talk that has the word bananas in the title
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ How to Maintain 60 Integrations and Not Go Bananas - Ivana Kellyer](https://i.ytimg.com/vi/aEhfq_F_JnI/mqdefault.jpg)