Transcript: DjangoCon US 2025 Recap
welcome to django chat if you're listening in the just the podcast we're now doing video we're on
youtube you must check out the video will's got this amazing soft back like you must check out
it's just gorgeous i'm also wearing glasses i had to get glasses for the first time in my life
two weeks ago and it's so is that like presbyopia is that is that really cool
yeah well it's two things yeah good good for you it's like you're married to a doctor or something
so yes so uh i've been reading about the uh english revolutionary period in the 17th century
and a lot was about um presbyterian church leaders did um imposing you know their particular ethic
upon the rest of the country so um it means elder the press the presbyter bit means oh i wondered
that so there we go elder vision presbyter okay well now we just lost half our audience but that's
okay yeah welcome back to django chat podcast on the django web framework django web framework so
we've been off we've been off for the summer we're back trying new things and you know six
years in almost seven years in we're just going to mix it up we're going to do videos we're going
to do guests not guests um yeah just have fun with it so the big news yeah we'll go back to
our regular cadence of uh twice a week or every two weeks fortnightly as they say yeah there's a
perfect word for it if only it was internet yeah well but nobody nobody says it in the u.s
unfortunately like you sound pretty pretentious to say it to american yeah no if you were i mean
it wouldn't bother you you could say it but i if i when i say it it's you know when i say all that
english that's i know right yeah um all right so let's dive in so we're going to talk about we're
back uh django con us just happened last week which i was at and i was live texting you the
whole time so there's some things to talk about apis maybe coming into django and other things
and we're also we're going to do our ads so we we're very thankful to have a sponsor hacksoft
uh you're a django development partner beyond code we're going to talk about them a little
bit later because both of us had a chance to spend some time with them at django con europe
in april yes so carlton summer go what was what was the summer like we haven't you know without
the podcast we don't we don't talk like we used to you know this is just kind of an excuse for us
to you know texting only gets so far yeah well i mean you know normally you text me when i just
i'm about to go to bed and i text you and you're still no it's just it just doesn't work um it was
good like the summer here is long because the kids finish school the last week of june and they don't
go back till like you know the second week of september and so that it's like it's a long break
um but i really enjoyed it um we were busy over the summer um i can spoil as ever we'd had google
summer code coming on we were getting ready for you know helping to um get some of the features
in there for Django 6.0 which we'll talk about in a minute but it was just a nice relax it was
quite busy I had to take August like July was very busy I had to take August a little bit more on the
back burner because I just needed some rest so that I get I could arrive now in September and
actually be fresh yeah yeah for sure so you feel fresh I feel surprisingly lively I mean I went I
was away I had a week's holiday with my eldest in first week September he wants to go to university
in france so we did a lightning tour of french cities it was wonderful i got back when i was
quite tired i mean you know yeah um well and that's all those uh for several years you've
been studying french on duolingo and stuff right yeah no no i mean it's just like 10 minutes a day
i mean and it's it works i mean it's not it's not the quick quickest way of learning a language i
suspect and it may not be the best way of language language but i could have been playing candy crush
in that time and i wasn't yeah and to be fair it's not your first romance language so it's a little
bit of yeah they're all the same um well that's good it's nice to see you back i'm just staring
at my notes uh and trying to remember you know what did you do in the summer what did i do i i
had to think about it so so people at django con us told me there there's an updated version of
bingo for this podcast where i have to we have to mention jeff triplet and i have to say i worked
it i work at a pie charm so i'll get that out of the way you got those done early but since i work
at PyCharm JetBrains I traveling going to conferences so I got to go to EuroPython in
Prague for the first time beautiful city I was at the booth so a little bit you know stuck there
but also had a lot of conversations with people I can't say I saw a ton of the city but it's a
one trip I'm looking forward to being a teeny bit older when the kids have like moved on to their
next level they're all teenagers now and then move on to the next level and they're less slightly
more independent I can become kind of old man of the European conference scene I've never been to
europe python but it always looks amazing no it was great it's it's big it's a lot of i mean
unsurprisingly there's a different group there's not a lot of overlap between the u.s tour and the
well your store right it's just like yeah no it's beautiful and actually i was struck by
um there's like you know there's a there's a river that runs through prague so i could go
along at every morning for a run and chicago is actually in a way similar to that because there's
a big river near where my hotel and the venue was except chicago is like 50 100 story buildings in
prague a little bit more manageable but you can walk along and there's cafes and it's really
really nice um in chicago yeah in september you sent me a picture of like these ice tunnels that
they've turned into bars oh yeah yeah in prague yeah yeah i was i was running by that with uh
with a colleague in the morning and we're like what is that you know because it looks it's over
looks over 100 years old and now they have these beautiful
cafes and bars in it
I was like they surely didn't make it
you know and these if this is
the opening there's these glass doors so they open them like
this so you can walk on the side
so yeah amazing city
excuse me really
good food and everything I have this
new setup trying to get going
what else you were
invited but you were busy there was a Django
20th episode on
talk Python so Adrian
Halavati Simon Wilson Jeff
uh triplet tibo colas our president and me even though i was like don't put me on here like but
you couldn't attend carlton so i got your spot so that was really nice to sort of go back
memory lane a little bit between simon and adrian and jeff um to be fair since they were all have
been there from the beginning yeah the conversation was really good i think we should link that in
the show notes it's a nice it was a nice chat um so if you didn't catch it like i'd recommend
it's worth that you know half hour and 2x certainly yeah right yeah uh but yeah no i think
a lot of django today you can see in you know adrian talked about this the fact that it was
built for a professional use case and his and simon and jacob's design philosophies and just
personalities you know are really clear uh in the framework today so jacob caplan moss was at
django con us which was great and he's on the board and very involved what else uv live stream
with michael kennedy so that was through pyjama that was fun uh a little nerve-wracking to talk
for an hour or talk for an hour but i was the great thing about michael is you can just sort
of get him going and he'll no i mean he's such a pro yeah no he's he's wonderful um django survey
is coming up that'll be released soon we're gonna do a show about that we're gonna do a show about
that yeah we'll do i think the next show we'll do on that so they'll the results are ready i gotta
do a blog post hopefully i took some videos at django con us because the python survey came out
as well right i mean so yeah i wanted you know get brains mentioned jet brains but i really think
jet brains do a wonderful thing i'd like they put an awful lot of effort into it it's a big thing
and it's every single year the python survey django survey i just you know little round of
applause which is the effort and commitment that jet brains has shown for that over the years i
I mean, it's a big reason why I'm here because when I was on the board, I worked with them on the Django survey and then also the annual PyCharm promotion, which will come out soon too, where you get, what is it, 30% off and all the proceeds go to the Django Software Foundation. So that's historically been a quarter of the annual budget. So that's, yeah, it's a big thing.
um and then lastly my personal site i've been trying to write a little bit uh so wsvincent.com
and it's it's a ruby jekyll site that's how you know it's old so i just i've been trying to vibe
code it just because i wanted something that matters but i can sit back and just be like
all right agents like do your thing so yeah it's got new search and as well if i had to
maintain a jekyll site i think i would vibe code it too oh i'm not gonna dump on i'm not gonna
it is every time i always have to update gems and um you know i should use one of the python
versions i just can't be bothered and use django i know i know i will but i have i have learn
django.com which is a django site which has all that and and surprisingly hasn't broken or anything
that's doing great despite my neglect so that's yeah that's going up to the right your django
tagline isn't it does great despite your neglect yeah so anyway so yeah busy summer and let's talk
about django con us so that was last week and i was there the whole time maybe i'll i'll tee it
up and then you can or i know we can discuss it i was texting you the throughout the whole thing
it was almost like i was there i mean i was uh you know i know i well i missed i missed you at
the conference it's not the same being there but with current yeah i wasn't able to travel to the
us and normally we play that game if someone comes up and says something nice about the podcast or
something and we can kind of you know hand them off to each other as a next step but yeah you
should take a cut out of me with you know i can just put out no i need to bring a sign that just
says carlton says hi because that was i would be like carlton i talked to so and so so and so you're
like oh say hi sometimes i showed i showed the phone i showed the you know i actually had said
yeah yeah yeah um so carson gross uh creator of htmx gave the keynote and this was uh did i link
yeah i wrote actually i just wrote up uh a written review of the conference um which we'll link to
where i mean it's a great talk it was about this japanese um designer at who worked at nintendo
and his concept of withered technology which is sort of an older version of boring tech
and carson made a lot of great analogies between htmx hypermedia and you know just with experience
you don't have to you can focus on sort of delight rather than just technical brilliance for the sake
of technical brilliance yeah no i mean to me when i heard that i'd already decided i wasn't going to
travel to the the u.s when they announced the the keynotes but when i heard it was carson i was like
ah that really stings you know like to miss the conference to miss the community yes those things
but then to miss carson who um with htmx is a bit i've been building a product last two and
a half years i've been using htmx since day one and i'm just so on board with it and it's for me
it's so right and it so speaks to what the world the web is and can be and it fits so well with
django yeah and to not be able to you know and i banter with carson online and to not be able to
meet him was like ah i can't believe it i know well he's i mean he's a he's a java guy and
javascript so he's he's a professor in montana so he doesn't do much django himself but you know
this htmx is there and the django community has adopted it more than almost more than anywhere
else um so yeah it was good and then i saw htmx is going to be in drupal now and it's you know i
think it's it just makes so much sense for a progress a progressive web experience that doesn't
go full single page application you know i mean it's it's unfair to say it's the new jquery but
it's a little bit you know it's just like sprinkling your inner activity and he also
sorry go ahead oh god my talk at the last year um about um api maybe i think um yeah it was about
you know about my experience of building with um both htmx and alpine the last couple of years um
one of the lines that one of the points i make is i haven't had this feeling since the old days
of using jquery just you know tags make your selection tag on a you know do these long lines
of jquery and it was wonderful it was glorious yeah well with alpine and htmx i've really found
that again and it's just joyful yeah it's so efficient i mean just whatever you need i'm just
looking at my notes here there's a few i mean i'm interested people's different takes here because
there's the like data star and there's um alpine ajax which is another one which kind of package
up a bit more than htmx and i'm interested by the people to talk to the people who use those
different options as to what they what they're getting which htmx doesn't offer i think i think
maybe they're slightly higher level they perhaps have better encapsulations of some things that
you have to do manually with htmx i'm not sure because i haven't really dug into well i think
i think we could get carson to come on we i had some great hallway chats with
several people talking about you know the combination of htmx and alpine and
there's a couple edges there like if you want to go automatic back refill i don't know i took some
notes on it but he has i mean he's a smart guy he's got lots to say so with htmx if your htmx
is outside your alpine component and you take your state and you you pull you pull a fresh
alpine component in that all works fine but if you've got an alpine component inside it there's
a little bit of htmx that you swap out and put into fresh bit alpine can get confused you have
to you have to sort of either use the morph plugin so that alpine knows or you have to go back to
alpine and say hey by the way in it this bit of tree here well i have i wrote it down somewhere
there was there was some tip about with the back button and he was saying you can just turn history
off um so he's got lots of tips he was i was i was sitting in a group of people who've been
using it much more seriously than i have uh so anyways we'll try to get him on but yeah great
talk i think aligns with the ethos of django and i know and i i it's it i mentioned to you i think
it's worth saying so in django land htmx is the hotness like all the top talks the last two years
if you look on youtube uh for django cons htmx is the top one and yet someone walked out i walked
out with someone from that talk and they they turned to me and said i'd never heard of htmx
before so this is the echo chamber right is we're all in line and we're doing this and no i know
to each other and no one in the wider ecosystem's got any idea what's going on
no no exactly so this i'm trying to just get more comfortable with
repeating myself you know say it in the podcast put it in the newsletter put it in a thing
you know i mean give people the chance to cut me off because i hate people telling me something
i've already heard but um you know meet people where they're at it is yeah um and
But now I wanted to ask you, because you gave a talk as well in your AI talk, which we're going to, but you were Ron right after Carson.
It's like Carson Coffee Break Will, right?
Yeah, yeah.
How was that?
Yeah.
Well, so I mentioned in my blog post, so he gave the keynote and everyone was there and then it went two tracks.
So there's an upstairs and a downstairs, which is unavoidable with the venue.
It was maybe the only thing that if I could wave a wand and change the, you know, going up and down the stairs is a little divided.
So but I still had, you know, I'd have the audience. It motivated me to put HTMX in my demo because I was like, oh, this will be. So I was I was quite pleased. And when I present when I submitted the talk, I thought I would just do the version of the DjangoCon Europe when I did, which was Django for data science. But then I was like, oh, Django for AI, because, you know, kind of what's the difference? But then that got me thinking, oh, I have to.
So it's two thirds new. So basically the whole DjangoCon Europe talk where I talk through a lot of the code, I really didn't want to talk through views files, you know, 20 line views files. So it's sort of a two parter on classic machine learning, which was the DjangoCon Europe one talking about how quickly you can train a model.
I use the iris data set get a job lib file and then Django is perfect to deploy that throw some
forms store the data in a database I think more data science people should know that Django is
there for them you could you could clone the repo and vibe code almost any model in there and I
think that would so that would help and then the second part I went on this tangent about LLMs
you know not lecturing people on what they are but just like a little bit and then talking about
how Django can integrate with them because they are meaningfully different, both in terms of
inference costs. So serving them, you know, it's a whole new economic paradigm, right? It's
something I can't get hard numbers on this because they're all private, but it's at least 10 times
more computationally expensive to do, to talk to a chat bot than it is to do a Google search.
And right now they don't monetize, you know, they only monetize around 2%, you know, so I resisted
going into an economics kind of thing on it but it's wild i mean the amount of build out
both to train but even more so to serve these llms is is unprecedented for sure yeah it's the
one thing that really concerns me is the is the massive contrast between the revenue the capex
expenditures and then the revenues and it just seems that the revenues are you know maybe they've
got a dream of how it will come but it just as a sort of you know looking at it from afar i'm like
oh that stinks um well because yeah because it's it was the perfect thing for these big companies
in that you know transformers in 2017 then 2020 the scaling laws which to be fair are not physical
laws of the universe they're just more political economic laws similar to moore's law it wasn't
like a physics thing but it seemed like you just slammed these lm models with as much data as
possible as much compute as possible and um oh shoot brain dead what's the third thing um
data data data compute there's a third one everything comes okay well we can look you know
oh i guess parameters that's sort of the same thing so parameters like knobs you can turn
um and so that's that's like the b the billions of parameters it's probably trillions for some
for gpd5 and stuff but yeah i don't know it's all interesting i mean it's different i think for me i
learned a lot researching the talk and i think most web people aren't ai developers so it's good
for us to have a sense i mean one of the interesting things about parameters is that's
like you when you start you you pick a number of parameters that things you can turn they get you
know more and more generally is better but you can't just put a quadrillion because if you have
too many and you don't have enough data then it just repeats verbatim the training data so that's
why you need more data small models they used to call overfitting yeah well and i mean gpt2
now i'm getting on a rant but gpt2 was was trained on reddit on reddit stuff just like almost on a
laptop um was a reddit post with three three votes or more and so you focused on the inputs and then
the outputs took care of themselves now it's just vacuum up everything and so it's a mess right and
And so what they're doing is they're adding a filter on top of the model to make it available
for public consumption.
But to train that filter, they're using human-led reinforcement learning.
I'm getting that wrong.
But they're getting humans in the global South to review horrific stuff, to put a filter
on top because the inputs are kind of garbage.
So it's all the old colonialism stuff.
But anyways.
Anyway, it's not...
Okay.
So then...
Well, it's not going to end up.
But the cool part, I thought the demo was I wanted to, I'm quite keen on local models.
So Ollama, you can pull in whatever local model you want.
And I rigged up a demo, there's a GitHub repo where you can pull in whatever model you want
and then use server-sent events to have a chatbot that streams the tokens, which is
the key part I wanted.
And yeah, just to show Django as is can do a lot.
Like you don't need async views for it.
don't um you know i also played around with html streaming which is kind of cool but then you would
need an async view in that case you would probably use an async view probably yeah i need to be fair
i need to like research that a little more and but more importantly i used htmx so i had like
an interactive demo uh which i thought was a follow-up with from carson's talk yeah yeah yeah
yeah exactly just one before we move on i just wanted to i thought the you i read up your write
up of your talk i'm interested to watch the the final thing i think the demo is super cool um but
the you had this the preliminary chat where you're kind of placing Django again in a wider context
and you had this nice slide about how the web is not the same as API endpoints and yeah I think
that's like that's really the drum we should be banging right is that yes okay you spin up an API
endpoint you connect it to your IM but the web application has so much more going on for it and
that's our strength yeah and we're not you know Django is not going to be used on the hot path
for inference with vllm which is like your and fast api but yeah you need everything and you can
kind of do it with fast api there's there's authentication but yeah like we're not on this
straight path but everything else you need payments authentication database orm django
sitting right there there's actually there's a euro python talk that i think just came out
where someone talked about combining all of them so yeah so i think it's a real opportunity for
django i think and i i'm trying to learn more about it and think about how we can meet them
where they are because one of the other big points was this new generation of young python ai
developers don't know the world and they and they think it's just an api endpoint and they either
feel trapped or just assume it's that's all there is to it but you know to carl to carson's talk
like withered tech like jango's here for 20 years like we've got a solution maybe not the best
solution we've got a solution to a lot of these problems so i want to do more around into you know
at the end of the day we're going to be calling these lms we're not going to be running them
ourselves but what does that look like you know sometimes it's streaming a lot of times it's not
it's just medical records right just send it over get a response it's feels like it could just be
kind of standard rest api stuff yeah maybe with a bit of waiting involved you were saying that
carson carson was talking about young developers not even knowing what html forms were yeah yeah
right well i i felt i felt a kinship not just because i think we're around the same age because
i was trying to bang some of those drums um yeah and i think and he said and i agree that the onus
is on us with gray hair you know i got i got a little bit to uh you know to try to meet people
where to try to meet people where they're at you know it's not um because again i also going to
these python conferences people would i had another slide about like i was like well why
not Django for your web needs and they're like well Django's slow Django's old and it's hard to
learn and it's hard to know where to start well I'd start with um some great set of books yeah
yeah yeah yeah no no for sure yeah no and maybe some books that you know have examples of of this
in their next editions yeah so yeah so it's an opportunity I think you know it's great to go
these conferences but we also have to remember it's 300 people out of probably 3 million or
something that use django and you know just because we all know what htmx is and we all know
these things we need to speak outward a bit more so hopefully this you know the video version of
our podcast and maybe i'll do some videos to reach people where they are well we don't need to do
that but we want to just make it accessible how people um all right let's move on wait and do you
want to do the the mid-roll hacksoft who's sponsoring do you want to read out i would love
too. Hacksoft is your development partner beyond
code. From custom software development to
consulting, team augmentation, or
opening an office in Bulgaria, they're ready to take your
Django project to the next level.
Yes. And we're very grateful to them to
be sponsors of podcasts, as they've been
in the past. Also the Django newsletter. In general,
just good citizens of the Django community.
Yeah. And they have great site,
great guide on how to do Django,
great Hacksoft style guide, which I think is a wonderful
thing. They've been around for years.
Beyond the sponsorship, I think
Hacksoft is a great team.
Yep, so thanks to them.
All right, now we're going to let you talk.
So Google Summer of Code.
So Carson mentioned he was really excited
about template partials.
Yep.
And we're going to see.
I'm super excited.
So, you know, how can I say?
Like template partials.
So I sat down to start the new project back in the day,
like 4.2 was around,
so early part of 2023
when I stepped down from the fellow role.
And I'd read the essay on the HTMX website
about template fragments,
which I call partials for slightly different reasons.
But they go by this fragments or partials name.
And I was like, we need that.
And there was a couple of options in the ecosystem.
There's one called Django render block, I think.
I can't remember exactly what it's called,
but it had a render block to string function,
which you would call a block.
You'd get a named block from your template.
and you'd get it and you'd render that and you could return that.
But you had to adjust the view flow.
You had to, instead of returning a template response
with just the template name and the context
and then whatever magic Django does to actually render that
behind the scenes for you, you would render the template
and then pass it to an HTTP response and you return that.
And it's quite disruptive to your view logic.
Like the generic views, you're basically rewriting every one.
and that wasn't that wasn't what i wanted um and so i built template django template partials to
slightly different take on that which is how i wanted it and integrated that with the template
loader and i sort of announced it um django con europe in 2023 in edinburgh um and it was
like you know the response was phenomenal and so the cup you know whole lts cycle later we've got
farhan who's come in and done the google summer of code project to merge it into django core
and over the summer he was working hard and some nice tricky issue the template partials have been
working fine for two years no you know no issues at all we had i first released it we had a bit of
feedback change the ipi etc been working perfectly for everybody but that step up into getting into
django it's like oh there's quite a lot of resistance there and enough resistance such
that I'd kind of cracked open a branch
and started off at it a couple of times,
but then gone, oh, I'm too busy.
I haven't got time to do this.
And I think without the Google Summer of Code Project,
it probably would have just sat there indefinitely.
But with the Google Summer of Code Project,
Farhan has brought it up to scratch,
merged it in,
and it will be part of Django 6.0,
which is feature-free tomorrow.
Tomorrow as we record this,
today as we release it.
And it will be, the alpha will be there,
and then the final release will be in december yeah it's exciting so you know fellows don't
have to just retreat to a cave they can you know do what you've done right you said right after
five years you had all these ideas because i remember you just like sort of launched it and
i said wow like that's that's quite a thing and you were like well i just did it in an afternoon
but you've been stewing on it for years forever forever like the neapolitan which is the other
project i released about the same time i'd literally been sat on that for eight years
like as a sort of thing that i would need and so when it came to when it came to oh do you know
what i'm going to have to end up right actually now back in back in business writing fresh
generic views for lots of models no i'm not doing this the old way i'm doing it i'm
putting neapolitan in place and i'm doing um and it's just it's quick cred views is the tagline for
anyone unfamiliar what does neapolitan allows you to it allows you to define your model define your
your crowd view to specify some fields and then all of a sudden you've got the create view the
list view the retrieve view the update view etc when you've talked about it's it's really almost
a matter of flow like where you you start with that and then you customize it instead of having
to build it up and customize as you go so it's just just a different approach but we're you know
we kind of do the same you know like david hennemeyer hansen gave a gave a keynote a couple
weeks ago talking about um crud monkeys and i'm not sure if i love using the word monkeys but
i take his point about we're just kind of doing crud and there's nothing wrong with that and then
there's just tweaks to it and so this this yeah speeds things up it gets inclined yeah
i see um some people who are very into software architecture i'm criticizing people who are
earning six figure salaries, just writing CRUD apps. And it's like, nobody makes a six figure
salary just writing a CRUD app. You get the six figure salary for the bits after you've got the
CRUD app in place. And what I love about Neapolitan is I can bootstrap it in seconds
and I've got the basic CRUD structure in place. And then as I'm experimenting, as I'm evolving
the application, as I'm getting into the details of what makes it a valuable piece of software
rather than something that could be automatically generated, then I can customize and it's got
all the right hooks.
Yeah, it's got the scaffolding.
You get the salary for what comes after the aircraft.
not the carotid cell well and i think even more so with llms you can you know they're great at
boilerplate code for django anyways because it's so well documented and so mature but
yeah it's what next is what matters um csp well let's talk about so django 6.0 there's three
killer features um yeah i'll let you well so the big one i think the big headline feature has to
be um csp content security policy is being merged into core so there's for years it's been this
third-party package uh django csp which has enabled you to set this and csp is like um
it's a defense in depth measure so if you temp if you use um you know the temperate language
correctly and you do all your auto escaping you don't turn that off more or less safe for most
cross-site scripting attacks like it's very hard to smuggle one in but as a defense in depth
measure you csp labors you to say things like only load javascript from the same domain as the
application comes or only from the same domain as the application and this one other specific domain
that i've told you about so if by some accident you you've um unescaped java unescaped script tag
does make it to the page the browser will see the unescaped script tag it will say no this domain
this you know evil.com isn't allowed isn't included in the content security policy as a source for um
scripts so i'm not going to load it so it's kind of a defense in depth measure um it's massively
complicated it's like there's just so much to it and it's nothing you'd want to do on your own
right it's the batteries like you know yeah exactly that it's nothing you want to do on your
own you do not want to be implementing csp protection by yourself and django csp the third
party package has been maintained well for years but there was a period when it wasn't and yeah
so what's what's happening there and for it to be in core i think it's you know you talk about
battery i think it's one of the hard batteries that it's good that django provides and so i think
it's a major feature and i'm quite excited to be using it i i was i was joking on um mast on the
other day about whether it's too early to deploy 6.0 before the feet before even the feature freeze
deploy it to my production environment and it's because i want to move to the um in core csp
protection rather than the third-party package and i don't really want to have to wait till
december to do that so i'm now thinking okay so can i can i release this early well and you're
the you're still the the the lead if not the solo developer on your regular work so yeah you don't
need permission yeah and i can run that i can run django's test suite against you know what a
particular commit on the you know the branch and know that that's as good as a as a release commit
and i can be happy with it so that's not a problem for me so that's the main one i would say then
then the next big feature is i think that the we're going to um merge the um the back end the
interface for django tasks into um django itself so django tasks is this um was this proposal from
jake to merge um or to create um a background task queue for django so you know if you want to send
the classic example is you want to send an email and you so sending an email might take a few
seconds by the time you connect to the server and do all those things so you don't want to do it in
a request you want to take the request put the task to the side and say i'm going to send that
later return the response quickly to the user and then have a worker in the background that can send
off the email or generate the pdf or whatever the background task is that's been in development um
for a cycle now um and the interface bit of it will be merged into django in 6.0 you'll still
to actually use it as a background task worker you'll still need to use a third-party package
where the database back end so the default option will be to store tasks just in your database so
you write um do this task to to your database and then the worker fetches it from the database and
does it that's still a going to be a third-party package you're going to need to install that as
an extra and that's just to give it time to mature and to make sure that it meets it it's tested
widely enough to meet django's stability guarantees um yeah the last thing we need to do is merge it
very quickly and then find that it's flawed in some way that causes problems to existing
deployments nice and that's jake howard just to i know sometimes we just go first name on stuff
so although yeah those are the you got his surname momentarily i look i looked i looked it up sorry
jake while you were talking um yeah so very exciting actually and we should we should mention
also i got a chance to meet jacob walls our new fellow who was at who was there um so you played
a role in that right yeah so i'm on the fellowship working group so we over july this was why this
was the main reason i think why my july was ludicrously busy was that we had over 100 applicants
um which is amazing and it you know of those 100 applicants we had many which were very high
quality and it just goes to show the strength of django and where we're at and you know sometimes
we bring our hands are we okay are we doing no it's it was it was amazing to see the the number
of really high quality applications for the fellow role um and we had to narrow it down
and we had to do interviews i mean you know it was quite a big process but jacob's gonna be amazing
yeah no he's great i got a chance to spend some time with him there and and also natalia beat our
uh second of the three also sarah boyce was there as well and she was during the sprints
she was sort of letting him take the lead and scurry around as i've seen you do for years and
years and years but no he's i mean he's a very very very smart person um so i think it's i think
it's great that we got him so one more big thing i'm going to mention django on the med so there
was talks on this paulo melchiori mentioned this is i know you're excited about this i'm excited
about this what's what's the quick pitch and what do you want to say about it okay so django on the
made is uh django development sprints um in um well this time in palo verde which is my hometown
which is on the mediterranean coast in northeastern spain it's three days to get together and work on
django i mean my wife said the tagline needs to be not as exciting as perhaps it sounds um because
it's because it's geeks in english too right in case that same dry humor um what is it it's yeah
three days to get together and work on work on django basically we're going to um start eight
eight o'clock to about two ish um nice breakfast when you turn out coffee some croissants these
kind of things make sure that you're fired up for the day um three days and then in the afternoon
do a bit of exploring bit of socializing a bit more talking about the ideas you know and evening
meals and all the things like a conference but without the conference bit you know um there's a
nice uh post on the python blog from uh look at who's the um python developer in residence um
saying that uh you know the sprints are the best bit and i'm like yeah no they really are and
that's why you should come to django on the med because it's just um so we're the first day we
want to do a roadmap session um so we're gonna have people we're gonna hopefully we're gonna
have a fellow we're gonna have a couple of board members we're gonna have a couple of steering
council members we've got we've got really the absolute a team of you know some of my all-time
stars are turning up um it's going to be amazing and we hope to drive forward the the roadmap um
sketch out some of the ideas and it's not just like the it's not just like you know if i say to
you one of the top community priorities is modernize contrib.auth right okay well that just
sounds like an absolutely impossible project that we need to get andrew godwin and we need to lock
him in a cave for six months and he'll merge with the kickstarter yeah yeah that's not how it can be
done um we need to have modernized contrib.auth and we need to break it down and spend some time
working on well what does that mean what are the what are the sort of pillars of coming up with a
serious plan for um modernizing country ball to or say as an example or you know um adding typing
to django do we want to add type hints to django okay if we do what does that mean what are the
approachable routes into that what would an experiment look like what would all of these
questions which until they until they're cashed out a little bit we we can't really make progress
which is why you know modernized country of all it's sort of sat there on the on the back burner
for a while but it's not really made progress and if we can then the third step the first step is
identify the core roadmap questions the second step is to break them down into you know something
a bit more addressable and then the third step is if you've got those identified tasks then you can
put out the call for volunteers and so be years and years we've had this problem where volunteers
would turn up they'd be like i want to help and it'd be like well we haven't got anything to point
but if we've if we've had a bit of time to flesh out some of the the core roadmap ideas the things
that the community would like to work on then we can say look do you know what they're here
are half a dozen identified things which are addressable to a new contributor and it's not
that we don't have volunteers it's that we don't have enough guidance for volunteers yeah yeah so
that and then we're going to have a birthday party i've got i'm hoping to organize a special birthday
party treat for Django and then more time to just work i've got i'm gonna get you know um person a
and person b in a room i'm gonna lock them up together with loads of coffee and i'm gonna say
you're not allowed out until this has happened right and the idea is right to have it twice a
year right so in yes you are in pescara in italy where palo is based yeah exactly so the first one
just happens to be in palo verde then we're going to do it next year in pescara and you know maybe
twice a year would be good um we've got to think about how it clashes with um agenda for say
jangok on europe and things like that so we need to you need to consider but yes that's the idea
is to do it you know one in palo verde one in pescada and you know maybe we can go somewhere
else if you know cyprus i know some member of the jang community lives in malta we could have
jang on the med in malta i mean i'm going to be in cyprus in three weeks two three weeks so you
could sound out environment environment there look look the last time we did a roadmap workshop um
tebow um colas is dsf present he organized one and it was a couple of years ago and it's on the
forum you can search for it perhaps we can put the link but the number two um impactful item that was
that came out was to do active developer sprints for you know dangle's active developers active
contributors and with that's what we're doing we're putting together the active developer
sprints and i want to say to people if you're a new contributor if you're like if you'd like to
get involved you're you're welcome to you don't have to be an established contributor i'm excited
because some of my superheroes are coming to jangle the met but i'm also i want you know you
to come if you're if you're like you know what i i want to get involved too because the other goal
is to get the new contributors to come
and help them get onboarded
and joined with the experienced contributors.
And so by the time we've left,
those people are up and running as well.
And that's in October, 7th to the 9th.
Okay, we'll put the link in the show notes.
Yeah, Thibaut has, I just pulled up,
he put, it's on the forum,
but he also wrote a really nice blog post
in January 2024 about everything.
And yes, Active Developer Sprints was number two.
Yeah, so we're actually doing that.
and and yeah yeah yeah the biggest thing is like okay let's if we can do it once then we can do it
you know time and time again and the exact details don't matter so much as is it possible is it
feasible and yes it is and we're doing it it's kind of yeah and it's not a new idea right i think
paulo with plone i mean other communities have and do do these things because they have the same
problem of you know the sprints at the end is helpful but it's not quite enough time not
everyone's there you know three days but also three days coming in with ideas as opposed to
like at the end of a conference you know i i've seen it takes you know the thursday is helping
people get set up and people do stuff and then friday sometimes there's a great burst but usually
people are it's a little more so what's that yeah like in my case like i left you know a lot of
people leave on fridays so um yeah yeah so it's i'm really excited about um uh jang on red and
paris j is it's pretty nice place you know i'm gonna come i know you've been you've been to my
hood in brookline mass which is pretty nice but in a different way yeah lovely i mean i i like
that whole red brick thing and it was autumn when i came and the sun was shining so it was yeah yeah
yeah well no yes i'm excited about django on the met um all right so we we have to quickly
i'm not gonna move on we skipped over zagsy's keynote on on the two yeah yeah so i'll tell you
yeah so he so actually i flew out he's based in boston um he gave the tuesday keynote and we flew
that together and he sort of previewed it for me and i was um you know mentioning his one of his
ideas was bring jango's framework into core and i think i have a little scar tissue from being on
the board around that so i was a little bit like yeah we should do something about apis i don't
know if that's going to work but he got a really great response and there was a huge long forum
post um and he had a bunch of ideas so i'll toss it over to you carlton so um the general idea i
think was we should django should have an api story and he was advocating for that being primarily drf
and i know that second part is not quite what you would say you know i absolutely agree with him
about the first bit like so the forum post was django needs an api story or something like that
absolutely and his option three was document the the options we've got which is drf and probably
django ninja are the two oh for sure ninja for sure yes we need a an api story absolutely and
yes we should document the options and yes it shouldn't be the case that you discover django
and you can't find on the website easily you know what you should do if you just want to you know
arrest endpoint how do i do that that shouldn't be a mystery you shouldn't have absolutely we
should document all that but had we merged drf into django core a decade ago or even five years
ago it might it might have been a good idea but now things have moved on like drf is dated it's
the last generation and i i i understand people are using it but it's like
if we just merged that into core and said this is the django solution i think that would be
us saying we give up on innovation we we we we quit i i i think there are demonstrate i mean
django ninja shows that much more is possible and yet i don't think django ninja is the final
solution i think there's a number of reasons why it's not perfect but it it it was fresh
and it it demonstrates just absolutely clearly um the the other frameworks out there the fast apis
the light stars
using Pydantic
using typing
which FastFGI
does both
I mean whether
it's Pydantic
I use caters
so if I want to
serialize
so what's the
main problem
with DRF
the main problem
with DRF
is that serializers
are last generation
they're slow
because basically
they loop through
the fields
that they're given
and they loop
through the object
and they do
the getter
whereas if you
take caters
what it does
is the first time
it comes through
to your serializer
it kind of
generates code
which is
as good as if you wrote it by hand it's as optimized so it's kind of native speed and it's
just much much much much faster than um the rest framework serializers that we we know and love and
the django forms the same sort of ideas but forms aren't generally used in performance critical
ways whereas people with apis they really often are needing fast serialization because they're
doing thousands of records you know over the wire as fast as the api can respond so it kind of
matters um and so whether it's pydantic whether it's caters whether it's message spec there's
there's the whole my point is that there is a whole collection of next generation solutions
out there which django if we you know one of the goals of the dsf is to push the state of the art
forward well we don't do that by merging a last generation solution into django yeah well and i
think this is why the the conferences and the jango on the med is important because it's easy
for an idea is brought up there's a discussion on the forum and it can feel like people are
blocking stuff because they have a different of opinion on how to do it but they're not saying
we shouldn't do it right and so this is hopefully getting people in a room right so because nobody
wants to be a blocker on this stuff but it's you know the implementation details matter right and
absolutely like people there are developers out there who literally hate django because of drf
right now i know that assumes they know about drf that's another whole separate
how many people there are people who are like i quit django because of drf
yeah because of the way the serializers are and all of it and look so serializers yes drf
maybe modern serializers yes drf is wonderful and i spent a lot of time working on it we should say
you you have been and i think still are a maintainer on it for a long time now still a
maintainer on it i mean i i pop my head in every so often if i'm needed but basically i've moved
away from it now but i built an entire career around drf before i was the general fellow and
i built um web applications for you know some of the biggest companies in the world using drf and
it was a wonderful thing and i learned so much from it but it is out of that and there is no
question to that there is no question of that well and it'd be great if the django website had
something discussing you know the different approaches i mean my takeaway like i was talking
to a number of people there's a working group on the website you know i think if i had a magic wand
the two things i would do is well executive director which people agree with this um the
board actually discussed they've done so this is one of the board has done a lot of work around
this and something fell through that they spent a lot of time on and that's something worth
mentioning because when you're on a board you know they spent hours and hours and hours and hours
and then it's just for reasons they can discuss like not nothing bad it didn't it didn't happen
and that can feel discouraging but it's all important because it gets us close like we need
one we'll find the right person we'll find the timing you know but that is the kind of stuff that
i hope the board and i think and they're doing a much better job than when i was on it talk about
the work that they do because it's thankless work it's important work um so executive director and
that was raised numerous times um the second is i would and i think i'm even gonna do this i this i
think i told you the idea so the home page right like we can't change everything i was like what
about a third-party package home page right like i could when i have a moment and i'm truly
procrastinating i'll i'll vibe code um i would like four things on the home page well what would
I want to look modern we all agree it doesn't look modern you know if you look at media js
you look at view js those look they have colors you know more modern color color well yeah they
also they also have sponsors boom on the page because you know that's part of the executive
director getting the money um but then the four things we need is we need and maybe even just
ugly boxes somewhere we need api and just links to like an api story crm which django cms wagtail
like we have fantastic story there's other ones those are the two big ones um i would like to see
a hello world tutorial on there you know not just polls and then ai and maybe it just links to a
page where it talks about how you can use django where it's appropriate but just an ai story i
think you can't be a web framework in 2025 without an ai story and i think it's important to say
the flip side of that ai story is the async story as well like people people think oh django can't
do async there was a um a post recently about um why isn't async io more popular than it is and
like the sort of headline bit was oh django's async is underdeveloped it's like it's really
not the only bit left is the is the cursors to the to the actual orm right the the rest of it
all works so if you want to do wiring up to an llm async views they're wonderful and gonna work
perfectly for you but that's not the narrative that's out there in the ecosystem people are like
oh no, Django is async.
Also, you don't need async for everything.
Only very specific use cases.
It is sort of interesting
that I think that was always the issue
with WebSockets with 2A
and async was a great technology,
but how common was the use case?
And LLMs are a use case
where some of these things,
that's part of the thing.
Async matters when you are fast API
and you're in front of an inference engine.
it matters if it's going to wait so if you want to connect so if i if i got a worker that i want
to make a call to a remote server and i'm going to have to wait for that server or it might it
either stream back to me or i'll have to wait a long time to for it to return its response and
then return i want async because i want to be able to wait for that whilst i'm handling other
requests on you know while that's happening yeah so anyways i'll try to wire something up no no
you do that do that do that i mean we were trying to do a little bit with that with the third party
with the ecosystem page the steering the new steering oh yeah and we should mention there's
i'll link to it like it's a fantastic page it's very in-depth it's just completely buried you know
no one can find it um you know that's a separate thing people i mean people are working on this
right search and you know have search have the search bar on the home page which right now we
don't it's in the docs which you have to click to so i mean i remember when i was a fellow and we
were trying to do um season of docs which and we were trying to restructure the page and i was
there we just weren't able to get very much achieved we got some things achieved but we
weren't able to get very much achieved and i think the website really does need a you know well and
i still when i was on the board would google for pages because i couldn't find them
on the site i've literally opened the django repo to find where the source code is in order to find
the correct url to go to the website anyway let's let's move on all right let's wrap it up so we
wanted to do um two things i think so we want to mention a new thing we're going to mention some
projects that we're excited about um so nano django richard terry gave i believe i i missed it so i
don't know if it's a talk or a lightning talk um but this there's a lot of enthusiasm around this
around just a lightweight django and you know making it not so scary for newcomers i need to
go see his his talk i missed it do you have anything to he's got a new site and he's got a
little playground on so i think yeah nano django.dev will link to it i think it must use um one of
these things that brings python into the browser to run run your django application in the browser
it's all very cool um and he's doing a great job and i think you know um if you've got a big
application and you there's an endpoint which you can't you just can't take down while you
while you you know while you update the rest of it you can spin that endpoint out into a little
nano nano django side point and that end point can keep serving while you update the rest of
the site you know it's not it's not just for the hello world getting getting started examples but
he's doing a really good job pushing that forward and adding the sort of dotting the i's and crossing
the t's on these these micro django examples that we've been playing with for years and years
yes do you want to mention the other two yeah okay so my my really exciting one adam hill
um uh dj light which is um a really simple django application to you just add it to your installed
apps and it tweaks your setting there might be one or two activities but it tweaks your settings
to give you the right um setting for sq light in production um yeah yeah there are talks on this
and there's blog posts um him and anzi um whose surname again i can't can't remember they've been
working on this for a while and there is now and as they have in the rails community a really um
it's really plausible that you can serve at least your your single user blog application
and small hobby applications using sqlite in production rescue line production um i would i
put my would i put my you know my business oh no i'm still going to use postgres i think but
read heavy it's great yeah read heavy um and sqlite still doesn't allow concurrent rights
but you can you can teach it to not error and just wait for the other right to finish and then do
your right and that's good enough for almost all you and it's also it's i mean i'm pretty sure i
believe like you know cell phones like it's it's the default in any number of things like it's not
a wild idea in the world by you know order of magnitude because it's on every cell phone every
car every fridge every you know every everything you you know these vapes the youngsters have this
oh god yeah but anyway the reason why i like dj light is it wraps you'd be up until this you had
to go and search and you had to read the blog posts and you had to extract exactly what was
the right configuration was now you can just pip install dj light follow the follow the two-step
setup and you're done yeah are you uv ad but that's a separate discussion yeah let's not start
we've already come on already and do you want to mention um jacob's uh reef's django form set
yeah i love that so the it's what it is is a set of really uh rich uh html components which the
javascript all built in and all the rest that give you all the whole gallery of um form widgets that
are more advanced more elaborate and you can you know and it's it's all modern and you can include
just the the javascript for the for the widgets you need to use and keep your page weights light
and all the rest you don't have to build in the whole library which is very big the intro um post
the intro bit of the docs where it talks through the quick start it's it's it's a bit dry and it
doesn't really motivate motivate it but it's a wonderful library and what i recommend is
don't skip that bit come back to that when you've go just go and install it and download a demo and
build like one or two of these widgets in in action see how it is so give it half an hour
that rather than reading the docs per se and then come back to the explanation in the docs once
you've convinced yourself actually this is quite cool because it's a wonderful project and he's
been putting effort into that for years and it's immensely high quality and it's i think probably
for me the most underrated project in the django ecosystem wow that's high praise yeah no it's
wonderful it's really really good so anyway yeah well he was he was at he was at in chicago too i
got i got to spend some time with him which was great yeah all right so last thing um we're going
to try book recommendation so i've been battering i've been so my personal side i've been doing
trying to do some book reviews um and i would i've been talking your ear off about empire of
ai so i've been reading all the i'm waiting for your review i'm quite yeah yeah i know
the cliff notes no it's really really good she's um karen how ho sorry say her name wrong um
has been giving great video interviews and it really just ties together a lot of the
um yeah the technical the cultural everything else about ai in a way that i haven't seen even
though i've read a lot of these books so i highly recommend it okay and you have you have one that's
no yeah i'm not the one i sent the photo about earlier i'm going to mention uh refactoring to
rust which is um from manning uh it's a great one the first chapter is why refactor to rust and
clearly so you can sit with the cool kids at the lunch table right what else but yeah um it has a
an overview of rust which is a sort of second chapter and there's no way on earth you could
learn rust from that chapter like it sort of implies you could but you couldn't but if you
already have been dabbled with rust a little bit it's quite a good chapter to lock in some of the
concepts that you might have come across in other books but it's not a learn rust in from that
chapter i promise you but it's got chapters on integrating with c integrating with blah blah blah
um but the python chapters are really solid they show you how to um embed python in rust and rust
in python and they show you about benchmarking which is just key right it's like am i i'm making
all these changes i'm using this tech am i making anything better actually talks about that and
shows how you might you know you might demonstrate whether you're making things better or not which
is sorely missing in my experience so anyway i'm i read some of that over the summer and i was like
yes, that's a quality refactoring tool.
Nice.
Well, I think that's it.
We're going to do our outro.
Again, thank you to Hacksoft for sponsoring.
Your development partner, BeyondCode.
More about their links in the description.
And give us feedback, everyone.
Leave a comment on YouTube.
Let us know separately.
But we're going to try doing videos all fall.
We're going to have some guests,
but also go topic-driven.
And the next week,
we'll talk about the Django survey
and the future of Django.
Okay.
All right.
I'll see everyone next time.
Bye-bye.
Bye-bye.