← Back to Show Notes

Transcript: Django Software Foundation

Hello, and welcome to another episode of Django Chat, a weekly podcast on the Django web framework.

My name is Will Vincent. I'm here with Carlton Gibson. Hi, Carlton.

Hello, Will.

And this week, we're going to talk about the Django Software Foundation, which

runs Django, and more broadly talk about what that does and how the code is managed. And yeah,

hopefully shed some light on all the behind the scenes work that makes Django what it is let's

start off Carlton what is the Django software foundation well okay so it's the the body which

has responsibility for the governance of the Django software project right the Django the

thing you use to build your web apps and we we talked in some previous episodes with like Frank

and others about the history of the DSF but one of the early decisions was when it was decided to

open source it was to make it kind of a community run and community-based thing and to do it in

for one of a better phrase the right way and so the django software foundation was the the

the organization created to do that yeah so it's a non-profit that has the legal and financial

responsibility for django and i think it might be an interesting point to make about how open source

is organized and governed because at the end of the day all open source needs some degree of money

for various things and usually there's sort of three buckets one would be a corporate sponsor

so like google with angular facebook with react where it's engineers within the company build

something that they need and then they have permission to open source it and those engineers

are paid by those companies and can work on the framework project there's a solo uh case so this

would be like Vue.js with Evan Yu, or Laravel with Taylor, what's his name, where you have

sort of a godlike figure who created it, or Linus Torvalds with Linux, who monetizes it

through consulting or other ways, but there's sort of one solo person, or there is the non-profit.

And I actually don't know of that many other open source places that are set up as a non-profit,

but this is what Django did right from the beginning with the idea that we don't want

to be limited by one or two individuals. So Django actually did have, took a page out of the Python

book with Benevolent Dictators for Life. So Python programming language, Gita Van Rossum, who created

it, was the sort of last arbiter if there was a dispute that couldn't be settled, though he just

stepped down from that. But he was that for many years. And for Django, Adrian and Jacob had that

role for a number of years, but they stepped away three years ago. We'll put the link.

But again, but it was always the Django trademark and the legal financial stuff was put into this

nonprofit basically, yeah, when it was launched, which is very, very forward thinking. And so

the DSF is where your money goes if you contribute to Django, which you should.

It pays the fellows, Carlton and Marius. It contributes to conferences, does a number of

community things but is separate from the technical side so the dsf does not tell you know

carlton or or core members what to do instead it protects and promotes django itself yeah i mean so

maris and i we we have a brief with our job is to triage tickets handle security releases handle

the releases of the the project uh work with the on the community side so you know be be active in

the forums and the mailing list to the extent that we have time but you know these are kind

of order priorities like you know we can't we don't spend all our time on the mailing list

because we're spending all our time on the issue tracker you know it's but we'll pop in on the

mailing list where we can um but we're not you know it's not like the dsf is so you're on the

dsf board it's not like you're ringing me up and saying hey colin you need to work on this or work

on that it's like we're very much self no self-managed i think we have to be i think from

an legal perspective we have to be. Well, and even, you know, this is a little bit into the

weeds, but so I'm the treasurer of Django Software Foundation, but I'm not allowed to be paid as a

board member, even though there's all this work that's done. So there's a woman, Catherine Holmes,

who's fantastic, who does a lot of the actual execution of, you know, sending a Western Union

check to XYZ place. So there are sort of these rules set up. But yeah, the Django Software

foundation a lot of it is thinking about you know there's corporate sponsors um there's a couple of

them that provide majority of the budget actually so having conversations with them to make sure

they're getting something from it it's a lot of it is taking requests for various um outreach so

jango girls or the dsf helps with um conferences or different events but a lot of it is but you

know it's an interesting thing because like all non-profits it sort of needs to exist but it's

not trying to make money right like the dsf could snap its fingers and do any number of things to

make more money but that's not really what it's around for it's around to you know to pay the

fellows to to do a bit of stuff but really just to protect django itself right and the idea the

important thing is that django is sustainable not just this year but you know five years hence right

we want yeah and that's one thing that uh frank who's the president um talks about is that you

One of his longer-term goals is to have some degree of—so the overall budget is like around $200,000, by the way, so it's basically nothing in the scheme of things—that he wants to have $50,000 or some amount that can be used for the day when Django goes away, and that will happen, that someone can turn out the lights, right?

That it's not just like, whoop, Django's gone because some new hotness came in.

So that's one of his goals.

that's one of the examples but also things like protecting the django trademark um who's going to

do that well the dsf steps in in those cases um if there's so you know so these are some of the

examples and not you know as i learn more on the board i'll share them but but basically it's

