Python Day Schedule
Warning: This is a draft schedule and is subject to change.
Wednesday, April 23
10:30
Before you Scale, let's talk SOLID - Significance of Solid Principles as a Prerequisite for Scaling Software Systems

In this session we will discuss the importance of SOLID principles as a prerequisite for scaling Software systems. We will talk about what software scaling is, why scaling in open-source projects matters and the challenges project maintainers face while scaling projects. We will also look into what SOLID principles are and why each of the principles matters for software scaling using Python and Django. Attendees will gain knowledge on how to apply SOLID principles using Python and Django.
Room: 3
Python Day - Apr 23
Talk
10:30–10:55
Using Trusted Publishing to Ansible release

"Trusted publishing" is the term for using the OpenID Connect (OIDC) standard in the Python Ecosystem to release on PyPI. In this talk will go though the usage of trusted publishing in any Python project and how it helped Ansible project to open up release management to the community. This talk is a deep dive explanation of release practicalities of releasing Ansible using trusted publishing.
Room: 101
Python Day - Apr 23
Talk
10:30–10:55
FastDjango: Conjuring Powerful APIs with the Sorcery of Django Ninja

Dive into the world of modern web development by fusing the power of Django and FastAPI. This talk will guide you through the process of building robust, scalable, and efficient APIs using Django Ninja, a web framework that combines Django's reliability and FastAPI's speed. We'll explore how to leverage Django's ORM and user authentication while enjoying FastAPI's performance and type checking. Whether you're a Django veteran looking to supercharge your APIs or a beginner eager to learn cutting-edge techniq
Room: 2
Python Day - Apr 23
Talk
10:30–10:55
What We Can Learn from Exemplary Python Documentation

Let us build on examples from NumPy, pandas, and Matplotlib to explore techniques and tools with the Sphinx documentation generator. Learn how to implement styles, include advanced elements, and overcome challenges in creating clear, maintainable docs. 📑✨
Room: Workshop 1
Python Day - Apr 23
Workshop
10:30–11:25
11:00
Architecture as Code (AaC) with Python

Architecture as Code (AaC) was born for prototyping a new system architecture design without any design tools. Available tools currently support on-premise and main major providers including AWS, Azure, and GCP cloud platforms.
Room: 2
Python Day - Apr 23
Talk
11:00–11:25
Beyond the GIL: Python's Evolution and Future Directions

Explore the transformative journey of Python's Global Interpreter Lock (GIL). Delve into the GIL's origins, its role in Python's growth, and its challenges for multicore processing in development. Let's discover the implications of its experimental removal in Python 3.13.1, and how this shift might redefine concurrency, performance, and the future landscape of Python applications across various domains
Room: 101
Python Day - Apr 23
Talk
11:00–11:25
Migrating billions records from SQL to NoSQL using continuous migration technique with PySpark and DataProc.

The batch mechanism is challenging when handling continuous data migration with DataProc. However, I'm introducing a new approach for continuous data pipelines enabled by PySpark. The participants will learn new methods to handle data consistency and reserve data completeness in a million-scale migration from SQL database into NoSQL, MongoDB.
Room: 3
Python Day - Apr 23
Talk
11:00–11:25
11:30
Code review the right way

Code review is central part of everyday developer job. The motivation to create this talk was a quote:
“The most important superpower of a developer is complaining about everybody else's code”. In this talk I’ll explain my approach to better code review.
Room: 101
Python Day - Apr 23
Talk
11:30–11:55
The art of yield

Can you imagine a python project without any return?
Is it overhead or memory saving? Is it complicated or would it reduce complexity? Is it testable or a horror for unittesting?
Room: 3
Python Day - Apr 23
Talk
11:30–11:55
12:00
Sync or async? Feel the magic of coroutines and the event loop in Django

Struggling with slow I/O in your Django apps? Want to maximize server resources? This talk explores asynchronous Python and its impact on Django.
Let's clarify parallel vs. concurrent programming, and demystify Python's concurrency model, focusing on coroutines and the event loop. Learn how asyncio enables efficient, non-blocking code, handling concurrent requests without thread/process overhead and how everything is integrated into the Django framework.
Room: 101
Python Day - Apr 23
Talk
12:00–12:25
Multiplatform testing with Python

