2026-09-04 –, Auditorium
Conventions are one of Django’s greatest strengths.
They simplify our day-to-day work, reduce cognitive load, and let teams move fast with confidence. By following well-established defaults, we spend less time debating structure and more time solving real problems.
But every convention is also a decision - and every decision has trade-offs.
Who decided these conventions? Why were they chosen? And what happens when your problem doesn’t quite fit the “Django way”?
In this talk, we’ll explore Django’s conventions as both a feature and a constraint. We’ll look at where they shine, where they leak, and how experienced developers can respectfully bend (or break) them without fighting the framework. This is a talk for anyone who loves Django — especially when they disagree with it.
Django is often praised for its “batteries-included” philosophy and strong conventions. From project layout to ORM patterns, admin defaults, and application structure, Django makes a lot of decisions on behalf of its users - and most of the time, those decisions are excellent.
But conventions are opinions baked into code.
In this talk, I’ll reflect on conventions not as immutable rules, but as negotiated agreements between framework authors and the community. Drawing from real-world projects and long-term Django usage, I’ll explore questions like:
• What problems do Django’s conventions intentionally solve?
• What trade-offs do they introduce as projects grow or diverge?
• When does “just follow the convention” become friction rather than guidance?
• How can teams deviate safely without creating unmaintainable codebases?
Rather than advocating for rewriting Django or rejecting its philosophy, this talk focuses on informed deviation: understanding the intent behind conventions so that breaking them becomes a conscious, well-reasoned decision - not a reflex or a hack.
The talk is reflective, practical, and experience-driven, aimed at intermediate to advanced Django developers who have felt both comforted and constrained by Django’s defaults.
Django Conventions
A software developer for over 20 years, he fell in love with Python early in his journey. Django developer since 2007. He loves Python and Django so much that he has brought developers into the community ever since, and he ended up starting his consultancy firm around these technologies.
DjangoCon Europe Organizer for a few of the last editions, and PyCon Portugal organizer since the beginning in 2022.
