4 ms·
> So if you want a "tamper-proof", auditable, decentralized data store, go with git. Yes.
by blattimwind 8y ago
> So if you want a "tamper-proof", auditable, decentralized data store, go with git.
Yes.
- calibas 8y agoGit isn't decentralized, each data store has an owner.
- dfox 8y agoIn my view the most sane definition of what blockchain is includes Git.
- erikpukinskis 8y agoThat’s true of all decentralized algorithms. Decentralized just means someone else can own it too.
- blattimwind 8y agoTherefore, Bitcoin isn't decentralized, each node has an owner.
- calibas 8y agoThe owner of a node on a blockchain doesn't own the data store, the owner of a git repo does. The owner of a git repo can even rewrite the whole history of a repo. To equate the two doesn't make much sense to me. Seems this is an exercise in how loosely we can define blockchain. In my opinion all that's being achieved is confusing blockchains, as defined by their creator, with merkle trees.
- pritambaral 8y ago> The owner of a git repo can even rewrite the whole history of a repo. If tomorrow Linus rewrites even a part of history of [0], every single one of Debian, Canonical, Red Hat, Amazon, Gentoo, Google, AOSP and my-friend-who-always-builds-mainline are going to notice. They are all going to continue to have the choice to fork their own; only this time, better motivated. Hell, if Linus is sensible in such a scenario, he will abandon his 'history-rewritten' fork and clone one of these guys' and carry on, just so everyone can stay on the same fork with the least effort. Yes, rewriting history would be a fork. Git is not a VCS where a remote can rewrite local branches. Only the local user can make Git do so. If someone decides to follow Linus's history-rewritten fork, they will have to voluntarily do so; and even if they don't, they can always carry the original fork on among themselves, paying no heed to Linus [1]. Does this sound similar to how forks work in Bitcoin and Ethereum? ---- 0: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/lin... 1: This is because Linus is the owner of only one repo: [0]. Upon cloning a repo, the cloner becomes the owner of the clone. Ownership does not transfer. A cloner is free to go their separate way with their clone, as they are free to continue to copy changes dilligently from the source, and everything in between. Git does not concern itself with reputation or authority.
- calibas 8y agoYes, and that's part of the beauty of git, everyone can go fork it and create their own version of a data store. In the case of something like a cryptocurrency, letting everyone create their own version of a ledger and get to decide which one is "correct", would be a complete and total failure of the system. In my opinion, that should be part of what differentiates a merkle tree based VCS from a blockchain. The point of a blockchain is a singular, decentralized, "immutable" data store. Unlike git, version control is not what everything revolves around, version control is there so we can be sure it's a singular, decentralized, "immutable" data store. I just don't see the point in defining blockchains so vaguely that even git counts. In practice, these are different systems that deserve different terminology.
- pritambaral 8y ago> everyone can go fork it and create their own version of a data store And with cryptocurrencies, everyone can go fork it and create their own ledger. That not many do it is unrelated to the datastructure. > In the case of something like a cryptocurrency, letting everyone create their own version of a ledger and get to decide which one is "correct", would be a complete and total failure of the system. Yes, as a system. > In my opinion, that should be part of what differentiates a merkle tree based VCS from a blockchain. A "merkle tree based VCS" is a system. A cryptocurrency is a system. A blockchain is just a datastructure. > The point of a blockchain is a singular, decentralized, "immutable" data store. Which git is. > Unlike git, version control is not what everything revolves around In git, version control is not what everything revolves around. Git was designed for version control, and a merkle-tree of objects and dirtrees and metadata and commits was chosen to implement it on, which is what everything revolves around. Just like how Bitcoin was designed for payment, and a blockchain of transactions was chosen to implement it on. > I just don't see the point in defining blockchains so vaguely that even git counts. This sounds a bit like you're trying to come up with a definition of "blockchain" with an express purpose of excluding git from it. > In practice, these are different systems [emphasis mine] that deserve different terminology. And this, is the heart of our disagreement. You're comparing the systems git and cryptocurrencies, only you call the latter "blockchains". I'm comparing datastructures, and I distinguish between the terms "cryptocurrency" (which I consider a system) and "blockchain" (which I consider a datastructure).
- wolfgang42 8y agoThe owner of a Bitcoin node could rewrite the history of their chain, too. (After all, it's just a file on a hard disk.) This would, however, make their node incompatible with everyone else's, in exactly the same way that rewriting the history of a Git repository makes that repository not able to automatically pull from or push to any other non-rewritten repos. You seem to be thinking of 'git' as a thing which gets stored on GitHub, but it's entirely possible to run a repository with no central copy, based only on consensus. (I've actually done this--in an area without an internet connection, we spent a day coding and passing around copies on flash drives and merging until everyone had the same code. I don't recommend doing this on a regular basis, but there's no technical differences preventing it.)
- calibas 8y agoI'm well aware of how git works, and the consensus mechanism you just pointed out is one of the fundamental differences between git and what's normally referred to as a blockchain. I think the confusion is people are equating merkle trees with blockchains.
- ric2b 8y agogit doesn't do automated consensus, any inconsistency must be resolved manually. That doesn't work for a global system where data will often arrive in a different order to different nodes.