# Idea: Dependency Funding Tool

**URL:** <https://discuss.coding.social/t/idea-dependency-funding-tool/36>\
**Category:** 💡 Ideation\
**Tags:** idea\
**Created:** [March 10, 2022, 5:48pm UTC](https://discuss.coding.social/t/idea-dependency-funding-tool/36 "2022-03-10T17:48:02Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![CSDUMMI](https://discuss.coding.social/user_avatar/discuss.coding.social/csdummi/32/11_2.png) [@CSDUMMI](https://discuss.coding.social/u/CSDUMMI)\
**Post date:** [March 10, 2022, 5:48pm UTC](https://discuss.coding.social/t/idea-dependency-funding-tool/36/1 "2022-03-10T17:48:02Z")

</div>

I have drafted a proposal for what I call “The Dependency Funding Tool” (TDFT).

It’s purpose is to provide funding to all free software projects, regardless of their proximity or visible to the people utilizing them.

### TL;DR

- The tool relies on a federated graph of project (as nodes) connected by dependencies (directed and weighted edges)
- To calculate how reliant one project is on another all paths between the two projects in the dependency graph are taken, their edge weights multiplied and then summed up.
- The tool analyzes the usage of a person and creates a list of projects they are directly or indirectly reliant on by calculating for each program they interact with directly all the projects they depend on and sorting them by their dependency.
- The tool can be configured to send automatic recurring fees or direct people to a project’s CONTRIBUTE files.

---

<div class="post-metadata">

**Author:** ![aschrijver](https://discuss.coding.social/user_avatar/discuss.coding.social/aschrijver/32/3_2.png) [@aschrijver](https://discuss.coding.social/u/aschrijver)\
**Post date:** [June 18, 2022, 10:26am UTC](https://discuss.coding.social/t/idea-dependency-funding-tool/36/2 "2022-06-18T10:26:57Z")

</div>

The problem @CSDUMMI describes is also acknowledged in this article linked from SustainOSS forum: [Sponsoring dependencies: The next step in open source sustainability - Sustain Open Source Forum](https://discourse.sustainoss.org/t/sponsoring-dependencies-the-next-step-in-open-source-sustainability/1058)

---

<div class="post-metadata">

**Author:** ![dachary](https://discuss.coding.social/letter_avatar_proxy/v4/letter/d/f0a364/32.png) [@dachary](https://discuss.coding.social/u/dachary)\
**Post date:** [June 23, 2022, 9:47am UTC](https://discuss.coding.social/t/idea-dependency-funding-tool/36/3 "2022-06-23T09:47:47Z")

</div>

Hostea is a collective that dedicates 25% of its income to funding dependencies. It needs tooling to [implement its revenue sharing model](https://forum.hostea.org/t/decision-revenue-sharing-model/92).

This was already discussed in the forge federation general chatroom and I do realize the tools discuss here does not exactly fit. But I suppose it’s worth mentioning, in case someone comes up with a brilliant idea that would bring it in scope.

---

<div class="post-metadata">

**Author:** ![aschrijver](https://discuss.coding.social/user_avatar/discuss.coding.social/aschrijver/32/3_2.png) [@aschrijver](https://discuss.coding.social/u/aschrijver)\
**Post date:** [July 18, 2022, 6:12am UTC](https://discuss.coding.social/t/idea-dependency-funding-tool/36/4 "2022-07-18T06:12:03Z")

</div>

@CSDUMMI as mentioned [in chat](https://matrix.to/#/!JulKzqECYJNatWhrcY:matrix.org/%24n4psaQiuosdOwivEyNWdH2m2f34AV_SvTiVqckn5zXM?via=matrix.org&via=gottsnack.net&via=schinas.net), on Hacker News I bumped into [a discussion](https://news.ycombinator.com/item?id=32104805) about Microsoft open-sourcing a Software Bill of Materials (SBOM) project. Didn’t know what a SBOM meant, but it looks to be interesting for this project. I documented here. There are existing tools that can do the dependency analysis that this idea needs.

- [Software Transparency: Software Bill Of Materials (SBOM) and SPDX](https://discuss.coding.social/t/software-transparency-software-bill-of-materials-sbom-and-spdx/104)

---

<div class="post-metadata">

**Author:** ![dachary](https://discuss.coding.social/letter_avatar_proxy/v4/letter/d/f0a364/32.png) [@dachary](https://discuss.coding.social/u/dachary)\
**Post date:** [August 21, 2022, 10:23am UTC](https://discuss.coding.social/t/idea-dependency-funding-tool/36/5 "2022-08-21T10:23:52Z")

</div>

A python function implementing the revenue sharing model was [done and can be found here](https://gitea.hostea.org/Hostea/accountant/src/commit/dc796278a6e3f2ead8d2216d4599fc6565f93b64/share.py). It is a NP-hard problem and there will be cases where it cannot compute the optimal solution in a finite time despite the heuristics. But Hostea is small still and this is unlikely to happen right now.

---

<div class="post-metadata">

**Author:** ![dachary](https://discuss.coding.social/letter_avatar_proxy/v4/letter/d/f0a364/32.png) [@dachary](https://discuss.coding.social/u/dachary)\
**Post date:** [October 14, 2022, 2:51pm UTC](https://discuss.coding.social/t/idea-dependency-funding-tool/36/6 "2022-10-14T14:51:39Z")

</div>

### Podcast - Nicholas Zakas on Sponsoring Dependencies, All The Way Down

> **[Nicholas Zakas on Sponsoring Dependencies, All The Way Down](https://podcast.sustainoss.org/142)**
>
> Nicholas comes back on the podcast to talk about why it's important for open source projects to not just get funding, but give that funding downstream to their dependencies too.

---

<div class="post-metadata">

**Author:** ![dachary](https://discuss.coding.social/letter_avatar_proxy/v4/letter/d/f0a364/32.png) [@dachary](https://discuss.coding.social/u/dachary)\
**Post date:** [October 14, 2022, 3:24pm UTC](https://discuss.coding.social/t/idea-dependency-funding-tool/36/7 "2022-10-14T15:24:13Z")

</div>

# My conclusions

It is implied that eslint gets too much funding and is sustained by donations, although most of the costs of developing it are not funded in this way. Developers are paid by companies out of a budget that is not reflected in the eslint sponsor pages.

It is one more example showing that donations are, for most of Free Software projects, covering only a small fraction of the cost to run it.

If a Free Software project is not sustained by donations, distributing a fraction of the donations to dependencies is unlikely to have a significant impact on their sustainability. The amount distributed to dependencies should instead be a fraction of the actual budget of the Free Software project.

# Notes

- extremely successful project
- ESlint has been been going on for 9 years, developed by people paid by companies
- three years ago they starting accepting donations
- did not know how to spend it and stashed it until ~2021
- start to spend it in the past year / two years
- donates ~3k per month to dependencies
- receives ~10k per month from sponsors
- most donations are from large companies
- about ten people work on a daily basis on eslint
- donations to dependencies is on a case by case basis

Did not work:

- paid a part time maintainer
- paid a full time maintainer

Works fine and keeps going:

- pay for the redesign the website
- ongoing hired a technical writer to work on the documentation

# My remarks

- the cost of paying ~10 eslint maintainers on a daily basis is an order of magnitude more expensive than what eslint gets in funding
- the current eslint budget is therefore a fraction of the cost to maintain eslint
- there is no analysis of the cost of running eslint: who gets paid how much to do what
- there is no strategy to increasing funding to cover the majority of the cost instead of a fraction of the cost

---

<div class="post-metadata">

**Author:** ![dachary](https://discuss.coding.social/letter_avatar_proxy/v4/letter/d/f0a364/32.png) [@dachary](https://discuss.coding.social/u/dachary)\
**Post date:** [October 14, 2022, 3:31pm UTC](https://discuss.coding.social/t/idea-dependency-funding-tool/36/8 "2022-10-14T15:31:00Z")

</div>

> **[Nicholas Zakas on Sponsoring Dependencies, All The Way Down](https://discourse.sustainoss.org/t/nicholas-zakas-on-sponsoring-dependencies-all-the-way-down/1106/2?u=dachary)**
>
> These are question for Zakas: what are the cost of running the eslint project? You mention ten people work on it on a daily basis. How are they paid and by whom? What is your estimation of the monthly expense it represents? these salaries are...

---

<div class="post-metadata">

**Author:** ![aschrijver](https://discuss.coding.social/user_avatar/discuss.coding.social/aschrijver/32/3_2.png) [@aschrijver](https://discuss.coding.social/u/aschrijver)\
**Post date:** [April 13, 2023, 5:03am UTC](https://discuss.coding.social/t/idea-dependency-funding-tool/36/9 "2023-04-13T05:03:03Z")

</div>

Though this project uses Coinbase (cryptocoin-tech which I’d personally avoid) the mechanism for funding might inspire:

> **[GitHub - tythe-protocol/tythe: 1% of Global R&D to Open Source Maintenance](https://github.com/tythe-protocol/tythe)**
>
> 1% of Global R&D to Open Source Maintenance

---

<div class="post-metadata">

**Author:** ![aschrijver](https://discuss.coding.social/user_avatar/discuss.coding.social/aschrijver/32/3_2.png) [@aschrijver](https://discuss.coding.social/u/aschrijver)\
**Post date:** [June 6, 2023, 11:03am UTC](https://discuss.coding.social/t/idea-dependency-funding-tool/36/10 "2023-06-06T11:03:06Z")

</div>

I found a commercial service, currently in beta, that is somewhat based on this idea:

[https://www.paydevs.com/](https://www.paydevs.com/)

---

<div class="post-metadata">

**Author:** ![aschrijver](https://discuss.coding.social/user_avatar/discuss.coding.social/aschrijver/32/3_2.png) [@aschrijver](https://discuss.coding.social/u/aschrijver)\
**Post date:** [October 6, 2023, 9:12am UTC](https://discuss.coding.social/t/idea-dependency-funding-tool/36/11 "2023-10-06T09:12:56Z")

</div>

The top-level comment thread in this [HN discussion](https://news.ycombinator.com/item?id=37777301) on [Krita.org](http://Krita.org) receiving zero contributions from companies delves into the idea of Dependency Funding. Some noteworthy feedback to take into account, as well as links to existing services.

The [comment by lars\_francke](https://news.ycombinator.com/item?id=37777688):

> I want someone to build this:
> 
> SBOM (Software Bill of Materials) are slowly becoming ubiquitus around the world due to regulation.
> 
> I want to be able to aggregate all SBOMs within my company, have a small tool that scans my machine and creates a SBOM for all Open Source tools I use (e.g. Firefox, VLC etc.), uploads that to my corporate registry.
> 
> This data is then submitted to a donation aggregator which analyzes those SBOMs and distributes my monthly donation across all those projects.
> 
> It is so hard dealing with those individual donor portals and various forms to donate to foundations et. al.
> 
> If this whole project could be run as a non-profit foundation itself that’d be perfect.

---

<div class="post-metadata">

**Author:** ![d3v0](https://discuss.coding.social/user_avatar/discuss.coding.social/d3v0/32/936_2.png) [@d3v0](https://discuss.coding.social/u/d3v0)\
**Post date:** [November 4, 2024, 9:18am UTC](https://discuss.coding.social/t/idea-dependency-funding-tool/36/12 "2024-11-04T09:18:46Z")

</div>

> **[Drips | Fund Open Source In Your Ecosystem](https://www.drips.network/)**
>
> Drips is the easiest way to fund Open Source in your ecosystem. Fund your dependencies with built-in dependency splitting, run RetroPGF rounds, and achieve any
