A crowdfund matching mechanism for public goods, like open source
A recent paper entitled Liberal Radicalism proposes a mechanism to fund public goods in a new and unique fashion. Written by Vitalik Buterin, Zoë Hitzig, and Glen Weyl, the paper introduces a mechanism called Capital-constrained Liberal Radicalism (‘CLR’) which I’ll explain in greater detail below.A summary of the paper (and the CLR mechanism) from the paper is as follows.
We propose a design for philanthropic or publicly-funded seeding to allow (near) optimal provision of a decentralized, self-organizing ecosystem of public goods.
Individuals make public goods contributions to projects of value to them. The amount received by the project is (proportional to) the square of the sum of the square roots of contributions received.
Soon, we’ll dive into ‘the square of the sum of the square roots’, which is the crux of Liberal Radicalism. It’s worth taking time to explain. Before that, we’ll start with the two basic components of the mechanism: crowdfunding and matching donations.
- Crowdfunding: Individuals crowdfund donations towards public goods (for example: open source software).
- Matching donations: These individual contributions are ‘matched’ or ‘topped-off’ by a government, grants program, or private philanthropist
Crowdfunding, with a matching function. That’s it. The philosophical undertones here come from Kantian ethics — specifically, the categorical imperative.
Act only according to that maxim whereby you can, at the same time, it should become a universal law.
By making an individual donation, you contribute to a public good. This funding is guaranteed to be met by matching funding, widening the reach of your donation. What you do becomes “law.”By donating with one to one matching, you increase the power of any single donation in direct proportion to the size of the donation, making people more likely to feel like their money is having an impact. This is the premise of “Donate $1, [Company X] will match $1” programs.
CLR takes this one step further, by emphasizing the importance of unique, individual contributors — even if they each only contribute a small amount.In short, while matching programs have traditionally chosen ‘equal matching’ by default, CLR tries to answer the question: When funding public goods, what is the ‘optimal’ match to maximize individual donations?
First, Why Does It Matter For Open Source Software?
For the past decade, open source software has been the internet’s largest blind spot. — Nadia Eghbal
As has been highlighted time and time again, open source software is broken. The current expectation is that domain-specific experts will maintain internet-critical code for less money than they could make as first year developers. Many times, even that much is a stretch.From pages 23–24 of the paper:
(As) Lanier (2013) argues, in many ways the open source movement has been a failure. It almost always relies on some level of proprietary corporate backing or directed, hierarchical government support. Open source communities are increasingly trying to address these limitations and provide funding for public goods provision through open source development through a variety of methods.
There’s a great amount of experimentation in sustaining open source (the Lemonade Stand by Nadia Eghbal is a seminal resource, for those interested). Yet, naturally, it’s hard to solve the problem from the ground up. Public goods are simply hard to fund.If we could find ‘ground up’ solutions, we can shift our open source conversations from ‘sustaining open source’ (all we can ask for, today) to ‘growing open source’ to promote a thriving, healthy internet infrastructure.The CLR mechanism is a concrete proposal for making grassroots donations something much larger. It requires a simple formula to achieve this goal.
- Crowdfund individual donations towards open source projects.
- ‘Match’ or ‘top-off’ the contributions of individuals from government, grant, or private philanthropy funding
This is something we’re obviously interested in at Gitcoin. It just so happens we’ve launched a crowdfunding platform aiming contributions towards open source projects with Gitcoin Grants. The timing to explore CLR couldn’t be better.
CLR + Gitcoin Grants; In Theory & In Practice
As discussed, CLR is a mechanism that allows individuals to contribute towards development of a public good, knowing their contribution will be matched by a philanthropic authority.What is unknown? The exact value of the match. This is dependent on how many other people decide to contribute before CLR matching begins. Let’s illustrate by example.
More Contributors → A Larger Match!
Imagine a crowdfunding campaign for an open source software project, like Austin Thomas Griffith’s Burner Wallet. The 🔥 Burner Wallet allows for instant crypto on-boarding, extremely quick transactions, and supports local currencies like USD. If you haven’t seen it yet, you should check it out! For now, let’s focus on the potential results of Austin’s crowdfund.Amongst many, two possible scenarios which could unfold are below:
- Scenario 1: Austin’s crowdfund gets $275 from one person, Scott.
- Scenario 2: Austin’s crowdfund gets $275 from ten people, all contributing $27.50.
So, what’s the CLR match? A very different answer arises between the scenarios.
As you can see, the match in Scenario 1 is $275, a 1-to-1 match to Scott’s donation. In Scenario 2, the match is $2,750, a 10-to-1 donation!In other ways, as the paper states: “The mechanism provides much greater funding to many small contributions than to a few large ones.”The fact that many small contributions are made to Austin’s Burner Wallet in Scenario 2 means that representatives from the Ethereum Foundation / ConsenSys / other beneficiaries could programmatically contribute more towards the project, knowing their contributions are going to goods that are valued by large swaths of the community.Back to the Categorical Imperative — when you contribute to something via CLR, you know that a contribution is coming back from the universe. This helps a lot with the free-rider problem, where individuals aren’t willing to contribute a small amount because they feel like the only ‘fool’ who is contributing. This isn’t the case which a matching function like CLR!
Gitcoin Grants In Practice
Austin’s Burner Wallet example isn’t just a theoretical open source project. It’s real, and a crowdfunding campaign was created for it last week!
In reality, there are seven contributions, of which six are monthly. These were provided in the following amounts: $5, $10, $5, $333, $18, $333, $665.When you run these numbers through the CLR formula, you get $5,500 as the optimal CLR contribution.To peel the onion back one last layer, the philanthropist could decide to ‘top-off’ Austin’s grant to the stated goal ($1,000/mo), rather than providing the full match reported by CLR. This, in practice, helps funding bodies (like the Ethereum Foundation and others) retain capital to fund other important efforts, while still supporting projects towards their stated goals. Or, the whole CLR match could be provided.Which works better? The community can help decide.
Open Questions For CLR Going Forward
There are a number of open questions associated with CLR, most included in their paper on page 13.
- Sybil resistance: We know that grants which receive many small contributions result in a larger ‘top-off’ value from the ‘benefactor’, incentivizing an attack vector to create multiple dummy accounts to try to confuse the system
- Collusion: An attacker of the system could split up $100 into 10 peoples hands, and thus achieve a much higher CLR match than deserved
- Reliance on philanthropists: In practice, CLR still suffers from reliance on a benefactor or government, a part of the problem which it purports to solve. The paper simultaneously shows disappointment in OSS leaning on “proprietary corporate backing or directed, hierarchical government support”, while acknowledging CLR still requires a ‘benefactor’. Is it possible for free markets dictate more funding towards public goods?
- From theory to practice: How can builders engage with the RadicalxChange creators to better understand CLR and the work which is being done towards a more resilient public infrastructure? The RadicalxChange conference and local meetups seem like a great start.
Gitcoin Grants, given Sybil / resistance via our Github integration, may be one of the best suited parties to help implement Liberal Radicalism ideas in a real and constructive way, within open source communities. These experiments fit quite well with what we’re doing both at Gitcoin Labs and Gitcoin Grants.We plan to carry on with CLR experiments. Please feel join our public Discourse around the topic and share with anyone who you think might be interested in contributing to the discussion.We don’t expect Liberal Radicalism to be a panacea, but are excited to engage in conversation and experimentation along the way. We look forward to continued conversation with the RadicalxChange community as we continue our research into structural support for a more resilient, open internet.