the main point is it's separate from the code itself which is currently the django core team

the fellows the security team um two different realms a lot of overlap same people on the same

places like james bennett is the treasurer on the dsf and um obviously core member but

separate realms in terms of responsibilities yeah i mean and there's just little well i say

little things but they're not little things it's like the servers to run the django project.com

website and docs.brango the docs.django project.com site well those need funding those need

you know resourcing so there's an ops team but there's also an ops budget that has to come out

the you know dsf funds the official twitter account um for django uh you know i have access

to that now in the context of being the treasurer so you know historically there hasn't been much

effort around fundraising and again that's some of the things we're talking about is you know

if if the budget doubled are there things that we could do that we're not currently doing maybe

maybe not right but the discussion needs to be had because one of my goals is to add for example

merchandise site to django which i'm yeah i really want that i want to i want to buy django um django

pony pin i want you know yeah we have all the resources i mean these these have been set up we

have we have all that stuff i'm gonna make that happen but it's you know i could just do it but

i'm doing it within the dsf i mean i could just like do it and collect money and give it to the

dsf but i'm doing it within the construct of the dsf so it's a little bit more work to do but like

that's an example of something that we will have that will help the community all the money will

go right into the dsf um and you know and there's any number of other things like for you know

django does not do you know corporate sponsors there's no job board there you know there's all

these levers that could be pulled if they need to be but yeah you know it's a question of whether

they need to be pulled though for example i think the fellows certainly should be paid well and

enticed to to stay on since the knowledge that you and marius have built up you know can't be

can't be paid enough um though that's not why you do it but anyways there's all these concerns

but well there's two things you said that one is about doing the shop within the um the merchandise

shop within the contract of the dsf and i think that's really important because it's about

sustainability so you could set up a merchandise shop and you could run it for a year and then you

could be like i haven't got time for this for whatever any any number of totally legitimate

reasons like i haven't got time to keep giving time away for nothing because i've got family

i've got work i've got you know pressures of life yeah absolutely valid but if you were doing it as

a sort of solo project that would then die and it would go away whereas if it can be set up within

the auspices of the dss it can continue and this is where django has succeeded where so many open

source projects have failed is that django now yes there are some old hands who are still around

but they are not the people doing the majority of the work on django now they they're very

knowledgeable they're available they've still got time to give but the the new stuff is new

contributors and jangle has made this move from the original cohort to a fresh cohort and it's

still going and it's still vibrant and it's there's still more people coming in and there's

still old hands around and there's a mass you know that that that even longevity of the project is

directly responsible to that and i i suspect it wouldn't have happened if it weren't for the dsf

and the dsf structure yeah no exactly and and you know and honestly i'm so impressed by you know

frank and the other board members and the work james that they have been doing and continue to

do just again with that that goal in mind because um you know it's great to work on something where

everyone's passionate most people aren't being paid you know it's just like we're all like yeah

like we and people understand that life gets in the way right like people can't always do the same

level of contribution but but again the key distinction is there is a dsf it's a non-profit

that manages uh the legal financial side it is separate from the code side though it funds a lot

of this work and this is all set up with the idea of making Django bigger than any one or two people

so that you know it will exist and hopefully perpetuate for some time to come until some

other greatness comes out or as it's happening now like things are being moved into into Django

itself right like all this async work that yeah you're dealing with that um Andrew Godwin's

working on that Tom Christie and others are working on you know it is being put into Django

itself largely yeah but there's but like you know a lot of the talk thus far has been about how you

know what about the end of jango no jango is not ending this is the thing is that adam johnson

who's one of the co-contributors we came on the show he talked about mysql and you know why we

might use that instead of postgres or whatever um but he he used this great phrase we want to

maintain jango till the heat death of the universe um yeah why not like so we're let's talk about

bringing in a content negotiation framework is you know it's all kind of new new features that

are coming in and will bubble in and will appear Django is fresh and lively and it's it's you know

it's still vibrant and you so you come along as a new contributor and you can give your you know

you've got one evening a week where you can give an hour and a half one evening a week if you can

give that time super you give that for three six months and then you think oh do you know what I

haven't actually got the time to continue this at the moment that's great too because you know

you'll still be around you're still in the community and then a year's time you come back

you say yeah do you know what that that hour a week that I used to really enjoy doing I've got

time to do that again and I'm back and I'm going to give

some more and that's how Django works

and because it's a non-profit

it and because it's a community run thing like it's not like you're lining the pocket of someone

else you you contribute to yeah exactly to an open source project that's run by megacorp you

are lining megacorp shareholders pockets with free labor you contribute to django yeah there

