Their whitepaper is an interesting read.
Most projects that try to build dynamic data on top of merkle trees / dags seem to be using Conflict Resolution Data Types (CRDTs) (peer-crdt, orbitdb, gun, repikativ, dat), instead they have gone for a Replicated State Machines (RSM) with a lisp/scheme like DSL.<p>This seems like an interesting alternative provided that there is a way to resolve conflicts when multiple peers add to the same graph. Conflict resolution doesn’t seem to be an issue for radicle as the owner of the repo (if I understand this correctly) is the one that needs to accepts patches and will have to republish on IPNS, thus simply appending new nodes to the DAG after accepting the patch instead of using the ones the contributor created. (I might really be off on this but I’d love to get how conflict resolution works if someone understands this better).<p>Owh and I love the ability to use the same language to query the RSM as well.
This is awesome! Many people (including me) complain that Github is too centralized and closed source. AFAIK this is the first platform that integrates git and IPFS. It looks like it is built around the Git CLI. So another layer of abstraction.<p>One thing that stuck out to me is this line:<p>> Note that stack might take as much as 4GB of memory to build Radicle.<p>Is this normal for Haskell projects ?
Cool! You might also want to checkout git over Secure Scuttlebutt: <a href="https://scuttlebot.io/apis/community/git-ssb.html" rel="nofollow">https://scuttlebot.io/apis/community/git-ssb.html</a>
Also worth mentioning GitCenter (here's a public proxy link <a href="https://zn.amorgan.xyz/1GitLiXB6t5r8vuU2zC6a8GYj9ME6HMQ4t/repo/?1P4w4Rvh4vS9r6G5xTiSh8qEW87EKZtnJB" rel="nofollow">https://zn.amorgan.xyz/1GitLiXB6t5r8vuU2zC6a8GYj9ME6HMQ4t/re...</a>) which runs on top of ZeroNet as is already in use by a number of people. Notably ZeroNet's source code is also mirrored here.<p>It has issues/PRs and the like, and content can be deleted quite easily.<p>Supports SVN too apparently.
There doesn't seem to be an obvious way to remove content (like issues, merge requests or comments) easily from a project or ban contributors from participating, ie, ripe for abuse by 4chan or whoever wants to set the internet on fire today.
Very interesting. Does radicle use something like the git-remote-ipfs plugin to sync to an ipns address? Also, are objects duplicated over the filesystem, git and ipfs or have you found some way around that? I'm working a bit on a DVCS built on IPFS as a side project, but it's nowhere near usable (search for IPVC on github). The natural step after replicating basic git/hg features would be something like what radicle is doing with issues, pull requests etc.
It would be good if there was a mention of what IPFS is either in the title or their page.<p>I assume it's this distributed file system called InterPlanetary File System.<p><a href="https://github.com/ipfs/ipfs" rel="nofollow">https://github.com/ipfs/ipfs</a>
'Decentralized Github' is an oxymoron because the 'hub' means a centralized place where people come to collaborate and git is already decentralized.
If you want a good alternative to GitHub (though not decentralized other than the distributed properties inherent to git), use Amazon CodeCommit. No github politics/nonsense to deal with, just reliable hosting for git repositories accessible anywhere with a user control system via IAM that is very controllable.
Just a noob question here. IPFS doesn't guarantee that any data stored in it will be available for retrieval in future (unless lots of nodes want to cache it).<p>Why will anyone want to use IPFS for data storage without an availability and latency guarantee?
I really dislike the white paper format. If you print it out on paper and read it, it's easy. It's a terrible reading experience on mobile. Why does it need to be a pdf? At least publish 2 versions, an html version and a pdf version.