Back to all speakers
Jochen Wersdörfer

Jochen Wersdörfer

Jochen Wersdörfer is a freelance software developer based in Düsseldorf, Germany, with more than 20 years of Python experience. He specializes in Django, data science, and machine learning, and works on systems where architecture must satisfy strict operational constraints. He previously spoke at DjangoCon Europe 2021 and FOSDEM 2025, and co-hosts the German Python Podcast. He works across web and desktop Django deployments, focusing on reliability and maintainability in production environments. He maintains open-source projects including django-cast and regularly writes about practical Django architecture and operations.

When SaaS Is Not Allowed: Shipping Django as a Desktop App

Talk
Some teams face constraints that make standard web deployment impossible: confidential data that must never leave user machines, air-gapped environments, and workloads that are too expensive to run centrally. This talk presents a production pattern for turning Django into a desktop application by packaging it inside Electron. The case study is Steel-IQ, an open-source steel-industry simulation tool for multi-decade decarbonization scenarios, shipped for local execution with sensitive data. Structure (30 minutes): 1. Why this architecture exists: confidentiality, offline environments, heavy compute. 2. System design: Electron + Django + django-tasks workers + SQLite (including WAL mode). 3. Packaging and distribution: python-build-standalone, uv, installers, and update paths via GitHub Actions. 4. Production failure modes: startup checks, graceful shutdown, orphan process cleanup, migrations, and memory behavior. 5. Demonstration and decision checklist: when this approach is right, and when to choose alternatives. Audience and level: - Intermediate to advanced Django developers. - Useful for teams building internal tools, offline-first products, or applications with strict data constraints. - No prior Electron experience required. Attendee takeaways: 1. A reference architecture for embedding Django inside Electron in production. 2. A concrete packaging strategy for standalone Python across platforms. 3. Process-management patterns for reliability and recovery. 4. Operational lessons for long-running local workloads. 5. A decision framework for when desktop-packaged Django is a fit.