04 Sep 2026
Django community aggregator: Community blog posts
Issue 353: DjangoCon US Recaps Galore!
News
Django Developers Survey 2026 results
The fifth annual survey run with JetBrains is out, with the full report, infographics, and a companion writeup titled "The State of Django 2026: Boring is so back."
Help test Python 3.15!
Python release manager Hugo van Kemende kindly requests you add 3.15 and allow-prereleases: true to your GitHub Actions matrix and publish wheels before the October 1 release.
Releases
Django bugfix release issued: 6.1.1
Twelve fixes, nearly all of them 6.1 regressions: admin changelist search crashes, ModelAdmin.list_display traversing multiple relations, __in returning empty querysets, and DecimalField without precision on SQLite.
Python 3.15.0 candidate 2 is here!
The last planned release candidate, carrying 144 bugfixes from 76 contributors since rc1, ahead of the October 1 final.
Django Software Foundation
DEP 0019: Technical Governance for Django
Now accepted, DEP 19 supersedes DEP 10 and DEP 12 as Django's single technical governance document, and trades hard eligibility rules for eight qualitative traits that Steering Council candidates should show three or more of. The five-member council keeps binding authority over technical decisions, with elections triggered by the final feature release of a major release series, a drop below three elected members, or a council vote.
DSF member of the month - Benjamin Balder Bach
The django-money maintainer and Django Day Copenhagen organizer on closing the distance between developers and the people who use what they build.
Djangonaut Space News
Djangonaut Space - Session 7 Accepting Applications
Applications for the eight-week mentorship program close September 6 Anywhere on Earth, with the session starting October 12.
Python Software Foundation
The 2026 PSF Board Election is Open!
Eligible members can approve up to 17 candidates for four open seats, and ballots cannot be changed once cast, so read the nominee statements before voting closes September 15 at 2:00 pm UTC.
Inaugural Python Packaging Council Election: Voting is now open!
The first Packaging Council election is open to members who affirmed their intent to vote, and closes at the same September 15 deadline.
Metadata requests no longer tracked in PyPI download counts
PyPI now counts only .whl, .tar.gz, and .zip requests, so BigQuery data breaks permanently at 2026-08-24: about 39% of urllib3's earlier counts turned out to be metadata and other non-distribution files.
Wagtail CMS News
Our DjangoConUS 2026 photo album ๐ท
Meagen Voss shares photos from Chicago rather than a talk recap, including her first main-stage talk on Wagtail's approach to AI.
Updates to Django
Today, "Updates to Django" is presented by Raffaella from Djangonaut Space! ๐
Last week we had 5 pull requests merged into Django by 5 different contributors - including 2 first-time contributors! Congratulations to Iaroslav and Tyler Russin for having their first commits merged into Django - welcome on board!
News in Django 6.1:
- As default model ordering is now applied to combined querysets,
union(),difference(), andintersection()raiseDatabaseErrorwhen a field inOptions.orderingisn't selected byvalues()orvalues_list(). Callorder_by()without arguments before combining to clear the default ordering.
- Fixed a bug where
DecimalFieldwithoutmax_digitsanddecimal_placescaused a crash when retrieving values on SQLite (#37275).
- Fixed a regression that caused a crash when iterating a
QuerySetof a model overridingModel.from_db()without the newfetch_modekeyword argument. Such overrides now work again, but are deprecated and should be updated to acceptfetch_mode(#37259).
Playwright is replacing Selenium for integration tests ๐
Django Fellow Reports
Django Fellow Report - Jacob
I had a rejuvenating week attending, presenting at, and sprinting during DjangoCon US. I'm still relatively new to this community, so I'm still allowed to be impressed with everyone's gracious and welcoming attitudes. A smattering of things falling under the usual categories this week.
Django Fellow Report - Sarah
Was in Chicago (๐ฌ๏ธ ๐๏ธ ๐ญ ๐บ๐ธ) for DjangoCon US ๐. It was a fantastic conference and a lovely city. Delivered a keynote which went "good enough" and my baby boy managed with the jetlag reasonably well ๐. Came away from the conference with a few ideas and energy from engaging with our community
Django Fellow Report - Natalia
A week of holidays ๐๏ธ ๐ก ๐ฆ followed by a week of DjangoCon US! ๐ โ๏ธ ๐ฅ ๐ค
Sponsored

Until September 10, receive 30% off all new or renewal licenses, with 100% of the proceeds going directly to the Django Software Foundation.
Articles
Why We Started Building on the Django 6.1 Alpha
Divio started building on Django 6.1 at the first alpha, months before the August release. Here's why they picked the pre-release and what they found while testing it every day.
A Dolly Parton Developer
Following Rikki Endsley's "Willie Nelson developer," Trey Hunner makes the case for Dolly Parton as the model: know your rights (she refused to hand over publishing on "I Will Always Love You" when Elvis's team demanded half), exit with grace (she paid Porter Wagoner $1 million to leave his show and kept the friendship), and write the next one. She recorded close to 1,000 songs and wrote thousands more, which is a better target than being a rockstar.
Store lists in a single Django column without joins?
After a decade of development, version 1.0.0 of django-select-multiple-field is here, bringing full support for modern Python and Django versions to store multiple choices in a single database column without extra join tables.
Make Your Django Application Editable
The CMS doesn't need to own your data to make it editable.
htmx and Django LiveView, side by side
Seven worked cases showing where stateless htmx requests and LiveView's persistent WebSocket diverge, with the conclusion that they are complementary rather than interchangeable.
Nifty Django Feature: Use Index for Custom Migration Operations
Override create_sql() and remove_sql() on a models.Index subclass and arbitrary table-level SQL rides along in Meta.indexes, managed by migrations for free.
Django and deployments
A proposed manage.py deploy namespace of lower-level commands that start by printing their expected inputs and outputs, leaving the actual automation to packages and plugins.
Agents All the Way Down
The annotated script of Josh Thomas's DjangoCon US talk on how AI coding agents changed the way he writes Django, written to land for skeptics and true believers alike.
Postgres 19: How Our Advice Has Changed Since...
JIT is off by default, LZ4 replaces pglz for TOAST, and async I/O means the old "an index always beats a parallel sequential scan" assumption is worth re-testing.
"Premature" optimization
The full Knuth quote licenses optimizing the critical 3%, and dropping "small" from "small efficiencies" turned it into a blanket excuse to skip the design work that is cheapest to do up front.
DjangoCon US Recaps
Yes, a standalone category since so many posts on it this week!
DjangoCon US 2026 Recap - Jonathan Peacher
Jonathan Peacher's notes on attending the conference this year in Chicago, highlighting various talks and projects.
My Time at DjangoCon US 2026 - Jason Judkins
Jason Judkins transcribed the talks so he could go back over them, and this recap is the trailer for a longer per-talk series. He picks out a theme running through Paolo Melchiorre's UUID history, Drishti Jain's GeoDjango talk, and Abigail Gbadago's polyglot persistence talk: push the work down a layer, because the database usually knows how to do it better than you do. AI turned up in nearly every talk, with almost nobody uncritical about it.
DjangoCon US 2026 Recap - Tim Schilling
Tim Schilling's fifth DjangoCon, spent chairing sprints with Kudzayi Bamhare, working on Django Simple Deploy with Colin Copeland, and meeting Djangonaut Space members in person for the first time.
My DjangoCon US 2026 - Paolo Melchiorre
Paolo Melchiorre on giving "The Django UUID Story," staffing the DSF booth, and fielding questions at the DSF members open space.
DjangoCon US 2026 - Dwayne McDaniel
Dwayne McDaniel's recap runs talk by talk: Karen Tracey on Django 6's background tasks, CSP support, and template partials, Natalia Bidart on keeping templates the source of truth with HTMX, and Elizabeth Christensen on UUIDv7, graph queries, and OAuth 2.0 in PostgreSQL 18 and 19. His through line is that frameworks, databases, and browsers keep absorbing work that used to need extra layers, with Kasey Kelly's 16,000-line AI-generated frontend file as the cautionary case.
Events
Django On the Med
September 23, 2026 in Pescara, Italy ๐ฎ๐น.
Django Day Copenhagen 2026
October 2, 2026 in Copenhagen ๐ฉ๐ฐ.
Django Job Board
Two new listings this week, plus the DSF still looking for its first Executive Director.
Machine Learning Engineer (Hybrid) at Provision ๐
Django Developer at The Cruise Brothers ๐
Full Stack Software Engineer (Hybrid) at Provision
Executive Director at Django Software Foundation
AI-Assisted Software Engineer, Web Applications at Logical Media Group
Projects
django-danceschool/django-danceschool
Django CMS project with comprehensive features for running a partnered social dance school.
p-r-a-v-i-n/django-fast-multipart
An experimental Rust-backed multipart parser that plugs into Django's parser extension point, so upload handlers, request limits, request.POST, and request.FILES all keep working as they do now. Requires CPython 3.12 or later and Django 6.1, with prebuilt wheels for Linux, macOS, and Windows.
04 Sep 2026 3:00pm GMT
02 Sep 2026
Django community aggregator: Community blog posts
Django and deployments
I have been pondering the wider deployment space in Django for a while and from various angles. This includes my released package django-prodserver but also wondering if the DSF could provide hosting as a small scale commercial operation or what via alternatives I could offer in hosting for Django specifically. Then also I have considered what the wider API in Django could be for deployments.
These thoughts come at a good time, Will Vincent has done two talks on deploying python projects this year and I think his talks would serve as a great theoretical starting point to ensure we cover 90% of what is required. Then after DjangoCon US last week, Paolo made toot suggesting it's time for a deploy command. That toot triggered two things, first a memory of the chats I had in Athens this year and DjangoCon Europe and that I had been meaning to write about this topic for a while.
First let's consider the high level conceptual stages when deploying a project:
- Prepare the overall environment - signing up for an account, creating a project or just booting up a VPS
- Prepare Django and it's settings - these are changes made to the project repository
- Get the Django project from source control to the environment
- Do the first time setup - ideally this would be idempotent.
- Start the production process
- Doing a second deployment - because code always changes and then repeat step 5.
From this list, I think a single managed.py deploy might be too much magical to begin with, but I do think it's possible eventually. I'm thinking it's more likely deploy to be a command that stitches together several lower level commands and each of those commands correspond to a step in the above list. So we could have something like:
manage.py init_deploy_envmanage.py productionizemanage.py deploy_project --firstmanage.py initialize --productionmanage.py prodserver webandmanage.py workermanage.py deploy_project
A couple of very important points, first those names are simply examples for this post to communicate the idea and perhaps it would be best to have them all within a namespace of deploy, so manage.py deploy productionize etc.
Second and most importantly, I am very aware of the numerous possible combinations that exist when it comes to how a project can be deployed today and I am very much NOT suggesting Django support any of them. What I am suggesting is that we focus on the common API inside Django and we have packages and plugins like Eric has with django-simple-deploy. My approach here would be create an API that explicitly does nothing but simply prints expected inputs and outputs from each step. We can then start to automate the parts worth automating in a package, which may get us to a single deploy command.
Let me know your thoughts! As the maintainer of django-prodserver I have a vested interest in this space! :D
PS It's worth noting that there have been years of packages that have done similar things and we should use as reference, django-production is one such package or dj-lite for sqlite configuration in production.
02 Sep 2026 5:00am GMT
01 Sep 2026
Django community aggregator: Community blog posts
"Premature" optimization
"Premature optimization is the root of all evil" - our field's favorite half-sentence, quoted far more often than the sentence it was cut from. Usually it serves as permission: build it fast, profile later, fix a thing or two, done. Let's put the sentence back together and ask what it licenses: when is optimization premature, and when is "premature" the excuse?

01 Sep 2026 10:00am GMT