Django Chat

Django on the Med - Paolo Melchiorre

Episode Summary

Paolo and Carlton are just returned from the inaugural Django on the Med event and here to discuss how it came to pass, the code improvements from just three days, and plans for the future.

Episode Notes

πŸ”— Links

πŸ“¦ Projects

πŸ“š Books

πŸŽ₯ YouTube

Sponsor

This episode was brought to you by HackSoft, 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!

Episode Transcription

Will (00:00)
Hi, welcome to another episode of Django Chat. I'm Will Vincent here with Carlton Gibson. Hey Carlton. And we're very pleased to have on our friend, Paolo Melchiorre. Welcome, Paolo.

Carlton Gibson (00:05)
Hello, Will.

Paolo (00:12)
Hi everyone As usual it's a pleasure to speak with you all.

Carlton Gibson (00:13)
No.

Will (00:16)
Yes, let me give, let me give you a quick bio for those who don't know. So you don't have to, but you are Django board member, Python software foundation fellow, prolific contributor to the Django code base, the Django website, prolific selfie taker at conferences where you speak. And you both just got back from Django on the Med, which is the topic of discussion for today. So I'm super happy about this episode because I'd hopefully I won't have to speak as much, but let me start with a question, which is.

Paolo (00:31)
Yes.

Yeah, yeah, yeah. Everything is perfect.

Will (00:45)
How did Django on the Med come about? Because it was originally in your head, Paolo.

Paolo (00:49)
Yeah, I remember sharing with you and Carlton in San Diego for the first time. We had this great conference in San Diego after a long period of non-in-person conference for the pandemic. So it was great to meet you all for the first time in DjangoCon US for me. But at the same time was a long trip for me from Pescara to San Diego and very tiring.

Will (01:13)
Yeah.

Paolo (01:15)
So when we met the first day of sprint with, I remember Simon, remember Mariusz, you on the beach in the morning to have a few times for us. I realized that we needed more to this time as a team, as a small group of people to hang out together, to network a bit, to chat about our life and at the same time to sprint.

Will (01:21)
you you

Paolo (01:42)
And based on the history

I found in the past in another Python community to organize small sprints to have half time on working on something specific and half time to being together. I remember I proposed this idea and from that moment I tried to pause every opportunity. And at the end, Karpton did the...

Will (02:04)
Yes. Thank

Paolo (02:09)
did a good move and forced me in some way to transform this idea in reality with the help of course and other people. it took three years, but at the end we did it.

Carlton Gibson (02:13)
you

Yeah, I mean, the trick what there was that it was proposed, you proposed it, you did a blog post, there was a forum discussion, everyone's like, yeah, this is a great idea. And then of course, nothing happens. And another year goes past and it still hasn't happened. We keep talking about it. And so DjangoCon Europe this year, right? And at the sprints in Dublin, we sat down and schemed it. You posted somewhere, you posted a picture, some notebook I picked up at the conference where I was making notes, we sort of signed in blood that we would.

Will (02:32)
Okay.

Carlton Gibson (02:48)
we

would do the event in Palafrugell

Paolo (02:50)
Yeah.

Will (02:53)
You

Paolo (02:53)
Yeah,

the opportunity was for us to be in Dublin and realizing that we need to create this event and Cartoon means say, okay, let's find a moment in the year and a place where we can meet at least the two of us, we say. So if other people will join, good. Otherwise we spent together a few days and enjoy the time together. But at the end there were more than two of us.

Will (03:08)
. .

Carlton Gibson (03:23)
Yeah, yeah, the danger was it was just you and me at a table, right? We sat in a cafe, the two of us, but we had, in the end, had 14 people come, which was really good for like a first, a first go, because it could have been, it could have been just us, and it could have been say, you know, four or

Paolo (03:24)
Better.

Carlton Gibson (03:38)
five or six people, we could have got a house, you know, just one house group. But then, you know, by the time we got 14, we had like three tables worth, right? That were sprinting together.

Will (03:50)
Well, I just have to mention, so Paolo, you wrote up a very detailed blog post that we'll link to with all the photos of everyone together all the days. So we will link to that, but it was well documented.

Paolo (04:04)
The trick was to everyday talk, took some picture and post on Macedon. Also, Cartoon did a lot of them and the other. So I tried to aggregate all these posts together and with some automatic script to create the blog post.

Carlton Gibson (04:05)
you

Will (04:10)
Mm-hmm. yes.

Carlton Gibson (04:22)
So this is the Django and the Med hashtag that you can follow along folks.

Will (04:22)
interesting.

Yes, so you can feel. there's, just while we're showing stuff, I'll just show it all. So this was the website that went up about the event and then the forum to subscribe and.

Paolo (04:27)
Exactly.

