With DSF Elections coming up and a new board taking place soon, I think it’s a good opportunity to start a thread with ideas on what the DSF would/should do if the current operating budget greatly increased. This was previously discussed in this Twitter thread.
I have been Treasurer of the DSF this year so I have thought a lot about this issue. Financially, the DSF more or less treads water at this point. Total expenses in 2019 were ~$184k with the majority going to the Fellows followed by conference/workshop sponsorship. Income comes from corporate and general donations. For 2020, we are down roughly $13k as of this writing, but the total balance for the DSF remains ~$155k so this isn’t an urgent cry for help. Nonetheless, the finances are important and should have some consideration within the community. The DSF Board has added GitHub sponsors and an official merchandise store this year which helps add general/corporate contributions.
To me, this is a chicken-and-egg problem: we know we could raise more $ if needed but there’s no clear goals for how an increase in revenue would be spent.
So my question to the Django community is this: if the operating budget magically increased how would we spend it?
One thing that would be really valuable would to have someone who’s role (inter alia) was to guide people into getting started (particularly with contributing). There’s a guide, there’s issues, but there’s a gap to getting people going.
There’s also a load of work around things like GSoC, and the djangoproject.com website, and all over, which doesn’t fit into the capacity of the Fellows (even assuming it’s in-scope officially).
In the past we’ve talked about the idea of a Docs-Fellow. I still think that would be a good idea. So a Docs and Community Manager role, to sit alongside the current Fellows, who’s main role is the community management of the technical framework bits more.
Beyond that, our outreach efforts to get more contributors that don’t fit the traditional demographic could do with a boost. Part of that is recognizing the community we already have better. But part of it is helping folks get into contributing. (This is the same point from a different angle.)
On the Features side, I don’t think we’re missing much — Django evolves, and that continues — with one exception, I’m not convinced we need to raise funds for coding efforts per se (assuming the charity status could be worked around with the correct framing.)
The exception here is async. It’s a massive job, and @andrewgodwin is leading the effort on his own. If we could raise money to fund a chunk of his time, and preferably an amount to help others join the effort, then I think we could see it progress, much faster, and much more reasonably — Andrew absolutely should be able to work on this stuff without it being solely a labour of love. My guess here is that if we could fund the foundational steps of the Async-ORM phase we’d find rounding out the corners to be something that could evolve in its own time.
Those seem the clear points to me. Interested to see what others think is missing?
Carlton has/is doing work with Google Season of Docs to improve the onboarding section but I agree a Docs Fellow is needed to truly improve/update things as we’d all like. Also that finding a way to fund Andrew on async would dramatically speed things up.
For funding sources, we added badges for corporate members this year but could do a lot more to showcase our corporate supporters, run additional campaigns like the JetBrains one, have paid listings for agencies, improve the merchandise store, have a sponsored job board, etc though all require a lot more work from DSF Board and community to make happen.
Just on the work front, it takes coordination — Hey, it’s THIS that needs doing! — but I think the DSF members are generally involved and happy to help on things, particularly when they can see that they’re useful and bounded in scope.
As to what to raise money for, I’d like to see a specific drive towards the Django documentation, website and surrounding content rather than another person in the current role of Django Fellow. We’ve discussed the idea of a “why use Django?” site at many points that gathers case studies and companies that use it; if this is permitted by the non-profit rules, I’d love to have someone work on that along with everything else in general (as well as community management things like forum moderation).
Funding me to work on async will necessarily first involve me having time that can be funded rather than working five busy days a week, as currently (work/life balance extends to open source work). I plan to talk to my workplace about this, and I expect that to go reasonably well, but being able to fund others would also be very useful, especially considering my current hourly rate even if you base it off my salary and add a discount, rather than my more normal contracting rate.
The Django docs are very good. I always judge if I’m going to go for a package by the quality of the docs.
IMHO we could look to the Stripe documentation. They are the best I’ve seen.
With the Django docs, perhaps the task could be split into “Quick Wins” (easy jobs that won’t take much time but just need someone to do them) and then “Medium Term Wins”.
The addition to the Docs I would like to see if that sometimes the docs do examples in the shell, when it would be just as useful to see them as Django code as well.
I also would like to learn more about contributing and getting over the impostor syndrome many of us without Computer Science backgrounds have. For example I’ve been coding for nearly 22 years, 2 years in Django and I still don’t think I’m “good enough” to contribute. (My contribution so far seems to be stirring up this discussion!)
Also - huge kudos to @andrewgodwin and his work on async. If we are ever in a pub in the future, I will buy you several beers - but all at once - not one after the other!
I would definitely join with the increase-community-efforts crowd. I’ve been looking into how to start contributing for a while now, but “go see the contributing guide” just doesn’t work for me. And it seems at least some others too. Not saying this is all I got, but whatever I got definitely didn’t get me started.
At least initially, a holding hand would be much appreciated. Someone to guide people like me around, showing them the ropes.
TBH I miss a project management-like interface: a list of tasks to be done, project owner to explain them and direct the efforts, scrum master to crack whip and get me to do it, etc.
For example: I have a bit of understanding about asyncio and could definitely help Andrew, but aside from general guidelines I have no idea what to do there. I could try discussion, but it’s highly likely I will be off by miles.
Anyway, I have a few programmers here and could definitely provide a man-month’s worth of effort per year for starters, then see if we could increase.
I need some hand-holding for that, at least initially, though.
This is an idea that really resonates with me - and if I’m “reading the room” correctly from the other responses, this seems to be the common thread here. (Well, that and cloning Andrew, but I don’t think we’re quite there yet.)
While we’re not in the same league as some other open source projects, I do see the value provided to those projects by the people in that type of role and wonder if that same degree of value could be realized by us.
I guess I’m just mostly concerned that it may not be sustainable.
From the original post:
And while I have no knowledge on this either way:
Are we really sure about that?
Having reserves less than one year’s operating expenses does not seem like a comfortable position to be in.
So I guess the opinion I would add here to answer this question:
My first choice would be to expand reserves to be a solid 18 - 24 months of current operational expenses. After that level is reached, then I could see adding another staff member - with the corresponding increase of reserves.
My first choice would be to expand reserves to be a solid 18 - 24 months of current operational expenses. After that level is reached, then I could see adding another staff member - with the corresponding increase of reserves.
+1 to this.
I’m +1 to having another Fellow.
I’m also +1 to hiring a full-time Executive Director to help take fundraising off of the board’s plate and to help with other areas that directors may not have time to focus on.
Agreed. I think we can/should do more for our corporate members. For instance, highlighting them in the sidebar of the docs as we currently do for individual members. Similar to how DRF does it. Making corporate donations have a clearer impact in terms of visibility and ultimately recruiting for our sponsors. And also making an effort, for example early next year, to reach out to the known companies that use Django and say, hey, we have new features for corporate members and also it’s important that Django finances are more secure both long-term and to fund new initiatives such as a Docs Fellow. My 2 cents anyway.