As a decentralized protocol, Ethereum doesn’t have a CEO or a board of directors responsible for decision-making, so traditional organizational governance will not work well with “The World Computer.” Still, most blockchains, including Ethereum, should be able to evolve and develop in response to the ever-changing needs of the crypto industry. This, in turn, implies the need for a formalized process to propose, discuss, and implement upgrades to the protocol.
And this is where the questions start. How can we be sure that Vitalik — or any other Ethereum Foundation member — won’t rug the community? Who can propose changes to the protocol, and who gets to decide which proposals will be implemented? How are disagreements handled?
In this complete beginners guide, we will answer these and many other important questions, that, we hope, will improve your understanding of decentralized governance and Ethereum protocol development.
The guiding principle of Ethereum governance
At the core of the Ethereum governance model lies the principle of “credible neutrality,” a concept coined by Ethereum co-founder Vitalik Buterin in his 2020 essay. According to Vitalik, the systems that involve high-stake outcomes — like managing billions of dollars in value on chain — should have credibly neutral governance mechanisms.
“Essentially, a mechanism is credibly neutral if just by looking at the mechanism’s design, it is easy to see that the mechanism does not discriminate for or against any specific people,” Vitalik explained.
“Note that it is not just neutrality that is required here, it is credible neutrality. That is, it is not just enough for a mechanism to not be designed to favor specific people or outcomes over others; it’s also crucially important for a mechanism to be able to convince a large and diverse group of people that the mechanism at least makes that basic effort to be fair.”
In other words, not only should Ethereum treat all the stakeholders equally, but also its governance mechanism should be perceived as fair and neutral by the majority of the community. But is this principle always consistently worked out in the Ethereum governance? To answer this question, let’s take a closer look at who are the stakeholders in the Ethereum community.
Who is involved in the Ethereum governance process?
There are several groups of stakeholders who play their role in decision-making when it comes to implementing protocol upgrades. However, it’s worth noting that a single actor can belong to more than one group — they are not mutually exclusive.
People who hold an arbitrary amount of ETH.
Ethereum DApps users
People who interact with decentralized applications (DApps) built on Ethereum.
People who are involved in writing applications that run on the Ethereum blockchain (decentralized exchanges, games, NFT mints, etc.) or develop tools that interact with it (bridges, wallets, oracles, etc.).
People who run light and archive nodes that propagate or reject blocks and transactions.
People who suggest changes to the protocol in form of Ethereum Improvement Proposals (EIPs).
People who run full nodes that can add new blocks to the Ethereum blockchain and earn staking rewards.
People who contribute to Ethereum protocol development and maintain various Ethereum clients, such as Nethermind, Besu, and Erigon at the execution layer or Lodestar, Nimbus, Prysm, Lighthouse, and Teku at the consensus layer.
On-chain vs off-chain governance
As we can see, blockchain actors may have different roles, but ultimately, they all have a stake in the prosperity of the ecosystem. To ensure that all participants have equal incentives to contribute to the protocol development and that all stakeholders take part in the process of decision-making, two distinct governance models were introduced, on-chain and off-chain. These terms refer to whether consensus is reached through transactions recorded on the blockchain or through an informal process of social discussion on different platforms. Both models have their merits and limitations, so trade-offs have to be made when choosing either one to govern the network.
On-chain governance aka token voting
On-chain governance for a blockchain enables users to directly cast votes in favor or against any given proposal. To participate, one should hold an arbitrary amount of the protocol’s native token, and the weight of the vote is proportional to the number of coins held.
This governance model makes voting more approachable for different groups of stakeholders, and allows to precisely measure and evaluate the weight of individual contributions. Additionally, it makes the entire decision-making process more formalized and thus faster and more efficient. In some cases — with MakerDAO being a good example — the proposed protocol changes are coded into smart contracts and executed automatically if the community votes in favor.
However, despite its obvious benefits, on-chain governance also receives a great deal of criticism for its plutocratic nature that invites whales to hoard protocol tokens and effectively take over the network. In his essay titled “Moving beyond coin voting governance,” Vitalik Buterin stressed that coin voting can be dangerous due to both incentive misalignments and outright vote buying.
“Small groups of wealthy participants ("whales") are better at successfully executing decisions than large groups of small-holders. This is because of the tragedy of the commons among small-holders: each small-holder has only an insignificant influence on the outcome, and so they have little incentive to not be lazy and actually vote. Even if there are rewards for voting, there is little incentive to research and think carefully about what they are voting for,” he wrote.
Off-chain governance: the case of Bitcoin and Ethereum
With an off-chain model, all stakeholders agree upon new changes to the protocol on online forums, through calls, mailing lists, or during conferences. In this case, large token holders aren’t given any preferential treatment. However, such a mechanism has also its downsides, namely the extended time of implementing new proposals and the difficulty to register input from an individual community member.
Both Bitcoin and Ethereum’s governance happens off-chain, with Vitalik admitting that for a long time, he has been “a fan of off-chain governance wherever possible.” At the same time, Ethereum co-founder acknowledged that this model works better for base layers and some application layer projects that can be forked away without losing external assets locked on the chain, as off-chain governance is generally more friendly to forks that inevitably occur when “rough consensus” can’t be achieved. But for most DeFi projects, some kind of formalized on-chain voting is a must.
“If Tezos's on-chain governance gets captured by an attacker, the community can hard-fork away without any losses beyond (admittedly high) coordination costs. If MakerDAO's on-chain governance gets captured by an attacker, the community can absolutely spin up a new MakerDAO, but they will lose all the ETH and other assets that are stuck in the existing MakerDAO CDPs,” Vitalik explained.
What is Ethereum Improvement Proposal?
Any of the aforementioned stakeholders can submit an EIP — short for Ethereum Improvement Proposal — that outlines the potential new features for the network. Although anyone can draft and submit such a proposal, the real challenge lies in garnering support for the idea.
Before submitting EIP to the GitHub repository, it’s advised to solicit feedback on Ethereum Magicians, a dedicated forum with a focus on improving the ecosystem “without unwanted noise.” It’s also a good place to find organic support for your proposal — the more people would join your campaign, the greater the chances that core devs will take your EIP into consideration.
After the proposal is created, it goes through a standardized procedure of community discussion, research, and, if accepted, inclusion in the next protocol upgrade along with other successful EIPs.
The detailed guide on the stages of the EIP process and writing EIPs can be found in EIP-1, a document that borrowed a lot from Bitcoin’s BIP-0001 written by Amir Taaki, who in turn drew inspiration from Python’s PEP-0001.
How disagreements are handled
Each time a new EIP is included in a client release, miners and other nodes can choose whether to upgrade to the new version or stick with the old one. Both versions are backwards compatible, and nodes running on the older client will still see the chain as valid. An upgrade that doesn’t cause any compatibility issues between the older and newer versions is called a soft fork and contains only minor new features.
On the other hand, a radical upgrade that makes an older version no longer compatible with the new one is called a hard fork. Nodes that fail to update their software no longer meet consensus, and two different versions of the network form as a result of the chain split. For that reason, hard forks — referred to as “network upgrades” by Ethereum core devs — are announced in advance so that nodes have enough time to prepare for the changes.
Although hard forks can greatly reduce the security of the blockchain due to computing power now being split between two chains, they can be helpful to resolve a disagreement within the community. Unlike traditional systems, where it’s virtually impossible to change the rules, blockchains give all participants the freedom to “fork off” if they disagree with proposed changes.
And this is what precisely happened in 2016 when Ethereum was still in its nascent stage and used an on-chain governance model. After a vulnerability in a smart contract allowed a hacker to drain over 3.6 million ETH — roughly one-third of the DAO’s reserves at that time — the Ethereum community faced a big dilemma: let the attacker get away with stolen Ether or roll back the history of the blockchain and return funds. The decision to fork reached over 85% of the votes, but a subset of the community viewed this move as an intervention into blockchain immutability and an attempt to bail out VCs. They rejected the hard fork and maintained the older version of the protocol now known as Ethereum Classic (ETC).
According to Ethereum.org, "The ability to fork in the face of significant political, philosophical or economic differences plays a large part in the success of Ethereum governance. Without the ability to fork the alternative was ongoing in-fighting, forced reluctant participation for those who eventually formed Ethereum Classic and an increasingly differing vision of how success for Ethereum looks."
How can you contribute to Ethereum development?
All Ethereum users are welcomed, and in fact encouraged, to participate in governing the protocol. If you want to get involved, you can always submit your EIP or discuss current proposals. More technically minded users can contribute to client development, run a node, or maintain their own fork.
Even small things matter — you can always choose a specific version of a client and try to convince other members of the community to switch to it. After all, it’s the diversity of opinions and backgrounds that makes Ethereum a truly decentralized world computer.