Carlton Gibson (04:35)
And so my post event, my post sprint, my post Django on the work home, post Django on the med homework is to, you know, flesh out the site, move some of the Palo Vergele details to a separate page. We've got a value map of some of the things that were achieved or not, you know, so that we can demonstrate the value of this. mean, so let me phrase it as a question, Palo, for me, we've really demonstrated the value of it. There's some amazing things we're...

were done in the short amount of time by the small group of people. And I think now we can go from, look, isn't this a nice idea to look and we did it and it's valuable and can we now get behind it as a community.

Will (05:13)
Let me just link. We'll also put it in the notes, but there were...

five different PRs opened, one closed, ⁓ Yeah, so it wasn't all just drinking in the sun.

Carlton Gibson (05:21)
One's already bled, I think, yeah.

Paolo (05:26)
Yeah, more than that, ⁓ some people contributed in some documentation. I was working on a script to create the metrics of the future flag for the ORM So we are putting together a document that I think we'll share in the next weeks. So not only the issue on GitHub, but we discussed more things than that. We created more value than...

what you can only see in GitHub. the better part, I think, is the connection that we created each other. So we came back to having more connection because new people show up and people that you met only online for long time, you spent quality time together and it was very, very interesting to do.

Will (06:18)
Yeah, I was jealous. was actually on the med as well in Cyprus for a

Paolo (06:22)
Yeah.

Will (06:23)
company event but

I was following it every day and actually we can mention so Mark Smith one of the people who was there just joined JetBrains. Actually I don't know if it's I don't think PyCharm but so now he's a colleague of mine so so ⁓

Paolo (06:36)
Yeah.

Carlton Gibson (06:38)
So the two

of you can organize an edition of Django on the Med in Cyprus.

Will (06:43)
Yeah,

I'm open to it. Yeah, we were in Pathpost. So the entire PyCharm team. kind of same thing you were saying, like a lot of these people I work with, but I hadn't met in person. And there's a similar mix of some fun stuff, some work, but nothing replaces in-person. So it's important to have.

Carlton Gibson (06:45)
I thought that

I think as well, was one thing that worked really well was that we did sprinting in the morning from 8am, which was early, had breakfast, coffee, croissants, know, stuff to get us going. And then till two o'clock when we broke for lunch, and then people had the afternoon to explore, could, you know, walk in the woods or go to the beach or walk along the Camille de Ronde, which is the coastal paths we have here. I think people seem to like it.

Paolo (07:27)
Yeah. So I was able to go and swim in the sea, which was great. I didn't do a long swim, but I saw lot of the coast, the fish, other people like Mariusz. But for multiple runs around, people have a drink, people enjoy the beach or the Parasol Girol de la Town. So everyone did what they wanted to do to relax and to compress after the...

Will (07:29)
Amen.

Paolo (07:57)
to work in the morning.

Carlton Gibson (07:58)
Thank

Will (07:59)
Right. There was someone, think it was on Fossil. On some,

Mariusz documented his runs and one of them was with Simon, but someone called him the Palo of runs at Django events. So that's high praise.

Paolo (08:10)
Yeah, I

saw Eric posted that, you know, Mariusz is the official selfie run.

Will (08:18)
Yeah, selfie runner. But I want to ask, so Django and the med, the idea was that this is what, twice a year, right? So it's been in Spain, but then it'll also be in Pescara. Is that still, still the? Yeah. Well, because, and that, that mug comes from when you went to PyCon Italia, Carlton, right? Was that? Oh, well, you also went to, you also went there.

Carlton Gibson (08:29)
We're going to move it to Bascala next year.

Paolo (08:29)
Yeah. Yeah.

Carlton Gibson (08:38)
No, I'll have got it for me as a gift for this time.

Paolo (08:41)
I ⁓

was specifically thinking of this moment when Carlton was able to show the Pescara mug in front of the camera. I'm joking. Yes, this is the plan to organize twice a year and in a period that is not high season. So this year, weather has been marvelous in Palafrugell. We were able to...

run, to swim in the sea, but it was not so crowded. At the same time was sunny, but the prices of everything were not high, the flights and the hotel rooms. And we want to try to do the same things in Pescara. More or less the weather is similar. We are still in the Mediterranean, specifically in the Arctic Sea.

The original idea was to organize in April, but we'll see if we organize in the beginning of May. We'll let you update on that. The goal is the same, to organize in a area not so touristic, but still a great area to explore in a period that is not so high season to let everyone not spend a lot of money to reach us and to be there together and try to explore different.

area in the Mediterranean. But we are open also to other locations like Cyprus or other special edition. Yeah. Yeah.

Will (10:07)
I

Carlton Gibson (10:08)
Malta, Joe's based in Malta. Yeah, I mean there's plenty of people around the mage right, the theme is very

