EuroPython 2025

Tomas Roun

I am a software engineer at CERN in Geneva. I am currently working on the
development of Indico, an open-source software for meeting and conference
management. My expertise is mainly in Python, JS/TS, React and Web
Technologies in general, and also Internationalization (i18n).

My passion for software and Open Source goes beyond my work. I am an active
contributor to many open-source projects such as CPython, Babel and many more.
In my free time I also like to hack on things using my 3D printer and Raspberry Pis
and build mechanical keyboards.


Sessions

07-18
10:10
45min
Indico: the 20 year history and evolution of an open-source project at CERN
Tomas Roun, Dominic Hollis

Indico is a powerful open-source event management toolkit, created at the European Organization for Nuclear Research (CERN), that has been evolving over the last 20+ years. Indico has been used to host major conferences, including EuroPython itself in 2006 and 2007, as well as thousands of events at CERN, and other major international organizations/institutions alike.

Maintaining an ever-evolving project comes with unique challenges: dealing with legacy code, adopting new technologies, and managing technical debt without disrupting a large and continuously growing user base.

This talk explores the project’s technical evolution as well as focusing on how it stayed current with emerging technologies; starting as a PHP/MySQL app, it transitioned to mod_python with ZODB, briefly used a custom WSGI implementation, and ultimately became a modern Flask/Postgres/React application - sometimes integrating multiple technologies simultaneously.

By the end of this talk, attendees will:
* Understand the challenges of maintaining a long-lived web application.
* Learn strategies for dealing with technical debt while keeping systems evolving.
* Gain insights into real-world architectural decisions for open-source projects.

Join us, as two team members discuss how to stay sane with the meticulous balancing act of dealing with both technical debt and integrating new technologies/features.

Community Building, Education, Outreach
South Hall 2B
07-18
13:55
30min
PyJSX: Write JSX Directly in Python - No Strings Attached!
Tomas Roun

Tired of wrestling with clunky string templates or learning yet another templating language just to render some HTML? PyJSX brings the elegance and
power of React-style JSX syntax directly to Python, allowing you to create complex HTML structures using Python's native syntax.

Together we'll see how one can build reusable components with standard Python functions, but I'll also showcase some of the nitty-gritty implementation
details that make PyJSX possible, including a custom parser and a lot of import magic.

Love it or hate it, you'll walk away understanding how language extensions such as PyJSX can push Python's boundaries in unexpected ways. Come see how we can blend Python's simplicity with JSX's declarative power - and decide for yourself if this unholy alliance is a brilliant innovation or beautiful madness!

Web Development, Web APIs, Front-End Integration
South Hall 2A