On a recent medium post, former Coinbase founder Fred Ehrsam wrote: “Forking is a second critical evolutionary mechanism for blockchains.”
Additionally, forks are also shocks to the network, in that those cryptocurrencies that survive forks come out more robust and “antifragile” (ala Nassim Nicholas Taleb).
Firstly, a primer:
The underlying code infrastructure of cryptocurrencies are generally open-sourced and thus can be modified by anyone on the token’s respective Github repository. The new, modified, version of the code will be more robust than the original (at least that’s the hope). The fact that everyone has access to the code and can introduce adjustments is a notable feature of decentralized networks. For a comparison, imagine Facebook (FB) allowing any individual to modify its code to better improve the UI/UX experience for FB users. (Of course FB does not do this, for the sake of its competitors - Twitter et. al.)
These code modifications may eventually result in forks - in cryptocurrency parlance, a fork can be “hard” or “soft” – which involve upgrades (varying in scale) to the underlying token protocol. The primary difference between hard and soft forks involve the level of restriction attributed to ensuing blocks on the token’s upgraded blockchain. For a soft fork not every node (i.e. a desktop computer) in the network needs to implement the upgrades, meaning that you can still transact on-chain without specifically incorporating the updated protocol. For a hard fork, all nodes must be upgraded to the new code specifications otherwise you will be unable to conduct any transactions.
Taking a look at the recent Bitcoin drama, crypto forks constitute several moving parts – they are initiated by the user community by modifications to the original code, then the token developers ultimately choose an official code modification to implement to the network and set a rough date that the upgrade(s) must be uploaded by.
Miners are the final piece of the fork puzzle - miners must choose to “mine” (i.e. verify) the transactions on the blocks of the updated protocol in order for the new (i.e. “forked”) code to be implemented by the network (and to prevent the token from dividing into two, just like what happened with Bitcoin/Bitcoin Cash). If a certain percentage of miners don’t mine the upgraded blockchain and stay on the original chain (or alternatively proceed to upgrade to a different protocol and thus instigate an additional fork of their own), two different currencies will emerge.
Miners are monetarily incentivized, thus they will generally verify the blockchain with the most user transaction activity. However in the case of Bitcoin Cash (BCH) and Ethereum Classic (ETC) – the two historical, major fork events in the cryptocurrency realm – miners chose to follow political/ideological incentives instead:
In the case of Ethereum Classic – a select but notable group of developers chose to diverge from Ethereum in order to keep the original Ethereum code after the DAO fiasco compelled the ETH team to overhaul the entire protocol.
In the most recent example of Bitcoin’s fork and the birth of Bitcoin Cash – a minority of miners chose a different protocol that would allow eight megabyte blocks (rather than Bitcoin’s upgrade to SegWit) to enable a greater number of transactions per block and consequentially higher fees that ultimately would go to the miners’ back pockets.
Although ETC and BCH are still alive and well for now, the Ethereum (ETH) and Bitcoin (BTC) networks are undoubtedly more robust and resilient as a result.
Forking can lead to a harmful division in the short-term, but cryptocurrencies with a truly strong user-base will come out stronger. Thus cryptocurrency forking not only contributes to the evolutionary mechanism of blockchains but also makes them increasingly antifragile.