add draft report

This commit is contained in:
Kiara Grouwstra 2025-09-08 14:47:08 +02:00
parent c8db81ffe9
commit 54fcf0aefe
2 changed files with 157 additions and 1 deletions

View file

@ -0,0 +1,157 @@
<!--
> Get insight in the total global investments of the Fediverse (OID)
> To get an overview of the total investment of capital, human resources and other valuables, we will research the usage of these in the (visible) Fediverse globally. A report of this will be released.
> Release a report on the estimated collective current investment on fediverse technology:
> Look at qualifiers like:
>- Used system resources (CPU, storage, networking)
>- Amount of software developers actively working on Fediverse software products
>- Amount of system administration engineers actively working on Fediverse software products
>- Amount of moderation and governance people
-->
# An estimate of investments in the Fediverse
## Introduction
To provide an estimate of the investments made into the Fediverse, defined[^1] as a decentralized interoperable network of social media sites, apps, and services built on the ActivityPub protocol, is a daunting task, owing due to:
1. a lack of research (in our experience) on this topic thus far;
1. the vast number of services part of the Fediverse[^2];
1. the Fediverse's decentralised nature;
1. involvement of voluntary contributions;
1. the third-party nature of some of the integrations.
Nonetheless, we have taken upon ourselves the task to provide a first glimpse on this subject. Given the Fediverse's interoperability empowers users, a better overview on the resources in this technology helps clarify its momentum for key decision-makers interested in adopting, investing in and interfacing with this technology. We further hope our work will contribute and ignite more serious research into this topic.
In this document we describe our assessment of the investments made in the Fediverse. We start with describing our methodology for gathering data on the Fediverse and share information on the services, platforms and software applications we have deemed relevant to include.
## Methodology
In order to better scope our research, we will address the mentioned challenges by:
1. given the lack of research on this topic so far, gathering missing data by contacting representatives of the respective projects;
1. to account for the vast number of services part of the Fediverse, focusing on the major services[^3] part of the Fediverse, in this case the software with at least 10,000 active monthly users as per Fediverse Observer[^2], in total accounting for over 95% of the active users across Fediverse services, i.e.:
* Threads
* Mastodon
* Pixelfed
* NodeBB
* Lemmy
* Peertube
* Loops
* Wordpress
* WriteFreely
1. to account for the Fediverse's decentralised nature, extrapolating for each service to their overall number of (visible[^4]) instances from their flagship instances;
1. to account for the involvement of voluntary contributions, separately citing internal versus overall contributors active on the projects, and extrapolating from the former to estimate the latter;
1. to account for the third-party nature of some of the integrations, explicitly distinguishing these in our overview.
### NodeInfo
Fediversity instances tend to expose data using the NodeInfo protocol (<https://nodeinfo.diaspora.software/>). Data exposed this way is gathered in <https://fediverse.observer/>, which we use as our source for metrics:
* estimated number of installations
* estimated number of users
* estimated number of monthly active users
### Human resources
#### Moderators
<!-- #### Amount of moderation and governance people -->
On users with moderation privileges ActivityPub unfortunately exposes no structured data yet, although this is an outstanding feature request[^5].
In addition, for some single-tenant platforms such as WriteFreely, moderation does not apply. Platforms that support user sign-ups, such as Mastodon, may similarly disable user sign-up, in which case moderation similarly is not relevant.
<!-- TODO: distinguish active user data by whether instances enable user sign-up -->
#### Developers
<!-- #### Amount of software developers actively working on Fediverse software products -->
The amount of active developers we estimate as users:
* as identified by unique emails
* who are not bots, as measured by whether their name contains 'bot',
* who contributed at least **5** commits to the default Git branch at the main forge/fork
* over the past year.
We obtain this metric by running a Nushell query[^6] on the project's respective Git repositories.
Based on project estimations on internal engineers involved measured in FTE, we further estimate the total amount of development involved by extrapolating from these FTE figures to include external contributors based on their relative number of commits --- thereby for the purpose of this estimate presuming similar time and effort required for external versus internal commits.
#### System administrators
<!-- #### Amount of system administration engineers actively working on Fediverse software products -->
### Used system resources
<!-- >- Used system resources (CPU, storage, networking) -->
#### CPU
* minimum/average/peak percentage of (number of) CPU cores used?
<!-- (presumes similar performance across CPU models) -->
* CPU model used
#### storage
in e.g. GB currently used by the instance
#### networking
in e.g. min/max/average MiB/s in/out of the instance, along with physical caps potentially limiting these
<!-- #### RAM -->
### Capital
<!-- * income -->
<!-- note that while most of the Fediverse projects have had grants from NLNet, NLNet does not publish structured information on financial resources committed or reimbursed. -->
<!-- * estimated costs for the service -->
## A closer look at the Fediverse platforms
<!--
* Name of service/platform
* Description of service/platform
* capital
* income
* estimated costs for the service
* NodeInfo
* estimated number of installations
* estimated number of users (Monthly Active Users)
* human resources
* [ ] Amount of software developers actively working on Fediverse software products
* estimated number of developers working on the service
* [ ] Amount of system administration engineers actively working on Fediverse software products
* [ ] Amount of moderation and governance people
* estimated number of moderators
* Used system resources
* [ ] CPU
* [ ] storage
* [ ] networking
-->
| Project | Installations | monthly active users |
|-|-|-|
| mastodon | 8033 | 736878 |
| pixelfed | 501 | 126065 |
| nodebb | 43 | 52399 |
| lemmy | 407 | 41341 |
| peertube | 962 | 25804 |
| loops | 1 | 26548 |
| wordpress | 2863 | 11510 |
| writefreely | 492 | 11188 |
## Estimating investments in the Fediverse
<!-- * Conclusion -->
## Notes
[^1]: Kissane, E., & Kazemi, D. (2024, September 4). Findings Report: Governance on Fediverse Microblogging Servers. https://fediverse-governance.github.io/#brief-glossary
[^2]: https://fediverse.observer/allsoftwares
[^3]: Note that this focus would exclude work on protocols such as W3C's work on the ActivityPub protocol, as well as on non-core repositories, and ancilliary software whose development is run by others than by the lead developers of the mentioned services, such as bridges, cross-posters, third-party clients, browser extensions, instance indices, etc.
[^4]: Visibility, for our purposes meaning exposing metadata using the NodeInfo protocol, for Mastodon, the Fediverse service with the highest amount of active users, notably excludes an instance with more active users than its biggest visible instance <https://mastodon.social/>, namely Donald Trump's Truth Social.
[^5]: This feature requested may be tracked at: https://github.com/swicg/activitypub-trust-and-safety/issues/25
[^6]: The used query here is: `git log --pretty=%h»¦«%s»¦«%aN»¦«%aE»¦«%aD | lines | split column "»¦«" commit subject name email date | upsert date {|d| $d.date | into datetime} | where ($it.date > ((date now) - 365day)) | where not ($it.name has 'bot') | group-by name | transpose | upsert column1 {|c| $c.column1 | length} | sort-by column1 | rename name commits | where ($it.commits >= 5) | reverse | length`
## References
* https://en.wikipedia.org/wiki/Fediverse
* https://fedidb.org/
* https://mastodon-analytics.com/
* https://www.thinkimpact.com/mastodon-statistics/
* https://fediverse.observer/
* https://the-federation.info/
* https://fediverse.party
* https://socialhub.activitypub.rocks/t/fep-f1d5-nodeinfo-in-fediverse-software/1190
* https://codeberg.org/fediverse
* https://hachyderm.io/@esk/113793277371908181

View file

@ -1 +0,0 @@
This is the new and official place where we put content that previously only lived in a HedgeDoc document.