Pareto Security is a suite of native apps that talk with a cloud-based dashboard. We use Python to drive tests across all of these areas, spinning up virtual machines, installing the app, asserting that it works. And to test the cloud-based dashboard, of course.
This talk will touch on common python testing tools such as pytest, how to use it efficiently, how to make tests as fast as possible. Then I'll show how to use Playwright to test that the sales page, the dashboard, the licensing engine work togethe
Room: 2
Python Day - Apr 23
Talk
12:00–12:25
Building pure Django REST API

The new version of Django has several important features that allow us to avoid installing additional modules. Libraries like DRF, yasg, spectacular have always been recommended for REST API development. Now the rules have changed.
Room: Workshop 2
Python Day - Apr 23
Workshop
12:00–15:00
13:00
I want to deploy my Flask app on Kubernetes, what are my options?

After creating a great web app using Python such as with flask, the next hurdle to production is how to make it available to users and operate it. And not just your app, but also ingress, the database, observability and the list goes on. We will go through your options for simplifying the operations of your web app using open source tooling. This will include using k8s directly with helm charts, PaaS using fly.io and new tooling developed by Canonical using juju. By the end of the talk you will have seen th
Room: 3
Python Day - Apr 23
Talk
13:00–13:25
Python in 3D computer graphics

Python has emerged as a versatile tool for 3D computer graphics, offering powerful capabilities in modeling, animation, and simulation. This presentation explores the application of Python in creating dynamic and visually engaging 3D graphics using Blender. The session will showcase practical examples that demonstrate Python's potential in various aspects of 3D graphics
Room: Workshop 1
Python Day - Apr 23
Talk
13:00–13:45
Transforming REST APIs with Protobuf: Unlocking Performance and Flexibility
Davi Nascimento de Paula
Discover how Protobuf can transform your REST API's schema evolution, while offering performance gains over JSON. This session covers Protobuf's strong versioning, ensuring seamless API updates without breaking clients. We'll tackle the challenges we faced at KAYAK, like the learning curve and integration complexity, offering strategies to address them. Gain practical insights and benchmarks as we discuss integrating Protobuf with Python frameworks, boosting your API's efficiency and adaptability.
Room: 2
Python Day - Apr 23
Talk
13:00–13:25
Do Repeat Yourself

Programming is for a large about removing repetition and finding abstractions that achieve that. But is that always sensible? Using the power of music we will examine how universal DRY really is.
Room: 101
Python Day - Apr 23
Talk
13:00–13:25
13:30
Coding Aesthetics: PEP 8, Existing Conventions, and Beyond

Coding aesthetics, in this context, refers to how code is written. It is essential that programmers also pay attention to the aesthetics and not just the functionality the code aims to achieve. This talk explores several ways to make Python code aesthetically pleasing, such as code refactoring, using static code analysis tools like PyLint to check compliance with PEP8 guidelines, and applying syntactic sugar. In addition, we will discuss the limitations of PEP8 and how we can make more pragmatic choices.
Room: 101
Python Day - Apr 23
Talk
13:30–13:55
Let the Robots Test: Acceptance Test-Driven Development (ATDD) with Robot Framework

Business specifications are often vague or incomplete, making development challenging. Acceptance Test-Driven Development (ATDD) bridges this gap with clear, executable specifications. This talk explores how Robot Framework enhances collaboration between business and development teams. Through practical examples, we’ll show how to write effective tests and extend Robot Framework with custom Python libraries. Gain insights and tools to improve communication, development, and software delivery.
Room: 3
Python Day - Apr 23
Talk
13:30–13:55
Inside the Black Box: The Anatomy of Virtual Environments

Virtual environments are a fundamental part of Python development, but to most developers, they’re largely a ‘black box’. In this talk, we’re gonna dissect the code, file structure and utilities that make them up to deeply learn, and not just have superficial knowledge of, how venvs actually work.
Room: 2
Python Day - Apr 23
Talk
13:30–13:55
14:00
Python Containers: Best Practices

If you work with web services, you’re probably using containers… and you’re also probably not doing it as well as you could. In this talk, we’ll go over best practices for container images to produce lightweight, safe and modular containers for quick and efficient builds.
Room: 101
Python Day - Apr 23
Talk
14:00–14:25
Build, Deploy, Monetize: The Future of the Developer Economy

The Creator Developer Economy offers developers the chance to turn their skills into a passive income stream. In this talk, I’ll explore how developers can leverage Apify's tools to build, deploy, and monetize web scraping solutions. From using Crawlee for Python to create efficient scrapers to publishing and earning.
Room: Workshop 1
Python Day - Apr 23
Workshop
14:00–14:55