We are excited to announce the 9th edition of PyDay in Barcelona!
PyDay is an event packed with FREE Python-related workshops and activities for the Python community. It is organized once per year. Over the last eight editions, PyDay has become a fantastic opportunity to share our love for Python and engage users, companies, and newcomers!
When and where
It is scheduled for Saturday 29th November at Canòdrom, from 9:00 a.m. to 18:00 p.m. CET, approximately.
A full day of in-person, hands-on workshops
PyDay BCN 2025 will have different thematic tracks –e.g. data science, web development, security– with hands-on workshops lasting about 90 minutes. Participants will learn how to use different libraries, tools and techniques, fully guided by community members and support volunteers.
Participate in Kahoot and win prizes!
We will host a Kahoot game with questions about PyBCN and Python in general, with prizes for the fastest players. Will you miss it?!
Important dates
29th September: Call for proposals opening: Workshops and Lightning talks 7th November: Call for proposals closing 21th November: Program available 24th November, 9AM: Early registration open for PyBCN members, PyDay speakers and sponsors 25th November, 9AM: General registration open through Eventbrite 29th November: PyDay BCN 2025
Registration
General registration will open on Tuesday 25th of November, at 9AM through Eventbrite.
Schedule
Workshop
Talk
Beginner
Intermediate
Advanced
9:00
9:15
9:30
9:45
10:00
10:15
10:30
10:45
11:00
11:15
11:30
11:45
12:00
12:15
12:30
12:45
13:00
13:15
13:30
13:45
14:00
14:15
14:30
14:45
15:00
15:15
15:30
15:45
16:00
16:15
16:30
16:45
17:00
17:15
17:30
17:45
Registration & Welcome
PyDay BCN 2025 Organising Committee
Sala d'actes Ada Lovelace
Enric Domingo
Sala d'actes Ada Lovelace
Language: English Topic: LLM Python level: Intermediate Topic level: Beginner
Build advanced Agentic LLM Apps with LangGraph and LangChain
Enric Domingo
Sala d'actes Ada Lovelace Language: English Topic: LLM Python level: Intermediate Topic level: Beginner
In this workshop we will learn how to build useful LLM agentic workflows in Python using LangChain and LangGraph, open source libraries and the most popular and powerful tools for advanced AI Engineering projects. They are capable of solving complex tasks, doing multiple LLM calls, using memory, structured outputs, popular tools, custom tools and even being able to introduce human-in-the-loop interactions when needed.
Requirements:
Intermediate experience in Python and basic understanding of LLMs and how to use LLM APIs
Ester Jara
Sala Margarita Salas
Language: Spanish Topic: Artificial Intelligence (IA) Python level: Intermediate Topic level: Beginner
From Zero to Chatbot: Create Your Own AI Assistant with Python
Ester Jara
Sala Margarita Salas Language: Spanish Topic: Artificial Intelligence (IA) Python level: Intermediate Topic level: Beginner
The development of a local AI chatbot using Python is explored step by step. It begins with setting up the environment and loading a compact open-source language model, then guides through creating a structured interaction loop to process input and generate responses. Prompts are designed, conversational context is managed with a rolling history, and a lightweight memory component is added to maintain coherent multi-turn interactions. A short introduction to agentic behaviour illustrates how simple decision-making and task handling can make a chatbot more autonomous. By the end, a fully functional chatbot is built, with a clear understanding of its main components and how they work together.
Requirements:
No prior experience with AI or machine learning - Basic familiarity with Python (variables, functions, running scripts) - Laptop with Python 3.9+ installed - Ability to install Python packages (pip) - Code editor such as VS Code
Natàlia Padilla, Amir Azam, David Arcos, Javier Sabariego, Ely Farrés & Flavie Le Bars
Sala Hedy Lamarr
Language: English Topic: Quantum Computing Python level: Beginner Topic level: Beginner
Introduction to Analog Quantum Computing
Natàlia Padilla, Amir Azam, David Arcos, Javier Sabariego, Ely Farrés & Flavie Le Bars
Sala Hedy Lamarr Language: English Topic: Quantum Computing Python level: Beginner Topic level: Beginner
Participants will learn how to design and simulate an analog quantum algorithm using QiliSDK, directly from their laptops.
QiliSDK is a Python framework for writing digital and analog quantum algorithms and executing them across multiple quantum backends. Its modular design streamlines the development process and enables easy integration with a variety of quantum platforms.
Cristina Cosma
Sala d'actes Ada Lovelace
Language: Spanish Topic: Data science, Natural Language Process, Data Visualization Python level: Intermediate Topic level: Beginner
Del texto al dato: cómo entienden las maquinas el lenguaje humano con Python
Cristina Cosma
Sala d'actes Ada Lovelace Language: Spanish Topic: Data science, Natural Language Process, Data Visualization Python level: Intermediate Topic level: Beginner
Exploraremos como los ordenadores pueden analizar el lenguaje natural humano, transformarlo en datos y extraer información valiosa a partir de palabras. Aplicaremos técnicas básicas de NLP (procesamiento de lenguaje natural) como el procesamiento de palabras, el análisis de sentimientos, de las intensidades y frecuencias. Visualizaremos y compararemos los resultados para comprender cómo los algoritmos interpretan el tono y el contenido de lo que los humanos expresamos.
Requirements:
Conexión a internet, cuenta de Google (para trabajar en Google Colab a través de librerías ya disponibles sin necesidad de usar consola de comandos (cmd) ni instalar Python en local.
Ricardo Ander-Egg
Sala Margarita Salas
Language: Spanish/English Topic: LLM Python level: Beginner Topic level: Beginner
Crea un agente LLM desde cero, sin frameworks.
Ricardo Ander-Egg
Sala Margarita Salas Language: Spanish/English Topic: LLM Python level: Beginner Topic level: Beginner
En este taller vamos a desmitificar los agentes LLM y a construir uno desde cero, sin usar frameworks. Entenderás la lógica fundamental que permite a un modelo de lenguaje razonar y usar herramientas externas, programándolo todo con Python y la librería oficial de OpenAI.
Trabajaremos de forma 100% práctica para implementar el bucle de control que convierte a un LLM en un agente autónomo: recibir un objetivo, pensar qué herramienta usar, ejecutarla y decidir el siguiente paso. El objetivo es que comprendas el mecanismo interno de un agente.
Al finalizar, serás capaz de:
Entender la arquitectura básica de un agente LLM (razonamiento + acción).
Implementar un bucle de control para que el LLM pueda usar herramientas.
Permitir al modelo ejecutar funciones de Python.
Requirements:
Conexión a internet. Python 3.10+. Tener la librería “openai” instalada. No se necesitará una API key para el taller. Se recomienda usar un gestor de entornos como uv o virtualenv, aunque no es obligatorio. Cada participante debe tener su entorno listo. Durante el taller se utilizará “uv” para gestionar dependencias.
Alberto Camara
Sala Hedy Lamarr
Language: English Topic: Data Science Python level: Intermediate Topic level: Intermediate
Building Multi-Agent System with Pydantic AI
Alberto Camara
Sala Hedy Lamarr Language: English Topic: Data Science Python level: Intermediate Topic level: Intermediate
A hands-on workshop teaching multi-agent system design using Pydantic AI to analyze arXiv papers. Participants will build cooperating agents that extract citations, analyze context, and link claims to evidence—demonstrating agent orchestration, validation patterns, and structured outputs.
Requirements:
Participants should bring a laptop with:
Python 3.10+ installed
Ollama installed with Llama 3.2 model downloaded
Basic familiarity with Python
8GB+ RAM recommended
No prior experience with AI agents or Pydantic AI required.
Tired of editing Word documents manually and breaking templates by mistake? Join the automation revolution as we see how Python can manage bookmarks, placeholders and structured templates inside .docx files. We’ll discover how to populate fields, update content programmatically and generate consistent documents with just a few lines of code. By the end, you’ll be creating automated Word files smoothly, saving time and reducing errors in your everyday workflows. Get ready to upgrade your document-handling skills!
Ricardo Ander-Egg
Sala d'actes Ada Lovelace
Language: Spanish/English Topic: LLM Python level: Intermediate Topic level: Beginner
Keywords, BM25 y vectores: construyendo un buscador de texto desde cero
Ricardo Ander-Egg
Sala d'actes Ada Lovelace Language: Spanish/English Topic: LLM Python level: Intermediate Topic level: Beginner
En este taller aprenderemos cómo funcionan de verdad los buscadores de texto, más allá de las cajas negras de las librerías. Partiremos de los conceptos más básicos (índices, tokens, ranking) y llegaremos hasta técnicas modernas como BM25 y búsqueda vectorial, implementándolo todo a mano desde cero.
Trabajaremos de forma totalmente práctica: construirás tu propio mini‑buscador, primero basado en keywords y “scoring” clásico, y después lo extenderemos con métodos más avanzados y representación vectorial. El objetivo del taller es entender los principios básicos que hay detrás de los motores de búsqueda y cómo se implementan.
Al finalizar, serás capaz de:
Implementar un índice invertido simple y un buscador basado en keywords.
Entender y programar un sistema de ranking con TF‑IDF / BM25.
Utilizar vectores y similitud de coseno para búsqueda semántica básica.
Comparar enfoques y saber cuándo usar palabras clave, BM25 o vectores.
Requirements:
Python 3.10+ (cada participante puede decidir seguir el taller con un Jupyter Notebook, Google Colab, scripts de Python, etc). El taller se desarrollará utilizando archivos de texto de Python, pero es apto para seguirlo en un notebook también.
Kevin Sanchez
Sala Margarita Salas
Language: Catalan Topic: Computer vision Python level: Intermediate Topic level: Intermediate
Del Desorden Visual al Significado: Una Aventura con Transformers y Donut
Kevin Sanchez
Sala Margarita Salas Language: Catalan Topic: Computer vision Python level: Intermediate Topic level: Intermediate
En este workshop práctico de 90 minutos exploraremos cómo los modelos basados en Transformers han revolucionado el campo de la visión por computadora, superando arquitecturas clásicas como CNNs en tareas de clasificación, detección y segmentación. A través de un caso de estudio original, aprenderás a:
Preparar un dataset para visión por computadora.
Implementar un pipeline completo usando Python, PyTorch, HuggingFace y Ollama.
Aplicar un Vision Transformer (ViT) y/o modelos híbridos como DETR.
Evaluar resultados y visualizar predicciones con herramientas modernas.
Comprender cómo extender el pipeline a casos reales de negocio.
El enfoque será 100% práctico, con código reproducible y materiales descargables para que puedas continuar experimentando después del taller.
Kemalcan Bora
Sala Hedy Lamarr
Language: English Topic: Agent IA Python level: Advanced Topic level: Advanced
House, Controlled by AI (What Could Go Wrong?)
Kemalcan Bora
Sala Hedy Lamarr Language: English Topic: Agent IA Python level: Advanced Topic level: Advanced
This project demonstrates how agentic AI can enable autonomous decision-making and natural-language interaction in smart home systems. By integrating an ESP32 microcontroller with basic sensors (e.g., temperature, motion, or object detection), we show how an AI agent can perceive environmental data, reason about it, and act on user instructions or contextual conditions.
For example, the agent can:
Adjust the air conditioner temperature to 30°C based on voice or text commands. - Query fridge inventory data (e.g., count remaining eggs). - Detect home occupancy using motion or door sensors.
Oriol Abril
Sala Hipàtia d'Alexandria
Language: Catalan Topic: Statistics and Data Science Python level: Intermediate Topic level: Beginner
Models de regressió bayesians
Oriol Abril
Sala Hipàtia d'Alexandria Language: Catalan Topic: Statistics and Data Science Python level: Intermediate Topic level: Beginner
En aquesta xerrada explorarem els models lineals generalitzats (GLMs) dins del paradigma Bayesià a través de la llibreria bambi. Introduirem els GLMs i els seus tres components principals: el predictor lineal, la distribució observacional i la funció d’enllaç. Després veurem el paper que hi juguen les distribucions a priori per als paràmetres del model i com utilitzar-los per a ampliar els GLMs incorporant-hi jerarquia. Tot això ho farem utilitzant la llibreria bambi, una llibreria comunitària de programari lliure que permet definir GLMs a través d’una sintaxis amb fórmules i fer inferència a través de PyMC o NumPyro.
Requirements:
Utilitzarem la última versió de la llibreria bambi durant el taller. Es recomana tenir un virtual environment amb la llibreria ja instal·lada si es vol seguir el taller en directe. El taller també assumeix un nivell intermedi en l’ús de NumPy i Pandas.
Camilo Chacón Sartori
Sala d'actes Ada Lovelace
Language: Spanish Topic: IA Generativa Python level: Intermediate Topic level: Beginner
Agentes Inteligentes que Evolucionan: Software Automodificable con LLMs y Python
Camilo Chacón Sartori
Sala d'actes Ada Lovelace Language: Spanish Topic: IA Generativa Python level: Intermediate Topic level: Beginner
En este workshop exploraremos cómo construir software automodificable utilizando agentes basados en LLMs, con implementaciones prácticas en Python. Partiremos de los fundamentos de agentes autónomos y LLMs, para mostrar cómo estos sistemas pueden autoevaluarse, reescribirse y adaptarse a nuevas tareas de manera autónoma. La sesión tendrá un énfasis práctico, aprovechando mi experiencia en la integración de la computación evolutiva y LLMs, para que los participantes adquieran herramientas concretas para experimentar con software autoevolutivo.
Requirements:
Portátil y acceso a internet, para poder clonar el repositorio y seguir las instrucciones.
Victor Garcia
Sala Margarita Salas
Language: English Python level: Beginner Topic level: Beginner
Fabric en Acción: conectando bloques, datos y magia en python
Victor Garcia
Sala Margarita Salas Language: English Python level: Beginner Topic level: Beginner
En este workshop práctico de 90 minutos exploraremos Fabric, una poderosa herramienta que permite automatizar tareas, orquestar flujos de trabajo y construir pipelines reproducibles en Python. A través de ejemplos concretos aprenderás cómo combinar bloques de código, manejar datos y desplegar procesos complejos de forma elegante y extensible.
Durante la sesión veremos desde los fundamentos de Fabric hasta casos de uso reales: automatización de tareas repetitivas, integración con servicios externos, ejecución remota y creación de scripts que convierten procesos largos y manuales en flujos automatizados. Todo ello acompañado de demostraciones paso a paso para que puedas aplicar lo aprendido inmediatamente en tus propios proyectos.
Si buscas potenciar tus habilidades para crear herramientas internas, pipelines de datos o automatizar el día a día con Python, este workshop es para ti. ¡Ven a descubrir cómo Fabric puede convertir tus scripts en auténtica magia productiva!
Eric Massip
Sala Hedy Lamarr
Language: English Topic: Web development Python level: Intermediate Topic level: Beginner
HTMX: A love story between a backend dev and a frontend “framework”
Eric Massip
Sala Hedy Lamarr Language: English Topic: Web development Python level: Intermediate Topic level: Beginner
HTMX brings modern interactivity to the web without the complexity of a full frontend framework. In this workshop, we’ll dig into how HTMX works while staying in the comfort of Django’s views and templates. We’ll explore how hypermedia can simplify frontend development and bring back clarity to the client–server relationship. We’ll then put it all into practice by building a small hypermedia-driven web app that feels reactive and dynamic.
Ubaldo Hervas
Sala Hipàtia d'Alexandria
Language: English Topic: Causal Inference & Data Science Python level: Intermediate Topic level: Beginner
Causal Inference: a brief introduction
Ubaldo Hervas
Sala Hipàtia d'Alexandria Language: English Topic: Causal Inference & Data Science Python level: Intermediate Topic level: Beginner
Discover how causal inference separates correlation from causation to drive better decisions. This fast-paced introduction covers key concepts—treatments, counterfactuals, DAGs, confounding, experiments vs. observational data—and practical tools like A/B tests, DiD, and IVs. Learn design principles, common pitfalls, and how to frame questions that unlock credible, actionable insights at scale.
Once he obtained his MSc in High Energy Physics (UAB, IFAE), he started his professional career working as a backend web developer for Air-Fi, a small communications company were he would contribute to the development of a wifi-based Indoor Positioning System (ISP). Eventually, he would become the Product Manager of the ISP. His professional and academic profiles would come together at Qilimanjaro, where he is currently a developer for the Quantum as a Service (QaaS) project.
I work across the data spectrum in many places, from big data processing using tools such as Apache Spark, to training Machine Learning models and visualizing their outputs, using tools such as scikit-learn or tensorflow.
I am a nerd about pandas and numpy and I am very interested in TDD and Functional Programming.
Python is where I am most at home, but I am also very interested in SQL, Scala and Haskell for a
variety of reasons.
I have a blog where I sometimes write technical posts as a way to synthesize and capture stuff that I have discovered while coding.
Soc consultor sènior a Bové Montero, on treballo amb Python i SQL per automatitzar processos i analitzar dades utilitzant entorns com Azure i Microsoft Fabric. Tinc formació en ADE i Economia (UOC i UB), un postgrau en Transformació Digital (EADA) i estic finalitzant el Màster en Ciència de Dades (UOC). Col·legiat com a economista i Expert Comptable, participo a ReDigital com a colíder en IA i sóc vicepresident a les comissions d’Innovació i Transformació Digital del Col·legi d´Economistes de Catalunya. He fet xerrades a PyBCN sobre les llibreries PyPDF i OpenPyXL, i em presento per impulsar una comunitat oberta, col·laborativa i tècnicament sòlida.
Software Architect with over a decade of experience in cloud computing and distributed systems. Currently combining work as a Software Architect at AGCO with pursuing a Ph.D. in Information and Communication Technologies at Universitat Pompeu Fabra. As an AWS Community Builder and AWS Certified Machine Learning Specialist, brings deep expertise in cloud-native solutions, particularly in Go and Python development. Career highlights include leading major system modernization projects that achieved significant cost reductions and implementing microservices architectures. Passionate about open-source contributions and actively participates in the developer community.
Oriol discovered his passion for computational statistics and open source during his MSc in Astrophysics and has been working the topic since then. He started contributing to ArviZ and PyMC (two Python libraries related to Bayesian modeling) in 2019, joining their core teams not long after that. He started working in academia but he left after some years in order to be able to work more freely and collaboratively on open source, software and knowledge sharing. His main areas of interest are data visualization, model and inference diagnostics, model comparison, and prior elicitation. Within open source projects, he has also dedicated a large part of his work to documentation, governance and DEI. He currently works as a consultant with PyMC Labs, as an instructor on Intuitive Bayes and as open source maintainer for PyMC and ArviZ.
Camilo Chacón Sartori es doctorante en el Instituto de Investigación en Inteligencia Artificial (IIIA-CSIC) y en la Universidad Autónoma de Barcelona. Ha publicado tres libros: «Principios de programación», «Mentes geniales. La vida y obra de 12 grandes informáticos» y «Computación y programación funcional». Su principal proyecto, «Érase una vez un algoritmo», es un pódcast y un newsletter donde reflexiona sobre temas técnicos, científicos y filosóficos concernientes a la informática.
Graduat en Estadística per la UB – UPC va ampliar els coneixement realitzant un Postgrau en Ciència de les Dades i Big Data per la UB, Màster en Data Science UOC. Consultor tecnològic en AIS, analista de dades en CCMA, fundació Lluita contra la Sida. Professor d’universitats com la UB, la UPC i la UOC. Amb vinculació amb el món esportiu i la anàlisis de dades esportives. Actualment és Doctorand del programa d’Intel·ligència Artificial de la Universitat Politècnica de Catalunya (UPC). Investigador al grup de recerca IDEAI (Intelligent Data Science and Artificial Inteligence) de la UPC.
Graduat en Turisme i Direcció Hotelera per la Universitat de Girona, i Màster en Supply Chain i Comerç Internacional per la Universitat de Barcelona. He ampliat la meva formació amb un bootcamp en Data Analytics (Ironhack), el programa intensiu d’enginyeria del programari a la Fundació 42 Telefónica, i actualment curso el Grau en Ciència de Dades a la UOC. Actualment, treballant com a Forecaster al Grupo Bimbo, aplicant tècniques d’anàlisi, planificació i predicció de dades en sèries temporals. Amb visió estratègica, capacitat d’organització i passió per la tecnologia i les dades, em presento com a candidat a Tresorer de PyBCN per contribuir al bon funcionament i creixement de la comunitat.
Soc consultor sènior a Bové Montero, on treballo amb Python i SQL per automatitzar processos i analitzar dades utilitzant entorns com Azure i Microsoft Fabric. Tinc formació en ADE i Economia (UOC i UB), un postgrau en Transformació Digital (EADA) i estic finalitzant el Màster en Ciència de Dades (UOC). Col·legiat com a economista i Expert Comptable, participo a ReDigital com a colíder en IA i sóc vicepresident a les comissions d’Innovació i Transformació Digital del Col·legi d´Economistes de Catalunya. He fet xerrades a PyBCN sobre les llibreries PyPDF i OpenPyXL, i em presento per impulsar una comunitat oberta, col·laborativa i tècnicament sòlida.
Llicenciat en Ciències de la Computació per la Universitat de l’Havana. Tinc un màster en Informàtica per la Pontifícia Universitat Catòlica de Rio de Janeiro. He treballat en startups i scale-ups al Brasil, Alemanya i els Estats Units, principalment desenvolupant programari amb Python i Java. Actualment treballo a xorq labs com a enginyer fundador. Sóc un entusiasta del codi obert i he contribuït a projectes com ara dask, xarray, geopandas, ibis i els datafusion-python bindings. M’encanta compartir coneixement. He fet xerrades a PyDay Barcelona, PyCon Italia i PyCon Portugal.