simple. know if you're in the Jenga community and you can see the mage raining not too far from your house then you know let us know.

Paolo (10:19)
Yeah.

Will (10:20)
think counts. Yeah, I mean, France would be nice if somebody in France wants to.

And Paulo, I remember back three years ago when you first were talking about this, you mentioned that the plone community that you worked in had something similar. think it even, said, you know, plone had these events that has, I think you even asked me, has Django ever had them? And I don't think so. Is that, so is that the initial, what, or one of the inspirations is.

Paolo (10:40)
Yeah.

Here, the Plon community has been the first I've ever been. was the Python community I've ever been. And they used to organize a conference, but also sprinted in this way. If I remember correctly, the first one was in Sorrento. Because after organizing a conference in Naples, organized nearby in Sorrento, in a hotel, in a very similar way we did in Palafruccio.

off-season, but still good weather and the sea. But they also organize another one in Eastbrook during the winter. They go skiing after. But other community organize very similar events like that. And then there is also the core Python developer that organize. Usually, this is the last time they organize, think, in...

Will (11:25)
yeah. Yeah.

Paolo (11:43)
in September and in Cambridge. Exactly, exactly. So they do very similar things. I asked a lot of people but nobody remembers something like that. Of course we had sprints after conference but this type of sprints are totally different.

Carlton Gibson (11:45)
It was in Cambridge, yeah, it was at the Arm offices.

Will (12:02)
Yeah, and maybe that's a question for, or just to expand upon. So there are typically there are sprints for two days after Django cons, but it feels to me again, not having been at Django in the med, like those are, people are a little bit tired and it's not quite long enough. And people sometimes come for, they stay for one day, but not two. So, um, does that match your experiences? I know Carlton, you usually were, you were fellowing, so you were running around, uh, helping everyone.

Carlton Gibson (12:28)
Yeah.

Yeah. I mean, when I was failing, I tried to run the getting started contributing thing because you Django con you would have a number of new contributors turn up each time and they all need, you know, needed some guidance. Otherwise they come they're giving their time but they were they'd be wasting it. Django on the med we had, I think five people who were new contributors. They mean, they had some awareness they had some they weren't totally new contributors, but they they

self-identified as new contributors and we managed to get all of them going on good projects, was super, including an 18 year old ticket on the cash framework, which I would dearly love to see revolve this result. There's an open PR for that, which we

Will (13:12)
yes, let me.

Carlton Gibson (13:13)
hope to get in. And some things about speeding up. Yeah, that one, that one there at the top there.

Will (13:14)
this yeah

it's loading with my slow American internet here we go yeah

Carlton Gibson (13:22)
Um,

but you know, we working on that over a couple of days and, um, you know, to, see a new contributor come in and pick up an 18 year old ticket, it's got a ticket number of something like 5,000, five and half down. That's really low. know, anything under 10,000 is rare these days. Right. Um, and then there was work on speeding up the static files, the collection and things that will make really big differences. And these are from new contributors, right? These are from people that haven't.

Will (13:38)
Yeah.

Carlton Gibson (13:51)
aren't established, that aren't, you know, known within the community already. And so that was phenomenal for me. But yeah, I think you're right. The end of a Django con, it's often you stay for the first day and then people start flying out. It's not enough time to sit down and get a dedicated piece of work done. Whereas in three days, we had, you know, really good amount of time. mean, know, Mariusz has taken on implementing

native DB native cascade. So when you've got on the on delete clause, instead of having it done in Python, so it collects all the objects and walks the tree backwards, you'll be able to use the database constraints there, which for years has been one of those performance gotchas when you start scaling up your project and you know, you have to delete a whole tree of objects and you've got 1000s of objects being deleted all in memory. That's going to be a massive optimization for a lot of people.

And Mariusz said quite openly, there's no way he could have got that done without being at Django on the Med, where, know, Simon Charette was there, Lily was there, Jacob Balls, the new fellow was there, and those, the four of them together working on the ORM, you know, they're all ORM specialists, and to have the four of them in the room

Will (14:58)
sorry, I went the wrong... Yeah.

Carlton Gibson (15:01)
four of them there with a whiteboard doing work that just literally isn't possible to get done online.

Paolo (15:07)
Yeah, I remember for the first time being in the sprint of DjangoCon Europe in 2017 in Florence has been my first time. So at that time was very great for me because I only was an attendant of the conference. I had no responsibility or talk to deliver. So for me was great.

went there full of energy and it was great to speak with everyone. share every, in every talk this image with me, Marcus, I'm working my first issue. Then I realized after conference by conference how different can be the same event, the sprint, because when I went in other sprints when I was

Carlton Gibson (15:39)
Right.

Paolo (15:51)
was to deliver a talk, I found out myself at the end of the conference very tired. And I

