Uploaded May 2026 | Updated September 2026, 2 weeks ago
During the conference in July we've learned this was Lara's first EuroPython. It was lovely to hear an opinion of a new attendee, thanks so much from all of us, Lara! ๐ฅฐ EuroPython is a great event thanks to all the volunteers, but also each and every attendee who makes it so lovely.
What did you all think about our badge stickers in 2025? #europython #conference #europython2025 #python #opensource
During the conference in July we've learned this was Lara's first EuroPython. It was lovely to hear an opinion of a new attendee, thanks so much from all of us, Lara! ๐ฅฐ EuroPython is a great event thanks to all the volunteers, but also each and every attendee who makes it so lovely.
What did you all think about our badge stickers in 2025? #europython #conference #europython2025 #python #opensource

![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)

![Design Pressure: The Invisible Hand That Shapes Your Code - Hynek Schlawack
[EuroPython 2026 - S4 on 2026-07-17]
๐ค *Design Pressure: The Invisible Hand That Shapes Your Code by Hynek Schlawack*
๐ https://ep2026.europython.eu/session/design-pressure-the-invisible-hand-that-shapes-your-code
๐ Abstract:
Ever had this weird gut feeling that something is off in your code, but couldnt put the finger on _why_? Are you starting your projects with the best intentions, following all best practices, _and_ still feel like your architecture turns weird eventually? Are you telling your AI bot to write clean code but entropy keeps getting the best of you?
**Maybe, its not your fault**! Maybe, the tools or methodology youre using are applying **design pressure** that youre not cognizant of, but that influences the shape of your code.
The best way to prevent that is becoming aware of the forces at play. So, lets look at what design pressure is, look at the most prominent examples of good and bad, and explore how to leverage the former and quell the latter. Because you can only deal with something you know exists.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ Design Pressure: The Invisible Hand That Shapes Your Code - Hynek Schlawack](https://i.ytimg.com/vi/aM2dfmh33lI/mqdefault.jpg)
![GPU Programming in Pure Python - Bryce Adelstein Lelbach
[EuroPython 2026 - S3A on 2026-07-16]
๐ค *GPU Programming in Pure Python by Bryce Adelstein Lelbach*
๐ https://ep2026.europython.eu/session/gpu-programming-in-pure-python
๐ Abstract:
GPU programming can be scary, but doesnt need to be! Did you know you can access the full performance of CUDA purely in Python? With the full CUDA Python stack, you have a friendly interface to get you started with GPU acceleration.
In this example-driven talk, well begin with a general discussion of the CUDA model and how to manage accelerator devices in Python with cuda.core. Next, well teach you how to create arrays and launch work with CuPy. Then, youll learn how to customize parallel algorithms with cuda.compute and write your own kernels that leverage cooperative algorithms with cuda.coop, and integrate seamlessly with accelerated libraries such as cuBLAS and cuDNN.
Well look at a variety of parallel examples, from counting words, to implementing softmax and row-wise reductions.
By the time the talk is over, youll be ready to start accelerating your Python code with GPUs!
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ GPU Programming in Pure Python - Bryce Adelstein Lelbach](https://i.ytimg.com/vi/aY8owo5hWgA/mqdefault.jpg)




![Hunting the Invisible: Indirect Prompt Injection in Python Pipelines - John Robert
[EuroPython 2026 - S4 on 2026-07-16]
๐ค *Hunting the Invisible: Indirect Prompt Injection in Python Pipelines by John Robert*
๐ https://ep2026.europython.eu/session/hunting-the-invisible-indirect-prompt-injection-in-python-pipelines
๐ Abstract:
AI agents are no longer just generating text, they are reading PDFs, scraping websites, calling APIs, and taking autonomous actions inside our Python applications. But what happens when the documents they read are malicious?
In this talk, weโll explore indirect prompt injection, a subtle but major attack where hidden instructions embedded in PDFs, HTML pages, or external data sources hijack an AI systemโs behavior. Unlike classic prompt injection, this attack doesnโt come from the user, it comes from the data your Python pipeline trusts.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ Hunting the Invisible: Indirect Prompt Injection in Python Pipelines - John Robert](https://i.ytimg.com/vi/ayF1OJEU8mA/mqdefault.jpg)
