Idea: Funding Open Source Software via the SNS and a Decentralization License


First off, I’d like to state that I’m well aware of the passionate feelings in the software development community around software licenses, and I don’t mean to offend any individuals with this idea!

I’m sure there are flaws in the idea and approach, but I’m posting this publicly on the forums to engage you all and receive honest feedback, with the hopes that there’s an evolution of the idea that which is even better.

You are encouraged to post honest feedback!

The Idea

I’d like to float an idea to the IC community that I believe could play a part in helping open source projects become financially sustainable. I’m calling it a “Decentralization License”.

The software world rests on the shoulders of open source software. These projects are maintained by passionate developers volunteering their efforts after work or on the weekends.

Open source software should be public and free, but there should also be a mechanism in place to reward the maintainers of open software when the applications that they power become massively successful.

This is where the Decentralization License comes into play, as it is uniquely suited for the Internet Computer, and its developer and DAO communities.

A Decentralization License on IC software works like this:

Any software with this license is open, publicly available, and free to use up until the point of decentralization.

When an application’s founders sell a significant portion of their equity through an SNS or other type of decentralization sale, some small percentage (0.0001-1%) of the sale’s tokens/proceeds are paid out to the maintainers of that project. This can easily be configured in the developer_distribution section of the sns.yml file.

If an open source project’s Decentralization License fee is 0.01% and an application raises 100k through an SNS sale, in order to obtain the license, $10 is owed to the project. If the application raises 10 million, $1k is paid to the project.

When application-level projects are successful, this means the open source project shares just a little bit in that project’s success, aligning interests and encouraging further collaboration between open software and the project.

Additionally, this framework allows for a software project to tokenize around a DAO, such that developers and projects that contribute to the development of the open source software can receive a reduced price (discount) on their decentralization license. Depending on the contribution, the party can receive a discount, or can receive ownership tokens that would allow them to share in the rewards from other projects that SNS and benefit from that open source software.

Extending beyond Web3 to all Open Source Software

I’m going to do a bit of hand-waving here for this next part, but hopefully the big picture idea makes sense.

If you generalize the idea of a Decentralization license to a “mass liquidity event”, such as a large fundraise or software sale, then any open source software project (web2 or web3) can potentially tokenize around a DAO on the IC if they choose to do so, with project/developer contributions resulting in a discount on their decentralization license or ownership tokens in that software’s DAO.

The majority of companies and agencies are small and never IPO or raise beyond a certain stage, so hopefully this would provide a mechanism for all open source software to fractionally share in the successes of the big projects and mass liquidity events that produce the Googles and Facebooks of the world.


The motivation of DL is quite good! Appreciate the healthy momentum on IC.

In sense of decentralization, I am thinking most one of the important achievements is permissionless and trustless. So how does DL implement the trustless feature between Open-source software developers and project funding team? Is there a mechanism that can secure developers’ profits against piracy without immediate?

I don’t have good idea in mind but looking forward to seeing more proposals


Great question Malcolm.

I want to emphasize first that up until the point of a decentralization sale or “mass liquidity event”, the software under a decentralization sale is free to use.

I also don’t necessarily think that it’s possible to force projects and teams to pay for such a license. However, I think financial interests play a role as a forcing function to encourage this behavior. Let me explain a bit further.

If a project decentralizes, raising millions and not acquiring a Decentralization License, it is potentially using that software illegally. This means there is potential risk as an investor in participating in a decentralization sale and becoming a member of that application’s DAO. Operating without a decentralization license after the sale may therefore actually decrease the amount of ICP that a project is able to raised based on investors’ perceived risk of investing. The sale will most likely still succeed, but maybe only raise 80-90% of what it had received if it were in full compliance with the Decentralization License.

So to clarify, there’s no “forcing mechanism” in this scenario, nor is there injected code that forces you to pay ICP, cycles, or tokens to the open source software project maintainers for a Decentralization License.


I really like this idea and I just want to raise a couple of concerns and hopefully add to the robustness of the idea, from my own reading around open source software licenses I thought of couple of concerns.

concern 1: Enforcement.

Just to re-iterate this concern, (that I raised also privately), I think the main issue is around enforcement, Already software license’s are hard to enforce and many developers/orgs releasing software as open source don’t really have the resources to enforce the licences if they are broken.

I think it will have to be about trust, as it kind of is anyway when you release open source software as a small team or individual, i.e trust that the team will abide by the clause’s in the license. If they don’t, and in this case for the decentralised licence, you want to pursue them for not releasing a portion of the raised income to you, it might be even tougher in a decentralised world of anonymous founders and projects.

Perhaps if the license is detailed enough and reviewed legally, some of these risks can be mitigated, Im not the person to come up with solutions to these problems right now but I do know, that even the most established license are hard to enforce, An example is that most open source software licenses provide the software “as is, without liability and warranty”, but in some jurisdictions you cant really release products “without warranty”. Perhaps there will be similar issues with this as in differing jurisdictions having differing rules.

concern 2: A main component of “Open source software” is free redistribution

Based on the “Open source definition” published by OSI (the guys defining all this stuff and the international way of defining it) an open source license (for the software to be considered open source), it’s accepted it has free re-distribution, meaning: “The license shall not require a royalty or other fee”, source: The Open Source Definition – Open Source Initiative

Perhaps a decentralisation license that requires a fee eventually, cant be considered an open source license and if we cant use that terminology, I think people are going to be slower to accept it. I think words/terminology here matter to build trust and also legally.

These are just a couple of things I thought of, but I do actually like the idea, be good for the eco-system if it worked smoothly.


Would love to move the discussion from Twitter over here with devs.

Origyn buys the CanDB software:

Some of my personal thoughts:

We’ve obviously done a good bit of thinking about this but are far from the finish line and will only be successful with community support and input.