Carlton Gibson (15:58)
Yeah.

Will (15:59)
Yeah.

Paolo (16:01)
conference. I usually

try to help organizing Spikon Italia and other conference.

In the case it's less energy you have at the end of it. So it depends from what role you have in the conference. Having the sprint at the end can be something that you can enjoy or you can put a lot of energy or not. So the idea for this type of event is to don't have to have a lot of responsibility, create a talk or other things, maintain the event,

Will (16:19)
Okay.

Paolo (16:30)
the less structure that's possible. So...

Carlton Gibson (16:34)
Okay.

Paolo (16:34)
can enjoy. Carlton did a lot of job finding for breakfast and other things so he worked there but I hope it was not too much for him to

do and he was able to enjoy the three days.

Carlton Gibson (16:49)
Yeah, no, it was fantastic. It was fantastic. Yes, there's a lot of work organizing things. And what was interesting was because it was just you and I doing it at small scale, there's lots of things we couldn't do, you know, we knew we couldn't do them beforehand. So that took the pressure off in a way it's like, give yourself permission to do it in a small scale, and then prove that it works. And then we can, you know, get more people on board to try and do more in the future. But yeah, I mean, so I was working on what I've nicknamed the fast Django project.

Will (17:15)
Yeah.

Carlton Gibson (17:16)
You know, it's just, it's just a

bent, you know, about benchmarking Django is came up in the roadmap. So in the first morning, we had held a road mapping session where we, you know, we went through various things and we'll do a write-up of that and the findings that we had, but it was a really great session and that the conversations again in the room, which just don't work the same on the forum or on the, you know, on the GitHub issues. just, there's an understanding that you can reach between people that sometimes gets missed in those, those written online environments.

Will (17:18)
Yes. Okay.

Carlton Gibson (17:44)
But coming out of that, there was this talk about, you know, can we benchmark Django? Can we profile it? Can we improve the forms? Okay. So I didn't manage to get much actual coding done for that, but I did manage to get a Google doc worked out with an outline of things that I'm and then come back to and work on and more. can open up to, you know, contribute. I can say, look, here's an outline of work that needs to be done. Can we, know, anyone fancy putting this bit together? Anyone fancy putting that bit together? And hopefully then we can get some. ⁓

Will (17:48)
you you

Carlton Gibson (18:12)
some speed

momentum for that, but I did have just enough time and energy to get that.

Will (18:16)
Well, there were some interesting, I mean, not benchmarks, but I mean, there's the Nano Django project, but then I'm blanking on the name of it. the ⁓ person you worked with on template Google Summer Code, he's got a project. Maybe he two projects. What is it?

Paolo (18:17)
Yeah.

Carlton Gibson (18:27)
would you so

We've got two

projects. So one he did a thing called, I think it's called Django rapid, which is just a kind of example of a rest view layer. We're using what's called message spec serializers. And then he profiled that against fast API and showed that, within, you're getting comparable performance already with Django using modern serialization techniques, but compared to say fast API. And that's a nice benchmark because we always hear this, this

story that Django slow, Django slow, Django slow. No, Django is not slow. you, you know, lot of the benchmarks are comparing say async to sync and they're not running enough workers to really exercise the CPUs on sync because you've got blocking operations. So, you know, you, that thread is just sat there idle. So you have multiple workers in order to get good throughput on a sync deployment and things like that. the problems like that. And also, you know, a lot of this is from a few years ago.

That's Django Bolt, second one. Lots of it from a few years ago where Django wasn't as fast. And what we need to show is, look, this is what Django was doing. This is what it's doing now. This is what you're capable of. That Django Bolt project there is a whole other exciting thing again. So that is using a Rust front end in ⁓ front of Django. So why has Python historically gone slow when you've got this GIL and the whole excitement? One of the exciting things about Python 3.14 coming out is the

Will (19:28)
Whoops, I'll go back to it.

Carlton Gibson (19:57)
the free threaded Python core, try and say that with a lisp, which will remove the the gills so that you have to have proper concurrency with threads. Whereas previously we haven't had that. Now what the Django ball project there is using Rust threads, which are proper OS threads not bound by the gill to run each separate Python handler. And he's getting results like, what does he say they're achieving 60,000 plus requests per second.

Will (19:59)
Yeah. Yeah.

Carlton Gibson (20:25)
which

is just lightning fast. mean, that's, that's crazy. No, absolutely. And there's no reason why they couldn't do the same trick, right? But what you, what

Will (20:28)
Faster than other frameworks that we know and love too, I think.

