Uploaded November 2025 | Updated September 2026, 2 weeks ago
[EuroPython 2025 — Terrace 2A on 2025-07-18]
🎤 *Design Patterns: Build better software from day one by Marine Guyot*
🔗 https://ep2025.europython.eu/session/design-patterns-build-better-software-from-day-one
📝 Abstract:
Starting a new software project is exciting! It’s your chance to build something clean, functional, and easy to manage. But without a strong foundation, even small projects can quickly spiral into a confusing mess of bugs, untracked changes, and hard-to-follow code. This is especially true in research environments, where programming often takes a backseat to scientific discovery, and software evolves unpredictably as it adapts to new experiments and shared use. So how do you set yourself up for success from the beginning?
This talk is your beginner-friendly guide to designing smarter, maintainable software using proven design patterns. We’ll explore how patterns like the Singleton (for managing shared resources), the Template Method (for reusable workflows), and the Factory Method (for flexible object creation) can transform your code from fragile and frustrating to solid and scalable.
Using real-world examples from research labs, we’ll walk through how these patterns solve common problems, simplify collaboration, and keep your projects on track, even as they grow. Whether you're developing a new pipeline, a data analysis tool, or an experiment software, this talk will equip you with the foundational knowledge to design software that supports your scientific goals without becoming an unmanageable burden.
Let’s start building research software the right way, so you can focus on science, not debugging.
---
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: creativecommons.org/licenses/by-nc-sa/4.0
[EuroPython 2025 — Terrace 2A on 2025-07-18]
🎤 *Design Patterns: Build better software from day one by Marine Guyot*
🔗 https://ep2025.europython.eu/session/design-patterns-build-better-software-from-day-one
📝 Abstract:
Starting a new software project is exciting! It’s your chance to build something clean, functional, and easy to manage. But without a strong foundation, even small projects can quickly spiral into a confusing mess of bugs, untracked changes, and hard-to-follow code. This is especially true in research environments, where programming often takes a backseat to scientific discovery, and software evolves unpredictably as it adapts to new experiments and shared use. So how do you set yourself up for success from the beginning?
This talk is your beginner-friendly guide to designing smarter, maintainable software using proven design patterns. We’ll explore how patterns like the Singleton (for managing shared resources), the Template Method (for reusable workflows), and the Factory Method (for flexible object creation) can transform your code from fragile and frustrating to solid and scalable.
Using real-world examples from research labs, we’ll walk through how these patterns solve common problems, simplify collaboration, and keep your projects on track, even as they grow. Whether you're developing a new pipeline, a data analysis tool, or an experiment software, this talk will equip you with the foundational knowledge to design software that supports your scientific goals without becoming an unmanageable burden.
Let’s start building research software the right way, so you can focus on science, not debugging.
---
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: creativecommons.org/licenses/by-nc-sa/4.0



