Why Bitcoin Cash Became the Minority Chain
marketplace of ideas
Asked why Bitcoin Cash became the minority chain many people will respond that increasing the blocksize limit lost in "the marketplace of ideas". Either they will attribute this loss to the onchain scaling arguments being unconvincing or the onchain scaling arguments being censored (depending on their allegiance).
Arguments worth repeating
A better explanation of how the BCH community ended up where it did comes from Amaury Séchet, co-creator of Bitcoin Cash and lead developer of the Bitcoin ABC node implementation. He attributes this to various tragic mistakes made by the "big block" camp.
He talks about this and much more in his presentation titled "Bitcoin Cash culture" from the Bitcoin Cash City Conference, there's a full transcript of the talk made by Cain. Amaury also delves into the topic on the Bitcoin Game podcast episode #57 where he was guest (relevant part at 26:30).
I think it's important people realize what were the mistakes in the past so they can be avoided in the future and the community is not stuck with a "victim mentality" as Amaury puts it.
Various tragic mistakes
In those two talks Amaury outlines the strategic mistakes from 2017, at the peak of the scaling debate. He explains that of those, the two most important ones are UASF and Emergent Consensus. The history of the scaling debate is quite a complicated one, for a quick refresher read "The Great Bitcoin Scaling Debate — A Timeline".
1) UASF
UASF (User Activated Soft Fork) is a method to reduce the SegWit activation requirements which was published in BIP 148, march 2017. It sparked a movement of users configuring their full nodes to activate Segwit (soft fork) on august 1st regardless of what miners did. Without majority hashrate support this would have led to a chain split. Today the movement is maybe best remembered by their proof of social media- hat campaign.
Segwit 2MB proposal, referred to as Segwit2X, was the result of the so called 'New York agreement' from april 2017. This proposal included as the name suggests both a Segwit an increase of the blocksize limit to 2MB. Jeff Garzik was the lead developer of the Segwit2x client.
June 15th a change to the Segwit2X (btc1/bitcoin) github repository was proposed with the comment "I've modified BIP91 to use a smaller confirmation window and enforce mandatory signalling upon lock-in. This should reduce the chance of a conflict with BIP148." A day later, June 16th Jeff Garzik merged this change to make the Segwit2X client compatible with UASF (BIP148). Amaury points out that modifying Segwit2X to be compatible with UASF weakened the Segwit2X commitment strategy to the benefit of UASF . This is the reason that the promise of "first segwit then a blocksize increase" ended up being a bait and switch, with the latter never happening. Amaury says this triggered the decision to go all in on Bitcoin Cash. On august 1st, a month and a half later Bitcoin Cash became reality, with the onchain scaling, peer-to-peer electronic cash spirit very much alive.
2) Emergent consensus
Emergent Consensus (EC) is a consensus method for bitcoin that allows for decentralized block size limiting. This change was proposed by Bitcoin Unlimited (BU) as a solution to the blocksize debate. The idea that no central group of developers should set important parameters is the foundation of Bitcoin Unlimited.
The article "Introduction to Emergent Consensus" from march 2017 documents that the "big block" clients: Bitcoin Classic, Bitcoin Unlimited and Bitcoin XT all 3 supported Emergent Consensus.
BU insisted on doing the blocksize increase activation via Emergent consensus but doing it this way could turn out very costly for miners because they are unsure if their block would be accepted by the rest of the network. Amaury says EC didn't work about because it does not set a new networkwide agreed upon limit (by design). He also points at a paper that models the problems with EC.
3) Lack of confidence
Tension between Classic and Unlimited resulted in a split on testnet in August 2016 because the technical details were not compatible (they implemented sigops checks after 1 megabyte differently). Amaury recalls that it took a lot of work to get that sorted out because they couldn't agree on anything. The whole situation was not reassuring for miners because they felt they could lose their blockreward.
There was also a lack of confidence because of quality issues with BU code, there had been several zeroday bugs. On January 29 2017, Bitcoin.com mining operation lost 13.2 bitcoin because of a bug in two day old Bitcoin Unlimited v 1.0. Needless to say that all this resulted in a bunch on negative PR such as "The Astounding Incompetence, Negligence, and Dishonesty of the Bitcoin Unlimited Developers" on r/bitcoin. And in march of 2017 most BU nodes went down because of such a vulnerability.
What could have been
Amaury explains that there was definitely a good opportunity for the "big block" movement to be the majority chain. His main takeaway is the importance of committing to the things on the roadmap.
This is a nice blog. It also explains things, which is why BTC Maxis keep "bullying" through trolls and brainwashed r/Bitcoin shills. We need to spread the word, really. Anyone up to share this in r/CryptoCurrencies and r/BTC?