"Blockchains are excellent for logging with peer participation, distributed append, and tamper resistance. For example, each peer can add their own chain links, and also see all the chain links added by other peers, and also be sure that the log hasn't been corrupted by any of the peers."
This sounds very close to a git repository, which Linus wrote using only SHA libraries.
Except with git repositories there's no built-in consensus mechanism, and we have the potential for a double spend.
Say we're assuming the git repo includes gpg signing and users can make commits attesting that they've sent some amount of their balance to another user.
John makes a commit saying he sends his entire balance to Alice.
John pushes that to a central repository, and Alice gives him her house in return.
John then pushes another commit with an older date saying he actually sent his entire balance to Bob.
Which commit does the network trust?
Aside from that, there are also smart contracts which (to my knowledge) are the first example of code that can be run in an open distributed manner with verifiable source.
No it's not. If you run a trust based economy without clear property rights, this whole scenario doesn't exist. If you have property rights, you have a state to enforce them, so that state has a court, sues Alice (or Bob), sues John, the state punishes John, done. If you try to establish property rights without a state, then ans only then does it become interesting, but why would you do that? Establishing a democratic "state" is so simple and cheap that people do it all the time (associations, shareholder agreements), and in the end you need to physically enforce the property rights anyway, so why bother with the whole decentralised, anonymous rigamarole?
Establishing a pure democracy is never easy and when you get the centralization of power that a representative democracy (or democratic republic) brings it can create incentive structures that don't represent the electing population. When you have the power to hide something as a political representative and the general population don't have the means to provide an attestation to whether something is true or not, it starts creating room for elected actors to work against the interest of the people in scenarios where they could reliably hide malpractice. The blockchain isn't converting democratic republics outright, but it does give more power to the people by allowing them to attach their unit of account to what is now considered to be an apolitical monetary system that can be participated in by anyone.
That's github more than git, isn't it. Anyone can maintain their own fork of a repository. Much like with blockchain, it comes down to a community decision which one to accept as "canonical".
The difference is a lack of consensus at the protocol level for git. The network's only 'canonical' version of things is at the whim of the maintainer (who can also rewrite history)
Fair enough, but what I meant to say is that in practice Git is always used in combination with a centralized service such as GitHub, GitLab or Bitbucket. There is no cryptographic consensus, that is true, but the model still works exceptionally well. All modern software engineering depends on it, successfully. I never heard someone ask for a more robust trust model with network protocol consensus. I don't think anyone actually needs it.
Edit: if you are saying blockchain allows non-tech people the benefit of something like a git repo to run there everyday business, then this is a view I sympathetic to but it is arguably failing in this aspect as well since there is no non-tech people using it.
It is. Except if you used SHA libraries for mission critical logging, it would be insecure by default, since it's demonstrably possible to force SHA-1 collisions. git is moving (slowly) to SHA-256, which is also the hashing function of Bitcoin.
This sounds very close to a git repository, which Linus wrote using only SHA libraries.