are companies using django to make money and those companies should be contributing back to the dsf

financially and probably they're not doing that to the extent they are but when you contribute to

Django you're contributing to a community project not megacorps private tool even though it's open

exactly and I would just you know we said this in a lot of podcasts but the community is really

fantastic in Django and contributing all these different ways is a great way to to see that

right so how do you get involved well okay you can contribute to Django and all of the rest but

you could also join the DSF so there's an applicant online web form you've got to fill in and you know

all you have to do is say look I use Django in my work and I love it and you could you can join the

dsf and then you can be on the dsf mailing list and you can find out you know about what's going

on and you can vote in the elections for the board members and you can you can help have a say in the

future jangle well you need to apply to be a member yeah but i don't think the applying to

member it's not like um i don't think it's like uh you know you have to have crawled over broken

glass to to join i think it's just we can see if we keep this in or not i mean there's around 180

people like for example the most recent board meeting we had a couple people were submitted

and it was basically like do we know who these people are if we do they're in if we don't they're

not yeah so okay so be part of the community and then you can join the dsf right so if you're known

if you're so you what did we say in another episode we said you know write a blog post

write you know contribute yeah write a blog post go to a conference anything i mean they let me on

as a member you know i haven't done a third-party package no but you've written three books and

run a podcast oh yeah but then they uh then you can vote yeah that that is who votes on the board

for example every year um yeah so and get involved it's not it doesn't cost you anything and we and

django needs this django needs people who are using it to to speak up and say i'm in you know xyz

country i'm using this this use case and it may be something that we're not you know django the

dsf is not thinking about um but we should so you got to you know raise the flag and let us know i

I mean, the whole point of the DSF and our meetings

is to try to understand what the community is doing

and help Django represent the community.

Like, that's the whole point of it.

Yeah.

And, you know, we talked about in another episode

about some of the resources.

We talked about Django Snippets,

which has got some great content in it,

and it's very interesting to read through the content,

but it needs an update.

But if people were, you know,

people are listening to this thinking,

you know, I could do a bit of contributing,

not necessarily on Django.

Well, you know, could you help run Django Snippets

and put some pull requests in there

to make update that or you know there's a jangle people website which has kind of needs a lot of

work in love there's jangle packages always needs activity there's all the jazz band probably um

projects which all need yeah man how you know yeah and if you take you can take a selfish approach

this is the best way to get a job now or in the future is to be involved to be out there to be

public you know i mean honestly i started writing the books because i was out jobbing uh you know

was with a startup and it got acquired and as i was interviewing i was like you know i've always

wanted to write these books like even if they don't sell i think that would be a good thing to

do and you know they helped me so to the point where i could have you know gotten the jobs i

wanted but the books were doing well enough i could just do that so it's it's more productive

use to to give back than to send you know an extra 50 resumes out into the to another i would say

yeah i mean what's the trick that there is a in the marketplace there is a massive shortage

of developer skills if we're going to get into jobs and hiring right and it's like the lemon

problem right but and yet for cars you can't get hired right or it's difficult to find the job

well the number one way beyond you know developing your skills and all those things which you do at

your keyboard that you're very comfortable with is getting out there and being sociable

and going to a meetup or doing a blog post and putting it out there or whatever it is that

is your thing that enables you to put yourself out there but doing that will get you yeah hired

much quicker than you know reading another book on you know redis or whatever it is it is networking

and you know for me i mean you've been doing this for forever carlton but i'm still i don't know

however many years into django i mean i've made peace with the fact that i will my skills are

improving hopefully every day in a marginal way but i am by no means the most qualified person

to host a podcast on Django. And yet here I am because I'm just doing it. And so that's provides

value. And, you know, and I think also it's, I've thought more and more about this to get

philosophical for a second about, you know, if I'm not coding hardcore Python or Django

things every day, part of me feels like my skills are atrophying. But I think it's really more that,

you know, we all have that in the back of our head, right? It's not imposter syndrome. I've

been doing this long enough to be like, you know, I could go and figure that out. I've done it

before, it's more just thinking about there's different types of work and knowledge, right?

So when I spend, when you and I talk about community members that contributes, when we,

when I talk with people about architecture questions, like more and more, I'm talking

more high level stuff, you know, that, that counts, right?

I should, I shouldn't have this idea in the back of my head that like, uh, I'm like, you

know, my foundation is being degraded.

It's more like I have spent a lot of time and I have that foundation and I do, I will

spend time to, you know, get back to that.

But.

it all fits together right so the conversation you have at a meetup with someone writing a blog post