Carlton Gibson (20:36)
It's what I think it's kind of a trick, right? Rust is much faster than Python. Why is Rust much faster than Python? Well, a slower level code, it's compiled down code, but also you haven't got these guild problems and whatnot. Well, if you take, if you use rust to take the guild problem out of it, you can make Python go quickly. You've always been able to do that, but what Farhan is doing is demonstrating this. And hopefully with that and with some nice benchmarks and some blog posts and other such things, put pulling all of these, these,

all of this work together, we can help change this narrative that we have in the community that somehow Jan goes slow when really it's not.

Will (21:12)
Right.

Paolo (21:14)
Yeah.

Will (21:14)
I

mean, benchmarks, right? If it's not measured, it sort of doesn't count in a way. I mean, there's the same thing going on with LLMs, right? Like with what is, we were discussing with Jeff Tripla. I think that episode comes out after this, you know, 42 % or something of the SWE verified is just Django tests. And so yeah, it's like, we all love a number, but it's like, where did that number come from?

Carlton Gibson (21:18)
or Facebook.

Paolo (21:30)
Thank you.

Carlton Gibson (21:33)
Yeah.

And yeah, and Jacob Walls was joking about when we were discussing this about doing a blog post about, oh, Django is so slow. And then getting some ORM stuff, which might be costly, and then just tweaking and going, oh, actually, if I did this, then it comes out of this. Oh, yeah. what it comes out as is lightning fast and more than fast enough for any service level requirement you might actually have in the real world.

Paolo (22:00)
Yeah, in the web field, speaking about this benchmark, sometimes it's not correct at all. I remember a very great talk of Antonio Cuny, a core Python developer at EuroPython. was demonstrating how Python is slow for central things, but in a way that it doesn't matter, for example, in the web content, because

Will (22:01)
Paula, did you?

Paolo (22:24)
when you have to interact with other services, services like your cache, your database, the things that matter is not how the language is fast or not, because more the time you were waiting for others to give you content. The great things we saw during the jungle on demand was to see two great gurus of the RM, like Simon and Maris, on trying to...

Carlton Gibson (22:38)
Yeah.

Paolo (22:50)
find a way to improve. Marius was working to improve and speed up the delete phase on the DB. So the more we work on that topic, think the more the work system will be faster. And another interesting thing is the asynchronous connector in the DB. is another great pull request that is still waiting for B completed and merged.

Carlton Gibson (23:04)
you

Will (23:06)
Okay. .

Paolo (23:14)
And the more we know about this topic, the more we can improve. what I tried to explain in an article I wrote just before the

Django on the Met to explain that we need to measure what feature we have and what number we can improve. The more features we have for all the database, the better will be the experience for everyone with Django and the feeling that Django per se is not slow.

Will (23:25)
I gotcha. I was going to mention it. Here it is. Yeah.

Carlton Gibson (23:33)
Yeah.

Paolo (23:44)
And the language is not something that impacts so much in the speaking genre.

Carlton Gibson (23:51)
Just on that point, it's like what really frustrates me about benchmarks is, you know, people just do these synthetic benchmarks and so rarely do they talk about, how many requests per second do you actually need? What is your service level requirement? What is the throughput you need? you know, most websites, if it did a hundred requests a minute, that would be like amazing, but you can do thousands of requests a minute without even breaking a sweat on the smallest of instance. And yet,

People are like, ⁓ can't use Django, it's slow. So how fast does your service really need to go? And it, it doesn't. The second thing though is just on that DB grid, and Jacob Walz were able to sit there in the first morning and they were able to get like the proof of concept for actually putting together the real data for your grid there within, you know, within a, so that's dummy data, right? Still Paolo on the, yeah. Yeah. it's the idea there would demonstrate that it's.

Will (24:25)
This one? Yeah, it's a disclaimer.

Paolo (24:38)
Yeah, yeah, exactly.

Yeah.

Carlton Gibson (24:45)
like what we need, but you had within a couple of hours, you had proof of concept for the output.

Paolo (24:48)
Yeah, with the help

of Jakob, we created a table for the feature flag we already have in the database driver for the database we had internally. And also we found a way to improve this documentation, but the proof of content has been made the first morning together with Jakob.

Will (25:11)
Yeah. It hurt me that I couldn't be there.

Paolo (25:14)
Yeah

Carlton Gibson (25:14)
Yeah, we

did wish. We did wish.

Will (25:16)
Yeah, I did want to call out you did have at least one sponsor, right? Python, Espana.

Carlton Gibson (25:23)
We had ⁓ three, yes, so Python and Spania very nicely sponsored the breakfast. So thank you, Python and Spania. And the DSF gave us some sponsorship as well. So thank you, DSF. And also ⁓ button down sponsored the newsletter, which, you know, it was perhaps nothing, but it all counts. And it was something that if I hadn't had that, I'd been like, how am going to do this? So thank you again, button down there. And as well, the agent to mend the Palafragile, which are the council in Palafragile, they provided the venue and, you know, lots of help there. So.

