1 min read

Modular upgradeability (aka no hard forks)

Blockchains need to be upgraded from time to time. Once they're turned on in the real world, they're running on different computers that are not controlled by any one person or group. The Koinos Group is creating the blockchain, but they won't own it any more than someone else who holds Koin and runs the code on their computer. Your "ownership" of a blockchain is based on what percentage of the network you control (how much Koin you hold and how much computing power you lend to the network).

So, who upgrades the blockchain? And how? All existing blockchains (as far as I know) handle most (if not all) upgrades through a "hard fork" -- basically, when someone makes a new version of the software, the majority of the computers have to start using that new version. If some of the computers choose not to upgrade, you wind up with two different versions of the network (like Bitcoin and Bitcoin Classic).

Koinos is designed so a very small portion of the code is actually in "the blockchain" -- everything else is a smart contract on top of that. So, if the community wants to upgrade any part of the network, most of it can be done "on-chain" without requiring a full restart (or hard fork). Think of it as updating an app on your phone/computer without needing to restart the device.

This also means the team can move faster with upgrades because they can be smaller, more targeted, and less disruptive. This is the key feature that will allow Koinos to outpace other blockchains once it's launched.

More tomorrow,


P.S. If you're wondering how the community "votes" to adopt upgrades without hard forks, that's done through "governance" which we'll talk about tomorrow.