![How to build a cross-platform graphical user interface with Python — Russell Keith-Magee
[EuroPython 2025 — Terrace 2B on 2025-07-18]
🎤 *How to build a cross-platform graphical user interface with Python by Russell Keith-Magee*
🔗 https://ep2025.europython.eu/session/how-to-build-a-cross-platform-graphical-user-interface-with-python
📝 Abstract:
If you need to build a user interface for your Python code, many guides will tell you that your only options are to use the command line, or wrap your code in a web interface. However, there is another option - building a native GUI interface. In fact for some use cases, a GUI app may be your _only_ option.
In this talk, youll learn how to build and run a graphical user interface (GUI) that can run on your desktop, on your phone, or in a browser. Youll learn how you can use the BeeWare suite of tools to bootstrap a new GUI project, develop a GUI interface, and deploy that app to multiple desktop and mobile platforms, without making any code changes. Youll learn how to access device hardware like GPS and cameras; and youll learn how to distribute your application - including all runtimes and third-party libraries - to others. Lastly, youll get a brief introduction to how you can access native platform APIs that dont have a Python API.
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 build a cross-platform graphical user interface with Python — Russell Keith-Magee](https://i.ytimg.com/vi/nbJrfXkotq0/mqdefault.jpg)
![From Code Hero to Team Leader: Learning to Let Go - Manivannan Selvaraj
[EuroPython 2026 - S3A on 2026-07-15]
🎤 *From Code Hero to Team Leader: Learning to Let Go by Manivannan Selvaraj*
🔗 https://ep2026.europython.eu/session/from-code-hero-to-team-leader-learning-to-let-go
📝 Abstract:
As engineers grow in their careers, many of us try to support our teams by writing more code, reviewing every pull request, and stepping in to fix the hardest problems. It feels helpful and responsible. Over time though, this approach can unintentionally create too much dependency on one person.
This talk explores the shift from being the person who solves everything to becoming someone who helps the whole team succeed.
Drawing from lessons learned through experience(often the hard way :)) and from colleagues and mentors along the way, I will share practical shifts that make a difference: creating clearer technical direction, improving design conversations, sharing context early, mentoring thoughtfully and building systems that reduce reliance on any single “hero.”
If you are a mid or senior engineer who is always busy but still feels that too much depends on you, this talk aims to offer useful ideas for your own journey.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ From Code Hero to Team Leader: Learning to Let Go - Manivannan Selvaraj](https://i.ytimg.com/vi/oEh3c-2sHl0/mqdefault.jpg)
![Hacking Truth: Python and the Limits of Mathematics - Miguel Ángel Fernández Gutiérrez
[EuroPython 2026 - S2 on 2026-07-15]
🎤 *Hacking Truth: Python and the Limits of Mathematics by Miguel Ángel Fernández Gutiérrez*
🔗 https://ep2026.europython.eu/session/hacking-truth-python-and-the-limits-of-mathematics
🛠️ Resources: https://go.mianfg.me/ep26
📝 Abstract:
Are mathematics a reliable way to explain reality? Can we trust them? And more importantly: what role could Python play in such profound questions?
Gödel’s Incompleteness Theorems are pillars of mathematics and computer science, revealing inherent limits in our ability to formalize truth and reason about the world. Their implications reach far beyond logic, touching philosophy, the foundations of computing, and the limits of machine reasoning. Despite their importance, understanding _why_ these results hold can feel inaccessible and abstract.
In this talk, we tackle that difficulty directly. Python will be used not only as a programming language, but as a conceptual tool to understand Gödel’s First Incompleteness Theorem through algorithmic thinking.
We will see how computational ideas make abstract concepts tangible, exploring the intellectual journey from Hilbert’s dream of a complete mathematics to the breakthroughs of Gödel, Church, and Turing. Through this lens, Python helps illuminate the boundaries of logic and computation, offering a new perspective on how mathematics works... and where its limits lie.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ Hacking Truth: Python and the Limits of Mathematics - Miguel Ángel Fernández Gutiérrez](https://i.ytimg.com/vi/oWsqoKkP_sw/mqdefault.jpg)


![Keynote: How Complex Systems Taught Me To Fail - Imogen Wright
[EuroPython 2026 - Keynote - S1 on 2026-07-15]
🎤 *How Complex Systems Taught Me To Fail by Imogen Wright*
🔗 https://ep2026.europython.eu/session/how-complex-systems-taught-me-to-fail
📝 Abstract:
This talk traces a meandering story of twenty years of invention, triumph and disaster, touching on theoretical physics, cloud computing, viral genetics, pandemic responses, and nearly dying in an NHS A&E queue. Youll pick up four generally applicable laws of complex systems, gain some superpowers for averting an apocalypse, and hopefully laugh a bit along the way. This isnt much of a technical talk and it is neither sanitised nor triumphant — expect sarcasm, most of all during the rough patches. My hope is that youll leave seeing your own work differently, especially if its quiet and unglamorous. Resilience is a property of systems, not their components, and its the people who notice small changes and tend locally who make the biggest differences of all.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ Keynote: How Complex Systems Taught Me To Fail - Imogen Wright](https://i.ytimg.com/vi/p6m4TuDK2Bw/mqdefault.jpg)
![Supercharging Litestar: Extensibility Through Plugins - Jacob Coffee
[EuroPython 2026 - S1 on 2026-07-16]
🎤 *Supercharging Litestar: Extensibility Through Plugins by Jacob Coffee*
🔗 https://ep2026.europython.eu/session/supercharging-litestar-extensibility-through-plugins
📝 Abstract:
Discover how to extend Litestars core functionality using its powerful plugin system.
This talk demonstrates practical ways to enhance Litestar applications through custom plugins, highlighting the frameworks extensibility and ease of use. Litestar solves the challenge of building flexible Python web applications without adding excessive complexity.
In this talk, you’ll see how its plugin system offers a convenient way to package and distribute code for routes, middleware, security, dependencies, and more—all in a single contained unit. Similar to Flask blueprints or pytest plugins, Litestar plugins let you streamline development by removing boilerplate and providing a clear path for extending or sharing functionality across projects.
By the end, you’ll have concrete steps for building, integrating, and distributing plugin-driven solutions that simplify your Litestar applications at any scale.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ Supercharging Litestar: Extensibility Through Plugins - Jacob Coffee](https://i.ytimg.com/vi/pD_WepVsvfU/mqdefault.jpg)
![Speeding Up Python with Free Threading and Mypyc - Jukka Lehtosalo
[EuroPython 2026 - S1 on 2026-07-17]
🎤 *Speeding Up Python with Free Threading and Mypyc by Jukka Lehtosalo*
🔗 https://ep2026.europython.eu/session/speeding-up-python-with-free-threading-and-mypyc
📝 Abstract:
It’s common to hear complaints about Python being slow. In this talk, I will show how to make _some_ Python programs dramatically faster by using Python 3.14’s free threading and ahead-of-time compilation to C extensions using the mypyc compiler, while staying entirely in Python (and CPython).
Free threading can deliver large speedups for CPU-bound code that can be adapted for parallel execution, while mypyc speeds up workloads that benefit from reduced interpreter overhead and that can use static typing. If each can give a 10x speedup in an ideal use case, can we get a “holy grail” 100x speedup by using both?
I’ll introduce several small examples inspired by real-world workloads, measuring and explaining what happens when you apply free threading, mypyc, or both. In practice, relatively few programs are perfect fits for both techniques at once, but when they are, you can get substantial gains. Having both tools available gives you options for attacking a wide range of performance problems.
Along the way, I’ll cover various bottlenecks you are likely to encounter while optimizing real-world workloads. These often limit performance scaling. Ill explain how to diagnose and improve allocation-heavy code and thread contention caused by reference counting, in particular.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/ Speeding Up Python with Free Threading and Mypyc - Jukka Lehtosalo](https://i.ytimg.com/vi/pVFt8vhQMx8/mqdefault.jpg)