Will (25:36)
It all counts.

Carlton Gibson (25:50)
I wanted to thank them.

Will (25:53)
Yeah, absolutely. So should we switch to books, other things we wanted to mention? What else? Okay.

Carlton Gibson (25:58)
Yeah. Well, mean, you

got any any leftovers?

Will (26:03)
Are you Paulo, before we switch to-

Paolo (26:04)
Yeah,

the things I want to say is to Daniela that has to track everything we did during the sprint. It was very, very effective in helping us learn how to track everything, how to provide the value of what we did. Sometimes we want to solve an issue and then we start thinking to the next one because...

is what we do, what we like. And Danielic did a great job in helping us to tracking everything and maybe we'll share something after the event. He's a lot of knowledge on this field, so it's been very, very effective in doing that. I think also, Karten appreciates that.

Carlton Gibson (26:52)
Yeah, yeah, I think this event was so successful that if we can't show that beyond us just saying, it was really good if we can if we can really point to something that you know, that these concrete things were achieved, then not only can we get the community on board for the for the future editions, not only can we, you know, help it to grow into a bigger event, but we can say to sponsors, look, and you really should be backing this because look what comes out of it, you know,

there was this line on the on the Python blog about the core developer sprints there that the sprints are the best bit of a conference. And the great thing about the core developer sprints was well, they're the sprints without the conference bit was same on Django and the med, right? It's where it's where the work's going to get done ultimately. So to be able to demonstrate that is great. to Daniel to bring his expertise there is something that we just don't have, you know, it's set of tools that we're not equipped with otherwise.

Will (27:43)
So if anyone is interested in the next one, they should definitely sign up for the newsletter on the Django and the med site. I mean, we'll feature it in the Django News newsletter, but that'll be the announcements.

Carlton Gibson (27:49)
Yeah.

Yeah. And

it's going to take me a couple of weeks to refresh the site and get power onboard contributing to it so we can get it moving forward. But yes, basically keep your eyes peeled. We will be pushing it forward for May next year in Pescara.

Paolo (28:08)
Yeah.

Will (28:09)
Okay, I think we're at the book section of the show. Carlton, do you want to go first?

Carlton Gibson (28:15)
Yeah, OK, so I'm going to say I've been reading this book, which is How Infrastructure Works by Deb Chakra. It's a wonderful book. talks about water supplies and other such infrastructure things, but how they form systems and how we fit into those systems. And it's kind of perspective changing. It's like everyone likes to think that they're this free standing thing, but we're very much not. We're very much nodes in a

much bigger, a much bigger thing. And I find I'm really enjoying it, I recommend.

Will (28:46)
How did you find out about it? How do these things cross your attention?

Carlton Gibson (28:50)
I think this one came

flying past on MasterDOM one day and I was like, okay, I'll check that out. And then I Googled it and then I was like, okay, wow, that looks great. And then I ordered it and it arrived and it's like, oh yes, this is a lovely perspective changing way of looking at it. She's some kind of engineer or maybe she does teaching it, you know.

the way she places the human being in their built environment, in their social environment, not so much social, but in their physical environment, the built physical environment that we depend on so much, and is able to talk through the interconnectedness of it all. It's eye-opening, really, I think.

Will (29:27)
All

right, I'll add it. Yeah, she's a professor actually here near Boston.

Carlton Gibson (29:37)
Right, okay, there you are. Yeah, she talks a lot about Boston

actually in the water supply and whatnot. was gonna bring it up to you when we were... ⁓

Will (29:39)
There's a few professors around here.

Paolo, did you have one you wanted to mention?

Paolo (29:48)
Yes, of course. I have more time this day, so I'm trying to reread something I already read. Yeah, so I'm rereading. Okay, perfect.

Will (29:54)
This was not planned by the way. This was not planned. I'm working on the update. I'm I'm working. he's showing,

he's showing Django for professionals, but yeah, I'm working on the update. Well, I mean, Carlton, you've, mean, Carlton Paolo, you've long talked about a book you might want to do. Is there anything you want to say around that? Right? Is that, can we say that publicly a book that you might write since you've written a lot around search databases?

Paolo (30:14)
Thanks

Yeah, of course I was thinking I did a lot of job

in the past as a consultant and in consultancy. we, a lot of time we tried to help customer to improve the performance of the project or start using best practice. So it's something that I try to write down and to have a lot of, a list of things to do or things I experience. Maybe it's something I can share in the future.

Carlton Gibson (30:32)
.

Paolo (30:53)
if I will have enough time to be there and write a rundown on the things. We'll see. I think I'll take a shot.

Will (30:53)
Yeah. Right.