talking about architecture with this and that being the stupidest person in the room you know

that makes you better and then you turn around and you go oh actually i know something right

like people look to you and say what do you know and you or you go well actually i i do have an

answer i do have an opinion on here because i've been doing all these things that are community

related and it's not again just bring it back it's not just only staring at your keyboard and

you know doing project euler which is great and fun right but it's not it's not all that kind of

stuff and that's not what gets you hired right it's it's no no no blog posts speaking all the

rest because because people don't work with code they work with human beings and they can't and

the problem with coding is they it's hard to tell it's not like a doctor people can't tell if you're

any good unless you show them something so how do you show them something probably you can't show

the code you wrote at your job so maybe you have an open source project or maybe you just gave a

talk just something maybe he did one pull request on django filter yes that's the best thing to do

like do a documentation ticket if you've again if you've contributed to django in any capacity

and you're applying for a job with job with django top of the queue like right i've hired people top

of the queue right but you you've said yeah and you've said write a blog post do a conference

talk or whatever maybe not even that like maybe that's actually setting the bar too high in that

if you've gone to the youtube channel and watched the videos from the conferences and then you've

pinged the author the the person of a talk that you gave and said oh wow i watched your

you know 2017 talk on so and so so and so it was amazing and i did this and they'll be like wow

great and then you've made a connection in the world and then you go to a job interview and

they say oh what's your you know favorite aspect of django and you're like well that you can use

indexes in this way from the orm you know just declare and you're talking about something and

they see your liveliness and they see that you know this stuff yeah and all you did was watch a

video yeah well and i mean i watched a video that you gave carlton and i sent you an email

and you know that was just a nice here there but then when i met you at django con uh it was like

oh there's we've we've discussed before yeah and the same way there's you know probably for me

there's several dozen people who've read you know commented on something i've done a book a post

video you know said something and maybe they followed up with a question and and we have a

dialogue and i'm i'm happy to help these people right because they they inform my ability as a

teacher and but also if you think about you know purely transactionally like they're getting a lot

of value out of me right and but i'm getting something out of them too so again the community

wants wants you whatever your level yeah i i'm deeply uncomfortable about treating human

relationships transactionally all the time like you know i think there's you know i don't i don't

go into them as a psychopath but i try to you know sometimes you have these moments you're like why

am i doing this i think there's some aristotelian point to be made that these things are incommensurate

like they shouldn't be you know they shouldn't be measured on the same scale i don't know i don't

know we'll come back to that anyhow so how so how have we got from the dsf to this talk about

community it's because that's what the dsf is right it's community-based and all the rest yes

and the dsf and a lot of the django bigwigs are they want to hear from you wherever you are so

take the time to send them an email tweet write to the django software foundation come to a

conference it can only help right either we'll if you have a question and that's technical we'll

set you on the right course or maybe it's a really deep question that it's probably something with

that if it seems like it hasn't been solved you know it's probably an ongoing debate within the

django community too because that's the thing too that i i realize more and more there are some

things that are great you know new ideas like yeah we should have a merchandise shop well there's

actually a bunch of people have had that idea and have gotten 80 of the way there it just needs

someone to take it over the line right there's a whole bunch of those things that can happen

what's the best way to get in touch you can send emails if you go in the django forum um we

mentioned that in a previous episode on resources that's maybe the best place to go because everyone

can see it and chime in and i would say go there it's a good place it's designed for these non

it doesn't have to be a narrow technical thing it can be but it can be a broader more subjective

thing around using django in interesting ways um so yeah go there and then people get to know you

right and who knows where that'll go that was the django software foundation right so it's the the

body that helps maintain the framework and we do that with the fellows and the other contributors

and you know longer and if you use it you really should contribute even if it's a small amount

we'll put the link it goes to the sustainability of django which doesn't come from nothing

and it's not being run to make money at all it's being run to exist and perpetuate django

till the what the the heat end of the universe yeah the heat death the heat death of the universe

was adam's phrase yeah no but okay so let's stop now but if your company uses django then your

company should sponsor the dsf like talk to your boss yeah think about it like what what is the

value Django is providing for you and your company, what is that worth? I mean, we have an

episode that has come out with Tom Christie, who runs Django REST Framework. He went to companies

and said, let me work for you full-time for $100 a month, which was the cost of a small number of

companies to let him focus on Django REST Framework. What is Django worth to you? Or if you're an

engineer within these companies, there's probably a way that you can, I don't know if it contributes

under charity it's a non-profit but a way that you can have access to directing the company's

giving Django is a great place to do that especially if you're using Django okay thanks

very much and join us next time bye-bye all right bye-bye everyone