More than a month ago, FLOSS/fund was launched: $1 Million per year for free and open source projects. This fund is significant, as it can potentially support 10-100 or more projects. Any entity (individual/group/organization) worldwide can apply for funding. This is done by creating and submitting a funding.json file. funding.json contains information about project(s) run by the entity, and funding needs. Creating and submitting it perhaps takes a few hours. By providing structure, funding.json serves as a "signal" - helping anyone (not just the FLOSS/fund) understand the funding needs of the entity.
Just a few days ago, FLOSS/fund started releasing a daily dump of their internally maintained funding request database. This is as an important data point in the debate around the sustainability of FOSS funding. Let's get in a bit more background, before we start looking at the data.
FLOSS/fund aims to fund between $10k US to $100k US per project. Any funds provided are "no strings attached". Projects such as Zig Language and Vue.JS have applied for funding. This podcast serves as a good FAQ to the fund.
The fund is an initiative by Zerodha, which is among the largest stock brokers in India, to contribute directly to the global open source community. This is not Zerodha's first brush with the "no strings attached" funding model; it's a tried and tested method for them in various initiatives and investments. Zerodha was recently awarded GitHub's OPSO (Open Source Program Office) Leadership Award for 2024. It is also part of the Open Source Pledge, which aims to encourage companies to contribute at least $2,000 per full-time employee, annually, to dependent open source projects. Zerodha has directly funded, and continues to fund directly or indirectly, various initiatives such as FOSS United, arguably India’s largest active FOSS community.
FLOSS/fund (henceforth called 'Fund') is a valuable social experiment. Beyond the one million $ the Fund will provide, the funding requests that the Fund is able to generate provide valuable insight into the FOSS community itself.
In the thirty odd days since the fund started, how has the FOSS world reacted to the fund ? Who and what type of projects have applied ? Has it had a global impact ? What can we learn from all this ? Seeking answers to such questions, I have downloaded and analyzed the manifest database (henceforth termed just 'database'). Note that this is an independent report (and not funded!), generated using the freely available database.
First, the headline numbers:
As of 27 November 2024, 30 organizations, 39 individuals and 4 groups have applied for funding. These entities together represent 130 projects. 44 entities - 18 organizations, 25 individuals, and one group are requesting more than 10k USD (the lower threshold of funding - rest are lower than that) towards their project(s). Funding requests are in these currencies : CAD, EUR, GBP, INR, and USD, indicating the areas of the world where news about the fund has reached. A total of roughly 2.4 Million $ US has been requested in funding, by 73 entities. Note that funding numbers are based on the maximum requested from a single source1; the actual funds required by the entities/projects will likely be a multiple of this number.
The general pattern in which these entities are asking for funds is shown below:
Entities seeking 100k or more (5 of them, clipped to 100k) take the lion’s share - 27% of the overall funding being sought. Entities seeking in the range 10-20k (16 of them) account for 11%. Entities seeking in the range 20-50k (12 of them) account for 18%. The range between 60-80k and 80-100k is almost even - 6 and 5 entities in those buckets asking for 21% each. The combined funding requested by all entities seeking less than 10k in funding ((21 of them)) is less than 40k USD - roughly 2% of the overall funding. This limited data still shows that the bulk of the funding needs are spread beyond 20k, an indicator perhaps that the Open Source Pledge got it’s numbers right?
The impact of any social experiment must be measured in at-least two ways: a direct measurable impact, and an indirect indicator. In the case of the Fund, the direct impact is already defined. No funds have been released as of now, and no dates have been announced. The Fund is open for new requests, so anybody looking for funding should consider applying ASAP of course.
The data, visibility of the problem and the discussions that the Fund is generating is the indirect impact. This can be massive. How ? Most of us agree that project creators and maintainers are not adequately compensated to keep it sustainable. Stories about maintainer burnout abound. For a community that works almost exclusively on "numbers", it is ironic that we have no reliable metrics on the magnitude of the funding problem.
My opinion is that the numbers that the Fund has been able to attract till now are unexpectedly low. For perspective, GitHub has an estimated 100 million users, and at-least 28 million public repositories. Even considering that not everyone and not every project needs funding, we are staring at a Jupiter sized gap2.
What can't be measured, can't be improved. To effectively move the needle, we need to build a good understanding of where we are right now. We need hard data. We need many many more projects to submit funding.json. By the way, finding more projects is not the burden of the Fund. The Fund is probably happy for this initiative to grow organically. It's just me here trying to convince you that we need warp speed on this to reach a sustainable system faster.
Among the funding applications, 8 entities have not requested any specific amount of funding, i.e. all funding plans are 0. That's not useful signalling. It is weak signalling at best. But what about the remaining projects ? How can we get them to signal ? That's the key.
No - you are the key. Yes, you, dear reader! You are certainly aware of at-least a few projects that need funds - potentially even projects you use everyday. Sadly, unless you act, your favorite projects will not apply to the Fund for any of the following reasons:
they may not have heard about it
they may think that their project isn’t “so important” and others should get the fund (they may be right!)
they may quickly look at the existing projects and decide that it is "not for us"
they may be a big project and think that the Fund must approach them and fund them if that's the idea (note that this is not criticism of anybody, and I am not making a value judgement here; everyone is free to have their own opinion), OR
they may feel that they won't get funded, AND consequently
they may feel that it is not worth their time creating funding.json and applying
Call to Action
I feel strange writing a "Call to Action" in the middle of an article. That is not the way. So what is ?
If there is one use applying to the fund - it's the "signal". Frankly, it shouldn't matter if your project is important or not; that's a matter of perspective and interpretation. While I use the word "they" above, ultimately a FOSS project is its users. Users help drive the direction of projects. Users help projects stay relevant. And users are important to help projects grow and flourish. Here's how you can help with that:
Do share information about the Fund with your favorite project/maintainers, and your friends.
Write to them a note that says why applying to the Fund is useful
If the project feels that it's too much effort to create funding.json, and if that's something you can help with - then please do that. It may take a few hours, well worth it if the project has been valuable to you. Submit a PR. Start the discussion. This could be considered a 'chore' commit...
Of course, you could share this article as well. And may I humbly suggest again that you write a personal note/DM/whatever to the project developer/maintainer ? It can take a while for them to respond, so an early start is useful.
The Evolution of FLOSS/fund
To understand why all this is so important (and why act, you must!), let us have a look at what has happened with the Fund in the past month.
I am not surprised that the Fund was off to a flying start ! I am no good at analyzing social media feeds, but I can see that most of the news around the Fund is clustered just after the launch - in mid October. By Day 5, the Fund had requests for over a million dollars. It crossed a mil and a half on Day 15, 2 million on day 25, and on day 36 they are just shy of 2.5 Million.
So what’s the problem ? The number of new entities entering the fund is down to a trickle. On 12 of those 36 days - most of them recently, no entity joined the Fund. The gaps are becoming painfully obvious. And right now, I am afraid that this is tending towards the asymptotic limits of inaction....
The split of funding requests, by currency looks like this:
The total for CAD is tiny : 790 $, which is why CAD is omitted in the chart above.
I’d love to see more currencies here. Four projects (among the 73) accept funds in more than one currency, which is great to know! Three of them access USD and EUR, and one accepts USD and INR.
Now that we have seen the numbers, we need to address, on priority, the elephant in the room: How invested are FOSS Developers and users in the success of one another? Are we a “community” ? If we as a community need to thrive, it is imperative that we help build a picture bigger than ourselves and our projects. Getting more projects in the Fund helps paint precisely such a picture. Actionable, high quality data has a place in building the ecosystem.
Here is a word cloud of projects that are in the funding database right now. Do you see your favorite project xyz (pun intended3) here ? If you are finding it difficult to search the image, please checkout the searchable list on FLOSS/fund.
The immediate focus of the Fund seems to be on projects that are “systemically important", and that’s hard to define. The often quoted XKCD 2347 captures just one area where this applies:
How can such projects from various areas find the Fund ?
I don’t know if this is true, but my guess is that when the committee of the Fund has to decide, it may well have to decide on the systemic importance of a project relative to others in the database. Every FOSS developer who has heard about the Fund will likely have an opinion on which project must be funded. While Zerodha itself primarily runs an online business, the Fund is agnostic of alignment with their business (the ones aligned with their biz are directly getting funded already - e.g., see Typst and a back story). They publish an indicative set of tags to drive home this point.
As of now, the following tags are not used by any project in the database. Does your favorite project fit in ?
The projects that have applied span a colorful rainbow of tags; this will look prettier with your favorite project in it:
No article on FOSS can be deemed complete if it doesn't include that one thing that generates ideological debates and divides us: licenses. The OSI approved license list sports 119 licenses at this time, just shy of the 7 bit limit. I hope the community finds no need of breaching that barrier. Jokes apart, what kind of licenses are being used in projects submitted to the Fund ?
MIT: 44, GPL: 47, AGPL:14, Apache:23, ROTLF4: 13
Sorry no pictures for this. I don’t want to start a debate on this. Let's just call it a tie, shall we ?
Various projects have also reported financials, an optional part of funding.json. 16 entities have reported expenses, 14 have reported income, and 3 have reported taxes. That's a cumulative income of 3.5 Mllion $, expenses of 5.4 Million $, and taxes totalling 20k $. Most of these numbers correspond to the last 5 years. Not a pretty picture.
Does FOSS pay and do numbers lie? Regardless of what we think, it's on us individually and collectively to do what we must to set things right.
One last thing - the picture is somewhat skewed by a small number of outliers in the database. The Fund caps support to an entity to the tune of 100k $, and some projects have higher plans than that limit (500k, 192k, 144k and 120k). If I cap those at 100k, the overall need for funding (from a single funder) comes down to 1.84 M $. That’s not representative of the impact or needs of FOSS.
Come on, let’s get many more projects in! Not everyone will get funded, but the data of the other projects may be used by anyone (it’s CC-BY-SA-4.0 licensed) to spawn various other initiatives. What should we aim to reach ? 20, 40, 80, 100 million ? Aiming for a specific number is moot. If anything, we should just aim to find every FOSS project in need of funding. Let’s help build an evidence based case for sustainability of FLOSS funding.
May the FOSS be with us!
Disclaimer: while these results are based on the database dump from FLOSS/fund, the interpretations are my own. Feel free to point out any mistakes, and I shall do my best to correct them. The code I used to do this analysis is on github.
Highest across one time, yearly plan or monthly plan extrapolated to the whole year.
Jupiter is 1300x Earth’s size! That’s more than 3 orders of magnitude.
Oblique reference to xz utils and that recent debate
Rest Of The License Files