Well, it's a bit like, ⁓ in my experience, like a sprint. have to, you need a chunk of time to commit to it because you can't just 20 minutes here, 30 minutes there. I mean, maybe some people can, but you really need

Ideally a couple hours, ideally a couple days because just, you know, there isn't a one-to-one time to words on the page process, but like code, right? You know, it all counts, but you need these blocks, blocks of focus. Well, I would read it, of course, if it comes out. ⁓ And so for me, I've got this more everything forever yet another book about AI overlords, space empires.

Paolo (31:27)
Yeah, yeah, yeah, that's true.

Thank Thanks.

Will (31:44)
and Silicon Valley control. I still haven't quite gotten enough of this. I know you're a bit bored of the topic Carlton, but I'm finding new ways to be enraged by what's happening.

Carlton Gibson (31:55)
I'm

impressed by your stamina on how many AI books you can read.

Will (31:58)
Well, I'm just not that knowledgeable about it. So I'm starting to see some repeated repeats and patterns. Yeah. I mean, you know, everything comes down to people, even though it's code, right? It all comes down to people. And so if you, just like in any organization, I find if you, you look at the background of the top person in an organization and you can tell the DNA of it. So if it's a sales person, it's a sales B2B organization. If it's an engineer, like

JetBrains, PyCharm, that's a different thing. Both have strengths and weaknesses, but it all, yeah. People are endlessly interesting. I think that's what it is for me, Carlton. The tech, you know, but the people and the motivations. And also, and I'm sorry I'm forgetting who someone that, maybe it was, was it Mario? Someone at DjangoCon US mentioned this book in particular in one of the talks. yeah. That's how it popped on my radar. I was like, another one?

Carlton Gibson (32:49)
And that's how it popped onto your radar.

Will (32:54)
And you know, these ones are fun too, because I can read them so fast. know, they're not, it's not deep literature. You know, I can blast through it in a couple of sessions and pick something up, take some notes. And then, yeah. What else? Do we?

Carlton Gibson (33:10)
Well, we've

got a project. I've got a project that I wanted to. Yeah. ⁓ Adam Johnson, Adam Chains, Adam Johnson. He's just released a new package called Django HTTP compression. I put the link. Now what this is, is it like a of middleware type thing, which will apply modern encryption compression, sorry. So we've got the GZIP middleware, right?

Will (33:13)
sorry, yes, go, please, project.

Ooh, yes.

Carlton Gibson (33:34)
But there are much better compression algorithms now. There's Zed standard, which is now in the Python 3.14 standard library, Brotli and Gzip as well. And if you just swap and use one of the modern ones, you're to get better compression and better performance. And it's just not great. It's like, yeah, this is wonderful. And you can configure this at say the engine next level or whatever your web server is. But a lot of times your Django project is stacked with, you know,

generic platform as a service. And you want to use one of these middle words yourself. I think this is a super project. It wraps it up. It demonstrates it gives the proof of concept. And I think this should be on the, you know, the path for being, for inclusion on Django in Django core. It's precisely the kind of thing that Django sort of package itself. It's not, you know, it's generally useful. something that we can recommend to everybody. sort of thing you don't really want to be implementing yourself. Yeah, let's.

So I'd like to see this gain some pick up and once the bugs have been worked out, there's no reason why this can't be added into Django in Mike.

Will (34:25)
Hard batteries, yeah.

Okay.

Well, I'll, I'll mention one cause Paulo, I don't know if we mentioned the projects part to you. So I'll, I'll give one, which is based PI, right? Which one of my colleagues at PI charm is a co-maintainer on. So this is the PI right fork with type checking. so type checking and generally, generally is an area I'm, I need to learn a bit more about it. You know, obviously I've done basic stuff, but there's all these new things coming out. So Astral has T Y there's

Paolo (34:34)
Yeah.

Will (34:59)
Was it PyRefly? I'm saying that wrong. That Facebook meta just put out. Typing is big. And specifically on PyCharm, we've long had our own built-in type checker. we hired Morgan, who's great, to figure out what the next generation looks like. So yeah, I'm playing around with that. guys?

Carlton Gibson (35:01)
media.

It

Paolo (35:19)
you

Carlton Gibson (35:19)
seems an exciting time for type checkers. say, like, once upon a time, there was just MyPy, and then there was the Microsoft one, which was good, but then it was closed source, and it didn't have plugins. So it's not.

Will (35:30)
Yeah.

Carlton Gibson (35:31)
Or was it, or maybe the type check a bit was open source, but then the, BS code extension was closed source. And so it was a bit like, well, all the bits.

Will (35:39)
Yeah, the same thing with the

debugger. There's sort of a history of open source things and then Microsoft hiring people and then, you know.

Carlton Gibson (35:46)
But then there's,

