Transcript: Accessibility - Sarah Abderemane
Hi, welcome to an episode Django Chat, a podcast on the Django web framework.
I'm Carlton Gibson, joined by Will Benson.
Hello, Will.
Hi, Carlton.
Hello, Will.
And today we've got Sarah Darriman with us.
Thank you, Sarah, for coming on.
Thank you for having me.
No, we're really excited.
We're really excited.
Um you're I always think you've been around for a few years in the community, one of the sort of the the newer people in the community.
And so uh for for me, I'm you know, old old man now with my walking stick.
But tell us who you are.
Tell us to tell us, you know, how did you find Django and how are we so blessed to have you?
Okay, this is a long story.
I will try my best.
Yeah, no, they're the best ones real item.
Um I don't have the usual path.
I started with uh marketing degrees.
Um I was planning to do like uh international trade, which I didn't really like it as at the end.
But um during my studies, uh I met a developer and we talked a lot since I really want to do marketing stuff.
And uh I found it really cool what he was doing, so he was explaining how it works, how we do so.
And during my studies, I have a course to do uh when you when you have to build a website but not really with code, and uh with some blocks with Dreamweaver, long Dreamweaver.
That's how I got started.
Yeah, same Dreamweaver.
So I found it really cool, even I didn't really work through the code, and uh I talked to my teacher and told me I should go this way and start to learn to learn by my own.
So when I finished my studies in marketing, uh I started to learn by my own with some resources on the internet.
And uh the developer I met during my internship uh helped me to to have some guidelines and and then I done a master uh in programming.
Okay, so that is can I ask, what was it about international trade you didn't like?
Um it's like uh when you you buy some stuff and you you sell them to another country, and I wanted to do that like uh I really like to chat with people in multiple languages, but yeah, when I discover what is really a bite, uh I didn't like it so much, so I changed my plan.
Right, okay.
The catalog didn't live out to like the reality didn't live out to the catalog.
Yes.
But programming, you've stuck with programming, so programming seems like it's um the catalog has fit a little bit better to use Carlton's analogy.
Yeah, I I started to learn with HTML and CSS.
I've done like my my CV in a website with free page.
I was really glad.
And uh after that I started to to do more dynamic stuff, and uh with um with school I learned uh PHP and uh so I started to do more things which is uh more dynamic and looks more more on the website you can see uh on the internet.
And um during my during my uh master uh I was studying like uh I think we say like in block release training, like we have week in uh in the school and other weeks in the company.
Okay.
And uh I was learning uh Python with my mentor at uh at uh the company.
So I discovered Python like that, and I really like the language, so I started to learn uh a bit more on my free time.
That sounds like an awesome way to do it because Will's always banging on about how computer science courses don't teach web programming, right?
Which is true,
but like you get and that way you get the best of both of us.
You get some actual real world, I'm building an application, I'm working with a company, I'm doing something that's on the ground, but you also get the kind of theoretical background, which is you know quite important and helpful.
Yes, I wanted to because I started to learn by my own, and you always not have all the best practice, I would say.
And uh I think it's help a lot also to to have some theoretical uh since you start with nothing.
So that's also why I wanted to do uh some studies about
well, you have a master's, but I was gonna say Carlton and I don't have formal education in computer science, but I think there's something to starting to learn on your own and then adding the theoretical component because if you just do computer science through school, then when you graduate, I think there is it can be a little there's a disconnect when it's like no one's just gonna tell you what to do next.
It's really up to you.
But when you start with that attitude of I have to take ownership of learning and deciding what to do, that's really what you keep going with it, is like you have it's up to you.
Yes.
So that's not not the worst mindset.
I think um I would have done the same if I didn't learn uh by my own before, because when you learn by studies, it feels like really theorical and you don't have the same feeling as you learn by your own, like building stuff and you see how we how it works and seeing it's actually uh showing on your page.
So it's really a nice feeling, and I think this is something uh I really wanted to to push more and learn more about.
So yeah.
I think I think especially if you're used to doing some other type of work to then have programming where especially with HTML CSS to start, you can do the work and then see it.
Do it, see it.
Like that that feedback loop, many jobs don't have that.
Yes.
And it's you and so that that feeling, you you chase it more, you know, it becomes harder to chase as you get older, but you still get it.
It just maybe takes I mean, Carlton, what like a couple months instead of a couple minutes to
Yeah, it depends.
Well, maybe if you're test-driven development, of course, because you write your test and it fails and then you fix it and it passes, then you write another test.
Programmers get all the time, but like so many most jobs you don't have ever take a moment to be like, right, that's that's that's that's that's off the list.
Yeah, I thought you were making the other point, but yeah, yeah, yeah, no, that's true.
Um Well well we have a long list of things to discuss with you.
Go ahead, Carlton.
Well, I was gonna say, no, Sarah, you're like, so you're like, so I got to know you by the Django community.
You're just a community machine.
And you so you first popped up, like you know, but you're you do everything.
You but you first topped up um on my ride after joining the um accessibility team.
So you tell I've got so many questions about accessibility.
Um so let me just fire him off and then you take them in any order.
How did you get involved with it?
What's you know, what's your background in accessibility?
How did you come to think, oh, you know, I'm gonna join you know I'm gonna get involved helping Django there?
And then you know what what are your kind of tips for you know the people who aren't necessarily accessibility experts for getting into it?
Because I think it's something that's really important, but there's a lack of um I think how-tos, like you know, okay, you need these are the checklists you need to follow, or you know, perhaps they're there, but we don't know about them or I don't know.
Okay, um so when I get to the jungle accessibility, um uh first of all, uh I I wanted to do accessibility stuff thanks to a friend which was a coworker before, and uh he he had some disabilities to to see some stuff, and he was uh he he had on his Slack some uh some
shape to distinguish uh each um each element, and uh one one day he asked me to do uh some change a color on the pipeline and I didn't get why at the at the first instance, and uh because when you have uh, for example, uh the red color for error and the green one for um uh for the success, uh he didn't uh really
see uh the green one.
And for him, it was exactly the same, and it was horrible to see if it passed or failed.
So I changed the color in blue for him to really uh see the differences, and uh I started to learn more accessibility by that, thanks to him, and uh and uh I discovered so many stuff, and I wanted to learn more and help also other people like him.
So, this is my story with accessibility.
Okay, but okay, so I'm just gonna go there because I'm like, okay, so colors.
How am I to know what are the right colours to use?
How am I to you know how because okay, this is something I care about, I have no idea what to do.
What do I do?
So you have, for example, a website which is called uh whocaniuse uh.com, and uh you have uh the ability to see uh uh many types of uh disabilities, and to for example, you have a background color and uh foreground color, you can choose uh whatever you want for the both colors, and you will see how it renders for each type, and uh so it
will help you to choose um the best color for example a website or or like uh some text on the on the background.
So this is a tool I use a lot.
Uh you also have some extension on the on navigators which also help to change uh the color of the of the website.
So for example, you can enable uh uh more high contrast level uh to see how it renders, if you can see everything with uh those colors, and um also on on DevTool on each navigator, you also have uh the ability to see the level of the contrast, if it's enough or not.
Uh most of the time it's a grade from zero to one, if I'm not mistaken.
Um and uh it it will tell you if it's uh a low level or uh enough level to to to that.
So the most high level it's three hay, and the really low it's uh one hay.
So so then how did you make the leap from having your eyes open to accessibility to then joining the Django team?
What was that process?
It's a fun one.
Um initially uh I I drew open source by night, and the website uh was really annoying to me uh to see like the the white background really flashy, uh especially when it's really really late.
Uh so I started to make a dark mode and uh and uh I thought it would be useful for everyone, so so I was um doing everything on the documentation and um Tom Karink started to review my work and um and then I finished it uh at DjangoCon Europe on the sprints.
And uh then they they asked me if I want to join the team.
Well now and I believe and the admin as well, right?
Because that was one of the I forget, sorry, I forget the timing.
Was that a year ago or when was that when you'd added the light and dark mode to the admin?
Was that two years ago?
I think
it's two years ago or
oh god, how old I am.
Yeah, no, it's a while back now.
Yeah, Carlton and I are squinting, we're like, what is that feeling?
Yeah.
But but you so you did the docs and then you did the admin as a follow-up in the the following release, right?
And I I remember one of the big issues was well, how can we enable configuration of this?
So you you know you had to introduce the switcher and it had to be nice and lightweight, and kind of all of all of these bits involved.
I discovered so much extension and package just to make the switch of that.
So I think it was uh uh a need for for the jungle community.
So I'm glad uh I helped for that.
No, I mean it's a super advanced, isn't it?
Um to one thing that uh you've talked about a couple of tools there, and we talked about um the dark mode there and the the accessibility.
One thing I think it's uh in process now, perhaps you can speak to is this this um plan to add accessibility guidelines to the developer documentation um so that there might be some guidance to which tools to use or to you know what to check for.
Yes, uh we are trying with the with the team to add some gay lines because uh most of the time people would like to help but they don't know how to do so.
And we'll we would like also to to add more of this um on the process of doing a PR if it's uh also be um how to say that like uh not too much work for the contributor, but also uh keep that in mind uh for someone who will use Django uh for his project.
So yeah.
The last few releases as well, there have been lots of fixes to, I mean, you know, the the form rendering, for instance.
A lot one of the motivations for the changes of the templates, they used to use the um the paragraph tag as the default template for form elements, but that's not accessible to screen readers.
So the move in I think five, well, between 4.1 and then 5.0 um as the final switch is um to make div templates the the the the default template because that's more um accessible to someone's screen readers.
Um you know, and numerous uh perhaps you could pick um one or two that come to mind.
I don't know if this
um um yes um I think the the the thing many people uh used to to not think about is uh HTML essentially is a semantic language, and uh this is really useful for screen readers, and most of the time this is something which is skip, and uh this is uh really useful
to have uh tags like for example section or headers to really uh get uh for the the user this is a new section or this is uh a paragraph or something else or a quote.
And this is really important uh to use that uh in order to help uh people who use screen readers to to really uh get uh the information, even uh it's uh not clear at uh at the moment.
And uh this is something we want to to push through and uh and it will help uh many people uh for that.
And I know um Thibaut did a talk at uh DjangoCon US sort of highlighting the the state of the admin in terms of some it's some accessibility failure.
So there's a lot there's a a long a long road of possible changes, right?
A lot.
There is uh many things to do, and uh and uh uh we we really want to to to move uh the accessibility the admin to make it more accessible.
And um I think there are many things to to change.
Uh the the HTML as something is something we can already start to change.
There are there have been some improvements, like for example the landmarks uh which highlight uh the the different uh sections uh for the screen readers, you can move to for example to the header and then to the main content more quickly.
Um so there is uh a lot of things to do, and even for for example, there is a PR uh at the moment about links.
Uh we really want to change that, but it makes uh a lot of things to think about uh behind because uh there is a lot of links and it will change also the aspect of the admin.
So this is something also to care about, so a lot of things to to work on.
So and when you say that it's like yeah, any change that goes into the admin that changes the the the the look of it or the the layout of it is always a bit like ah you know we need are we just are we just destroying it and moving things around and are we and because a lot of times we don't know, and I think the same problem that's come up with um Django Project.com website that you've been helping to maintain as well, is that a lot of times someone will make a suggested change.
It's like, well, yeah, does this we're we sometimes feel unsure as to whether it fits this the existing style and the existing style is a bit dated, but we can't just go in and slap some pink on because that just would isn't gonna go.
I mean, how do we as a given the bandwidth we have, given the volunteer capacity we've got, how do we how do we make progress, do you think?
I think it can be um step by step, um but there is a moment that we really need to to think about the the aspect of the admin and the and the layout because as you said the the the style is really dated and there are things which is really hard to change.
Uh so I think there is a moment we when we will have to break some stuff and make sure this is okay for everyone.
Uh and then we will be able to to make more moves uh on the admin uh uh about that.
I think so.
So at some stage we need a refresh project.
I'm kidding.
But yeah, sure.
But I think yes, um this also might help um to have more more user of Django, because some people would say uh Django admin is a bit ugly.
And um I think this is something uh which also helps to have more Django users, and it it's also cool to have uh a nice admin when you work on even if it's not uh something which is uh uh designed for uh the end users, uh I would say like the customers, but uh as a developer it's uh it's really nice to have that, espe
cially as we have a lot of uh projects at the moment who have like uh fresh nice admin and stuff like that.
So to to avoid uh to have Django too much outdated, I would say.
Well, I I think that that the two big things that people see when they first come to Django is they see the Django Project.com, which is a little dated, and then they and everyone's always saying, Yay, admin, and then the first time you see the admin, yeah, it is a little jarring because it uh hasn't really changed since the first round.
And so from a marketing perspective, that's not the best look.
I mean, we're we're used to it and we understand why, but so
yeah, I uh I have like in my previous company, um we were saying like Django is really nice, uh you you can do many things really quickly, and it's really cool.
And when we present the admin, they were like uh a blank face.
Like, okay, uh um I'm not a big fan of the admin, but if it's work, I'm fine with that.
Yeah, it's just it's just for the developers, anyways, so they don't yeah.
I do well, do you know are there any examples of frameworks that that have an admin that is designed better, or is it because I don't know how many other web frameworks have an admin, really?
Is there an easy comparison?
Like we should look be more like something else?
Um I'm not sure I would say it's an easy comparison, but uh since I work on PHP, um Laravel is uh really close to Django, and there is a there is an extension you can add to have uh an admin because it's not by default.
And uh it's really nice, and maybe it can be an inspiration, but as it's not built the same way, I'm not sure it's really helpful.
I th it's interesting to me.
I mean, we had um Laravel and PHP really seems to me, anecdotally, to have to be the place where we look for inspiration as opposed to Ruby on Rails.
Like Ruby on Rails is still out there, but it's I think not I would feel comfortable saying the last five years I I hear a lot more about Laravel and as being used and also in terms of like that's something Django should look at in terms of where we want to go as opposed to Rails.
So that's been interesting.
Yes.
Um I I don't know so much uh really on rays, so it's hard for me to to to be able to compare, but uh as PHP it's really used in France, unfortunately.
Um everywhere, everywhere.
It's used everywhere, it's used everywhere.
But but yes, um I I'm I'm pretty sure we we can we can do uh we can do better for for the admin uh for Django, even we don't take inspiration of other frameworks.
Um we we may have um uh how do we say that like for example when I had the dark mode on uh the Django project.com there were a lot of people uh beginning to to come on the project uh asking um many many things like I feel there is there was more attraction of people since there are some changes related to the
the interface of the of the website.
So I think if we change the admin, we might have also the same, but uh for the framework.
Yeah, I oh definitely.
I feel like there is this feeling that nobody really knows who decides what what happens in Django, especially the docs, but they're this sacred thing, and yeah, just to see any change, I agree completely.
It's like, oh I didn't know that was possible.
Come on,
yeah, let's let no, but no, the point is nobody decides.
Like it's the
well no no I know that's that's the progression where you're like
this weird thing is that no who does say well nobody really actually.
It's not like there's somebody saying yes or no and this and that.
It's just not really.
We just keep it moving.
Yeah, but it is, but I mean, having new new people come in like yourself, Sarah, and do things and have ideas means that the old cruft like myself can just be like, you know, and some other people can just sort of, you know, be waft move away, right?
It's not like we're just saying no all the time, but there's actually things being done, which I do think lends itself to like doing these things we know we need to do.
It's just a question of who's gonna do it, and it's challenging.
But um, I mean, I'll I would say Carlton, as a former fellow for five years, I mean Django is exceptional with not breaking things, but maybe that balance could be loosened a little bit or
well I think that we'll just stick to this um admin example because I think it's a good one.
I think we talked a few times and there's been various conversations about whether DSF could fund some development projects.
And I think something like a refresh of the admin is something which would a need a financial you know stump because it's so much it would be so much work if it's a big project, but it would also benefit and it would be like something that we can clearly identify as yes.
There's a few sort of vague ideas.
Oh, maybe we could throw some money this way, maybe we could throw some, but actually, no, let's refresh the admin.
That would be a good concrete thing to raise some money around, you know, get a a team on and and do
this admin brought to you by um Microsoft, right?
Well, I doubt we'd get to say that, but you know, maybe
No, well, didn't they I I heard um you know back in the day they estimated it'd be a million dollars to to do anything to the admin.
Uh that story's in my head.
Well um okay, so that's to rewrite it.
Okay, so if you if you wanted to take if you wanted to take the whole admin and rewrite it with crowd-based views and you know, like totally redo the entire admin, that's probably a million dollars worth of effort going in.
And Jake's now we have
so it was Jacob.
I think Jacob did that with that.
I I I honestly am really skeptical about a rewrite the admin totally project.
But to to but to redo the the templates, redo, and and and then there's a layer slightly below the actual templates where you're generating the HTML.
You know what Django's like with its forms and its you know its fields and its this, that, and the other.
Well, those would need some adjustment as well for a new a new template layer.
But the that wouldn't involve rewriting all the views, rewriting all the URLs, rewriting, you know, which oh that would be a project as well.
So but like we you know getting some good front-end chops on no, let's redo the front end that I think would be feasible.
The DSF could get behind that, we as a community could get behind that, and yeah, the release when it was released, there would be a breaking change.
There's a new admin theme, so there'd have to be you know some migration path, maybe, but maybe not, maybe it's a no, there's a new admin theme, and you have to go with it, you know.
If it because maintaining backwards compatibility always means we can't ever move forwards.
I don't know.
If it's only template, maybe it would be fine.
Finger crossed.
But it uh well there there's my there's my my my wonder, is it only templates?
I don't know.
If it were only templates, then sure we could just ship two.
I know there is some stuff, it's really related to templates, but uh I'm not sure it's only that, and I'm not so confident on this part to to tell more, but um I'm eager to learn more, so I think it's a good one for me.
Sarah, we just sort of like it was a natural progression that you were interested in accessibility and then you just did stuff and then it got accepted.
But many people don't make those steps, and you've been helping the community in a bunch of ways to help others uh contribute to Django.
Maybe we could talk about some of those.
So Django, Django Spaces, Django Girls, Organizing DjangoCon Europe, Django Discord.
I just gave you four separate paths.
So you choose any of those four that you want to talk about to start.
Right now I'm realizing I'm doing a lot.
Well, you gotta take care of yourself too.
Carlton and I can attest.
I mean, I've said this before, but the talk where I first saw Carlton was a talk he gave in 2017 about being a developer for the long haul.
And he talked about these things, and every year it just is more and more relevant.
So I recommend that talk if you haven't seen it.
I will watch it.
But I'm trying to care about myself.
Um so yes.
Um uh what topic should I pick then?
Um I'll get I'll give it to you.
How about Django Not Space?
Because this is a newer one that you're very involved with that is help having mentors and mentees and giving some guidance for people who want to contribute to Django.
How did how did that come about and where is it at now with the second cohort, right?
Yes.
Um I've done a talk about that uh in Pilate Discord if you want to watch more, but um uh it was usually to to help uh people to to contribute.
Uh since I've for me I've done this on my own.
I ask a lot of questions to many people, but it's not easy for everyone to do so.
So I wanted to help for that.
Uh when uh Dawn and uh Rachel uh told me about this project.
I I told him yes, I really want to help with that.
And we started to to to build the program and uh I uh also asked uh team to join, and Sarah also joined thanks to me because I was talking on Discord, like, hey, you should come.
I think it would be nice to have you.
Um give another kind.
So yeah, um and we started to to build the program uh just like that, and um and we have done a pilot which was a really uh really successful.
And uh the next court is in January.
Uh so we have made some changes, but uh we have more people, we have like 80 um 80 anti uh jungle nuts, and um we have also um if I'm not wrong, uh six uh um navigator, as we say, mentors, uh because we love space and
um so um it I think it will be uh a good a good cohort.
So um we will see how it goes really uh in January as we have a lot of more people involved, but uh I think uh it will be a really good cohort, this one.
Um six six groups of three each plus a navigator each, that sounds like.
Yes.
It sounds amazing.
Yes, it is and this is and this is this is so great that you just I mean you did check with the DSF, but you just kind of did it.
Because that's always the problem, is that people think they need permission, but as we said, there's not necessarily someone in charge of everything.
And so you you all just did it and then said, Hey, we did this thing, can the DSF support?
Which is for so many in so many areas absolutely the way to go to not wait on the board the DSF board or someone else to give permission, but just just to do it and show that it works.
So that it's so good to see, especially having been on the board.
It's so good to see pe it's makes it so much easier.
It's just like this is a real thing, it's happening.
Do you want to support?
Oh, it's part of the Django community, of course.
Right?
Instead of theoreticals, it's like nope, it's a real thing.
So I I wish this this approach could be applied to so many other things, but of course it's a huge amount of time and effort for for you and the or other organizers.
So that's that's the bit that um we had Lily Foot on recently, and sh I think I believe she's doing it again or she was open to doing it again, but was talking about the um sustainability part, right?
You can't we can't expect the same people to do the heavy lifting all the time.
So yes, and uh uh and uh related to her, um since we have enough many navigators, we just uh ask her if she wants uh if she wants to be um a backup navigator so she has time for her, and uh just in case for replacement, so so we we keep the fact we we try and took care of people and uh if you want to to step back you can.
And if people like you know, people in the community want to get involved, I mean could they join the Discord or could they um you know could they offer advice?
Could they offer be around to help with PRs?
What's the best way to contribute if you're not you know if you're not an official navigator or an official mentee for this program?
Uh good question.
Uh we do have um presentation and we want to to implement also office hour to to have people who would like to to talk or do pair programming or or discover something new.
And uh this is a way to do so.
Uh if you would like to ask for that and uh help, you can uh reach out to us in uh social media or in contact uh at junkone.space and uh and also me if uh if there is any question, I'm open to it.
And uh so this is one way, and we we are um we also uh care about suggestions.
So if you you have any suggestion or something you would like to to to implement or you have an idea and you would like to know if it's something possible for Django Note space, uh we we are really happy to hear about that.
Okay.
Because the part of the I guess the the the Django Note space Discord is kind of a safe space, right, as well for contributors, because one of the big problems is the you know, perhaps the Django forum is a bit, you know, thin air.
It might be a bit scary or
yeah, we are trying to to keep a small space to to allow people to ask questions, to feel not the fear of asking uh a supposed to be naive question, which is really not the case in front of a lot of people.
So so this is something we would like to to keep in jungle note space, but uh we are happy to have some intervention of people uh even if it's uh occasional.
Okay, brilliant.
Well, can we talk about your day job?
I know that you when you're not doing all these things, you're you've been at Octopus Energy for a little while, like and I think you're you're primarily focused on back end.
We've been talking a lot about more front-end things.
Um is that correct?
Uh this is correct.
Um uh I'm working at Oftoc Octopus Energy France, uh, which is part of uh Octopus Energy Group.
Uh and uh I'm doing uh back-end uh back-end uh deploy uh backend stuff uh at uh at the company and I'm working on um the the tool which is uh which help um uh operational people to to to create uh contract for um for customers who want uh uh rene
wable energy and uh a lot of more tools because we are really we do care of uh green uh energy and uh renewable energy so so this is uh part of my daily job.
Now now is that what I know for some listeners who are newer in their career when they hear backend, it's it's like a black hole.
Like it they're thinking like, is that models, is that views, is that URLs?
Are there any um like like how does that work?
Does a manager come to you and say, we want this functionality and here's the code base, go?
Or like what are some examples of, you know, I know because I know it's so different on a huge code base, like Octopus must be, as opposed to a smaller project implementing things.
Like like what so I guess what would be is there an example of um a specific task that being a back-end developer would would entail for you?
Does that make sense?
I I don't think I worded that very well.
Uh I um I think I get it.
Uh I will try to answer.
You will tell me if it's uh if it's answering to your question.
Um so um, for example uh I can have a task uh uh to to to to uh implement uh some reminders for the uh operational team to make sure to to to see when there is uh someone uh who needs to to have um how we say that um a rem
inder that she needs to to consume less energy at this time of the period for example uh and uh I I'm I'm um I'm able to implement this part for example this is a a really fake example but just to to see how it works uh this is this can be something like that as we uh are an international group uh I can work for example on uh something uh part
of another country for example uh if we we have um a new team uh in in Portugal we will have to implement everything so I will help them to implement uh all the all the platform uh all the stuff which are needed to make sure the product is uh uh uh available for all the customers they can follow their consummation and all the stuff like that
and can I ask how how is octopus to work for because it seem
s that everybody's everybody not everybody but a lot of people are working there now
almost everybody
hiring yeah constantly hiring at all the conferences with the you know come and talk to us so it's it's big no it's active
yes um I think we are uh around uh 300 uh 200 developers uh around the world if I'm not mistaken and um uh we the thing I
really like in this company is uh even if we are split all around the world we are still uh really friendly uh trying to help each other and uh really uh being like a team uh and uh we want to to help uh other people to grow and even if it's a big group uh we are still uh having this uh as you can have in a
small team uh for example and uh for sure uh octopus it's really nice
well I remember they one of the at one of the Django cons they had the the small little octopus plushies and I brought one that that's like the number one thing I've ever brought home to my kids um they still have have one I only brought one but that's a nice nice sweat loadable
one no that's such an error you need one each child though I that's the rules ye
ah but it's not special it's not special if I bring it for all of them probably
don't get a different thing yeah yeah
yeah just throw it in the middle of the room and say here go
hopefully you'll come in uh Django con uh us and uh we'll bring you the new new one we have with the dark eyes
oh no yes that is she's showing it yeah ooh
so you also organized uh Django meetup in Paris is that Djang
o or Python
Django okay uh we do have uh a python uh here which is organized by uh other people so I'm only um organizing the Django one uh we have uh we had three sessions uh since the first one I did uh and it's happening uh uh each uh three months uh
approximately uh so we no no um you can go well
I was just gonna ask because so it's because Django's quite small really in the in the big scheme of things and so a monthly meetup would seem a bit much maybe um but you said every three months
yes um uh I I don't have like um uh I I don't know all the people uh around the D
jango community in France so it's hard to have speaker each month maybe later but uh right now it's uh not so easy and uh so that's why I also organize uh that uh only uh three uh each three months and uh but uh maybe later we will have more speakers willing to to speak as a meetup but uh that's also why we don't have
so much.
But people in the French uh Django community should get in touch to help you organize it as well right because you can't be doing this just by yourself.
It's it's a lot of work
no it's fant it's fantastic to have one.
There was here in Boston there was one that was monthly for a number of years and then COVID hit and there were two organizers who did all most of the work and you know one moved away and I do think it doesn't need to be monthly as Carlton was saying like just having one is such a benefit because I've met so yeah it's such a resource but it is it is so much work right like often at least here in Boston I've found there'll be one company that will be willing to host on a somewhat regular basis and then
maybe another company that donates pizza or something.
But it's yeah it's a lot of work to do but it's it's a huge benefit to the community for sure.
Yes um I started that uh after the COVID uh I've been uh one in the COVID which was Django London and someone asked me why are you there?
You're not even in the UK and and uh uh I told him there are no Django meetup at the moment in Paris so uh this is also why I created uh this one but um uh I'm I think uh despite uh all the work we had uh for for organizing it um I really liked uh to to see
all the people during the meetup and uh networking seeing each other and there is also some friends who come and see each other for a long time like hey how you been it's been a while it's really nice to see you so this is uh something which uh really helps also to to organize those event um uh when uh when you see other people gathering at the same time uh in one place but
well since since before CO
VID I've been threatening to get the train to Paris and it's still on my list of things I really want to do but haven't actually done.
But when I when I do, can I come?
Can I come to your meetup?
You should you can
yeah when you're when you're touring colleges Carlton you can yeah
yeah yeah yeah yeah yeah what for the Galen Yeah for myself.
Well there's um you know one issue we have is is in Django is just f having people find out about things.
Like I s in the docs we do have a link to a local Django communities section um which is empty at the moment but um that's something that I'm curious what your thoughts are Sarah like do you find I find that people just don't know about things because we don't we Django don't have an email service or maybe the website doesn't have people to put the time into marketing but we could do a better job of of telling people about all the things that are happening.
So I guess my question to you would be like how how are you how are you finding how do people find the Django Django Paris meetup?
What were you able to email people?
Like was it just t like word of mouth or how how do you let people know that you know because Paris is a big city right but how do you how do you get in touch with everyone?
Yes um before COVID there was a Jango Meetup Paris um I was part of but I think it just died with COVID and I just uh trying to to put some messages on the group even I'm not the organizer to say hey I'm trying to do something so I know there are people who watch there uh also on the meetup.com website uh some people are sear
ching uh on this platform but uh I agree with you since uh we don't have enough I think communication and marketing about uh about that like uh I try to for Django meetup Paris to to put the event on uh a local um association uh to uh which is part of uh it'
s part of the Python French association uh to to let people know that I'm organizing a Django event.
Uh so I'm trying to put the the the event uh where there is someplace related to Django or or Python, but um it's it's hard to reach out to people when you are not sure when where they're they see the the event and uh uh where the best way to reach them.
I mean we I think it's still up the Django people website um for a while that connected people.
I almost wonder if
Django people had to be taken down eventually.
There was a you know an unfixed security issue and it been left and it had been idled and it was getting spam and in the end it had to be shut down.
But we need something like that.
Well, I was thinking, because you know, email is it is expensive to do, but if there was, you know, if it's just a database, we could have millions of rows where it's literally just like what's your name, where are you located, are you you know, email address if you're open, so that when someone says, I want to open Django Paris, I wanna open Django Marseille, we can say, here's all the emails we have from people in that area.
And it could be something that uh, you know, I don't know, the Django Developers Survey, or we try to I'm trying to think of a commute a resource that the DSF could manage in a f in a non-expensive way so that there is this pool of people, because we know you know we know millions of people are using Django, and then some percentage wanna would would be open to contact.
I mean, for example, the Django News newsletter is one tool, but it's in English, and it's every week, and you know, it has almost 4,000 people, but that's a drop in the bucket.
Whereas I'm sure there's well, I don't know, I don't know if it's four million, but there's a lot more people who maybe would want to hear occasionally from Django in quotes itself about the stuff.
I don't know.
It's not a new idea, but I wonder if you know if if we put it put a back end, if there's a way to ask people to voluntarily submit information, then they can be somehow organizers in their area can contact them.
I don't know.
Yeah, I know that uh in DjangoCon Europe last year there was a work about uh gathering all the meetup related to Django to put that on the on the website, um jungleproject.com.
And um I hope at uh some point uh in the community local page there is uh there will be the list of everything.
But um yeah, I think uh um right now uh the best place to to ask uh for for things and events uh is Discord to me, but maybe there are other places uh which will work, but I'm not sure everyone is aware about that.
Yeah, no, that's the problem, it's the fragmentation of it.
Like there's some on the forum, some on the Discord, some I don't know where.
It's difficult.
We've just been asking you questions the whole time.
Is there anything you wanted to discuss while you're here?
Any questions for us?
I don't have at the moment.
Uh I know it's hard when we've just been lobbying questions at you all day long.
But well, I'll give you we've s you've sort of answered it, but I'll one question we like to ask recently is so if you have a magic wand, uh say separate from accessibility, what is something you'd like to change in Django?
So you just make it so.
Is there something that jumps jumps to mind that you would like to change or improve with Django itself?
That's a tough question.
And well, Carl Carlton, uh we didn't get a chance to put this on air, but you've been doing some work on authentication.
Like I think this is worth a two-minute like key give your take on.
Okay, so I think that we that we've gone a bit wrong with the custom user models.
I think it's it's kind of like a um a tar pit for users.
I think the vast majority of users don't need to customize the central auth model ever.
What they need is a profile model, and they need to have that separate from the central auth model because your central auth model is fetched from the database on every single request.
And so if you've got like my bio and my this and my that and my that, you end up with 50 fields being fetched from the database every single request.
And it's like, no, that's not what the central auth model is about.
The central auth model is about identifying the user for this request, and that's something which I think Django should have just kept secret.
I understand why historically it didn't.
So if the thing that I would fix in Django if I had a magic wand was to make um the unique the email field unique um on Django Contrib models user so that people can do login with email, which was all they ever really wanted, and then perhaps drop those, the first name, last name fields, and move those to a profile model, and then separate the auth from the profile.
And so Django would keep auth, which it really is a difficult topic, and it really is one you don't want to get wrong, and it really is a battery that Django should provide.
Keep that in Django and then give us you know a clear pattern for if you need profile data, this is how you do it.
That's what I think I would fix if I had a magic one.
I agree.
Thanks for knocking that one up for me, Will.
Well, no, we we we haven't had that on air before.
Um, but anyways, uh you know, it's it's a big question, Sarah, so it's okay if you can't think of one, but that's one that Carlton in particular is um
It's been bugging me for years because I've seen I've worked on projects where it's like literally the the auth the custom auth model is just a dumping ground for miscellaneous junk.
And it's like why, you know, yeah.
Why is my request like, well, you see what your auth model's doing and every single request in the middleware there, right?
Anyway.
Yeah.
Well would what would well I'll I'll I'll take a stat.
I haven't done this in a while.
I think for me, I mean you know, this is not a new idea, but like the serialization API story, you know, there's really interesting things happening with Django Ninja.
Um DRF is largely feature complete.
There's some things we we Django could improve.
Carlton has some specific ideas, but the fact that that is not baked into Django itself, and I know we want to keep Django Core small, but it really feels like APIs should be within core in some way.
So that would be my my quick take.
So just on that, David Smith has to has picked up um the JSON the content parsing work.
Um so we should be able to hand we should be able to handle um if that could when that's complete, however long that takes, but we should be able to handle JSON requests with the request object without having to need extras, and that would be nice.
And then exactly what we do about you know the equivalent of serializers or um DRF's um generic views, but that's an interesting question to resolve over the next few years.
Come on, Sarah, there must be one thing that when you're when you're sat there and you're you're busy banging away at your computer and you're like, this is really annoying.
Why do I have to do this every time?
What's that thing?
What's that itch?
Well, I think what you said with the aut is something I've done a lot.
So yes, I agree to.
And uh, but I I don't have uh anything in mind.
Okay.
Well, let me ask you, because we've talked about front end.
Have you had a chance to play with HTMX?
Do you have any thoughts on on that?
No.
I didn't I didn't have time.
Uh I just uh watched the documentation and uh have done as many people like, oh I really need to try out, and I didn't have time.
But uh but I know some friends uh who used it uh uh um also in in France they replaced uh everything uh in front end to like for for example they they had React and they they changed to HTMX and uh they they seem really happy with that, so seems to be really promising.
So hopefully I will uh have some time to to try.
Yeah, I think it would it was this year or last year there was a Django Con talk uh about exactly that about swapping out um yeah mo most of React for HTMX.
Well, anyways, yeah, lots lots lots going on, lots um and you know we didn't really talk about Django Girls, Sarah, or organizing DjangoCon Europe, but Carlton and I both had a chance to to see you there, as well as the other organizers, and that was that was really a great conference.
I mean, I loved being in Edinburgh and my first DjangoCon Europe.
I finally got to meet all these people I'd only known about online.
So that was so thank you for your work on that.
Yes, I'm really happy.
And uh and I was happy also to see you for the first time at DjangoCon Europe.
So it's really nice to see uh everyone you have talked to uh online uh in real life.
Yeah.
And and we you know, we we've said this before, but we need Django We needs this.
Like there's so much work that is done, and you know, once twice a year to actually just see it person face to face, you know, I always come away with more energy from the conference.
Carlton, wrap wrap us up here.
I'm just babbling.
Well, I was just gonna say anything you want anything you want to shout out before we um call it quit, Sarah?
Or you maybe know, it might, but if there is no
there is something uh uh as we as you know, I'm uh really a big fan of accessibility uh if uh you have any uh any concern or any question about accessibility we have now a new category in Django forum for accessibility so if there is uh anything you want to to ask or talk about uh
you can go to the forum and uh we will be happy to answer.
And uh also um I'm trying to write uh accessibility checklist uh from my point of view and hopefully I will be able to share it soonish.
So uh this is something uh we which could help uh people who are not aware of everything to to be able to to do some checks on accessibility uh from their own.
That's great.
I'm such a huge fan of checklists I think checklists to rule them all.
So all right well thank you so much for taking the time to come on really appreciate it and all the work you've been doing.
It's it's truly like gives me inspir like I get excited it's just seeing you know the SarahCon conference that we should have you and Sarah Boyce and many others who just come in like a breath of fresh air and just just do stuff and just uh it's I can't tell you how refreshing it is to to see that because during COVID sometimes it felt like we were hanging on a little tight but now I feel a lot more relieved.
So thank you for all that.
Yes thanks for coming on Sarah.
Right let's call it quick um with Django chat um join us next time bye bye bye bye bye