What do we mean about "peer-to-peer seeding?"
The term "peer-to-peer" was popularized by networks like BitTorrent, defined by offering all users the opportunity to act as "peers" seeding data to each other, rather than clients of a centralized network. "Seeding" means allowing other users to download data from your system, and everyone being able to do this makes everyone a "peer."
Radicle doesn't allow all users to be seeders, but it calls itself "peer-to-peer" and "decentralized" because it does enable many users to become seeding peers. This makes it much less centralized than GitHub and other options.
In order to seed on Radicle, a user needs access to centralized resources such as a DNS name or static IP address, or the skills to implement their own alternative seeding methods.
A new name for this model could be "peer-to-peer-to-peasant" - data can be transferred between peers when two users both have the needed resources and skills, while other data transfers involve users who are not able to become seeding peers.
Cradicle is designed to solve this using Tor, a decentralized network, designed with censorship resistance as a high priority. Tor replaces DNS names with .onion addresses, which use keypairs as an address space, and allow anyone to control their own address. Cradicle simplifies the process of seeding using Tor, so that no special resources or skills are needed.
Decentralized git hosting isn't just for code
Git is fundamentally a "version control system" - designed to keep track of changes in a file, who made those changes, and when.
By adding decentralized hosting, Radicle and Cradicle can form the basis for a wide range of use cases beyond git's typical use as a "code forge."
What else could you use this for?
Decentralized wiki backend
Wikipedia is famous for allowing users to write and rewrite encyclopedia entries. A wiki based on a decentralized git would provide better ways to organize contributions from all users, instead of simply blocking users and erasing entries a central authority disagrees with.
Decentralized databases, lists, charts
Wikipedia is also famous for hosting many lists and charts. A wiki based on a decentralized git could not block certain datasets from being included or completed. For example, there are paywalled climate databases, obfuscating data for researchers and allowing a central authority to manipulate it. Wikipedia props up such databases by refusing to provide space for free versions. With Radicle or Cradicle, users are free to make that space available.
Any tool that relies on public databases
A weather app needs a database of weather measurements, and potentially forecasts. You can't have a decentralized weather app without decentralized databases of things like air temperatures. Social media apps also require databases. Nostr and other similar projects have struggled to make those databases less centralized. Nostr itself can't even standardize how editing posts works under the hood. Maybe nostr is another thing that would be better if it used a network designed around a "version control system."
Tools that can't even work without decentralization
Honey is an infamous tool that promised to track prices and discount offers across the entire internet, so users could get the best price available on a product. It was an obvious scam, as it offered users no way to reinforce the quality of the database. Decentralized database storage with "version control" could be vital to creating a real version of a price comparison app like Honey.
Community policies and governance
Members of Congress take credit for bills written and rewritten by shadowy lobbying groups. Millions of voters have to select one representative to rephrase every paragraph of a bill they'd want to rephrase. Imagine if bills were written and passed through a decentralized wiki, where every user can review segments, suggest changes, and track each part's origins?
If Radicle and/or Cradicle aren't ready for some of these use cases, they should be refined until they are. Decentralized hosting with version control has the potential to change the world's data infrastructure completely.
Additional links
Cradicle feedback thread on Radicle's Zulip board
Radicle on Wikipedia
GitTorrent by Chris Ball (a different project with similar goals)
|