well, now it seems like there's three or four different options out there that I'm not entirely convinced or not entirely sure which one I should be using, but it's nice that there's options.

Will (35:58)
Yeah, no, there's a lot. mean, Python tooling in general, if we can lump that in, there's a lot of change. so, yeah, it's exciting time. I mean, no one's quite sure. mean, so again, Morgan, my colleague, he's got opinions and he's tasked with sorting out exactly what the next generation looks like within PyCharm.

Paolo (36:16)
I haven't prepared a project myself, but this is a feature I find very interesting. Maybe we think I work on that with an article, maybe. was the new release for Python 3.14 that added the support for the UAD version 7, also it released a days ago. And also Postgres 18 released...

Carlton Gibson (36:55)
you

Paolo (36:46)
the last month added this new feature. So in theory, it's already been, we had already been able to use that directly in Django and want to experiment on

that. had a chat about that with Simon and Django on demand. It's been interesting to see that Django can be already, can be already used this new feature that are very interesting in the context of database.

try to experiment on that and share what they find.

Carlton Gibson (37:18)
Thank you.

Will (37:20)
Yeah. Awesome. Well, as we wrap up, Paolo, is there anything you want to share about what comes next for you?

Carlton Gibson (37:29)
you

Will (37:29)
Professionally or otherwise?

Paolo (37:31)
Yeah, I'm searching for a new job opportunity right now. It's been a year of consultancy and I want to find something, something new, of course. If I can, working with Python and Django, the things I'm more experienced in head, but also with Tim. And if someone is searching for an engineer, I'm hoping to...

Will (37:53)
Super engineer.

Paolo (37:57)
Yes, other than that, we'll start working on the next edition of Django on the mat for the sprints. We'll see.

Will (38:05)
Yeah, so we'll put a link. If anyone doesn't already know how to contact you, LinkedIn is the best way. So we'll put a link to your LinkedIn profile. But I would hire you if I could. So Carlton, yeah.

Paolo (38:11)
Yeah. Yeah, yeah, yeah.

Carlton Gibson (38:14)
Thank

Paolo (38:14)
you

Thank you, thank you.

Yeah, all my contacts on the website, other than LinkedIn, if other people are more comfortable using, don't know, Mastodon, or Anymail, just Anymail is on my website.

Carlton Gibson (38:32)
Yeah, I'm desperate to get my company to the next level. It's still just me and Mark. still going, you know, I want to get us to the point where we've got a little pool to hire people because every six months or so somebody, you know, some superstar from the Django system ecosystem is on, you know, comes up and you're like, I need to grab them and I can't keep slipping through my fingers.

Will (38:53)
Maybe next year. I'll just end with, this is, even though I wasn't there, I was there three years ago when you first were mentioning this, Paolo, and I think I've been there through many of the steps, and so I'm very,

that the two of you took the initiative and did the hard work to make it happen, because it needed to happen, right?

Carlton Gibson (39:12)
No, and it was amazing. you know, there are things that we weren't able to do because it was the first time and it was just the two of us and what, okay, those things are totally fine. But of all the things we wanted, we, it was just a brilliant event. And the, you know, the next ones are going to be even more.

Will (39:28)
Yeah. you

Paolo (39:29)
Yeah, the thing that made me very happy to read some posts that people shared,

Marius and Daniel and others, team, and how they appreciated the fact that being there and meeting for real new people, speaking with them, and how they was, for them was able to achieve something that they waited for so long to achieve and in other contexts was not possible. So seeing that people get something

useful from that and they joined was very, very great and I hope that in the future will be more initiative like that. Not only maybe jungle development, they can organize also in that place in the world.

Will (40:12)
Yeah, well, mean, Django cons are there's Django con India this year, you Django cons are spreading, hopefully Django con Africa. So yeah, Django on the blank. But you don't have to do all the work Carlton and Paulo, that would be the goal. ⁓ Paulo, thank you for taking the time. Thank you for coming on.

Paolo (40:24)
Yeah.

Will (40:30)
Thank you for sharing this. Again, I wanted to hear from Carlton and you how it went and hopefully this shares the story with other people as well who weren't able to attend.

Paolo (40:40)
Yeah, thanks for having me to be able to share this, which you all have been incredible to do after a long time we spoke for the first time together and now we are talking in the past.

Will (40:54)
Yes, yes, in the past tense.

Yes. So thank you, Carlton. Did you have something to say?

Carlton Gibson (41:00)
No,

no, no, no, no, don't let me interrupt you.

Will (41:03)
Okay, yeah, don't let me don't interrupt me doing the ending. So we're at DjangoChat.com. Thanks everyone for listening, and we'll see you next time. Bye bye.

Carlton Gibson (41:11)
Bye.

Paolo (41:12)
Bye.