DFINITY Governance

There are a lot of benefits that come with on-chain governance. That’s why DFINITY has a governance system built-in – the Blockchain Nervous System (BNS). In this episode, I talk about the shortcomings of off-chain governance and a high-level overview of how the BNS will work.

Video Transcript:

Hey guys. And welcome to another episode of Inside DFINITY.

Today, I want to talk about a topic that makes DFINITY different from most other existing blockchain systems. What I want to talk about is GOVERNANCE. I’m sure you’ve heard multiple terms here. In general, there are two types of governance systems – on-chain and off-chain governance systems that various blockchain protocols use. Before we dive into the specifics, why is it important?

Blockchain Ecosystem

If you look at a blockchain ecosystem, you will notice that there are different actors: there are miners, there are users, and there are  developers; and, probably, a whole bunch of other categories, in which stakeholders or participants in this ecosystem can be defined. And why is it important? With all of these, different actors potentially have different interests. For example, when we look at the Bitcoin network, the users which want to make transactions and move bitcoins around, historically they’ve had an interest in bigger block sizes, because it would allow them to have cheaper transaction fees. It would also allow them to have faster transactions with more data within into one block.

Off-chain governance systems, most widely used in the platforms, are already live, for example, Bitcoin. Let’s say in Bitcoin – the miners have an interest to keep the block size as it is because it means they can stick to their current hardware, they don’t need to upgrade any clients. While on the other end, you have users who want to make transactions, and have interests that these transactions are as cheap as possible and as fast as possible, which would speak for an upgrade of the block size.

Off-Chain Governance Systems: Bitcoin, Ethereum

How do these groups come to an agreement? With off- chain government systems what happens is that users, developers, and miners – they all – meet in some off-chain property: that could be Reddit, Telegram Group, Slack Channel or even an offline meeting at a conference. They discuss solutions, and they try to come to an agreement. And once enough people come to an agreement, the update is released, it is hoped that enough people adopt it for the network to fully upgrade to that new release.

For Bitcoin, the off-chain governance system historically has proven to be very difficult. It has been multiple proposals of upgrading, block size and other changes to parameters and have not been able to be processed and released because the network could not agree on one solution. But even worse, another platform that uses an off-chain governance system is Ethereum.

Data Access Object (DAO) Surface

If you remember, it was about two years ago when the DAO happened. And, if you remember, what the DAO was – it was basically a distributed venture capital fund that would raise money via ICO and, then, channel those funds into various companies based on decisions that people made on the chain. Now, while the DAO on paper was very successful raising money, I think it raised about 150 million dollars at the time, which now was worth much, much, much, more.

Unfortunately, someone hacked the system and got away with about 50 million dollars – so about one third of all the money that was raised as a part of the DAO. There was an issue in how the smart contract that governed DAO ICO was written and, so, someone was able to steal about one-third of all the funds.

So what happened? The community was split. Some people thought that the money that was stolen as part of the DAO hack should be returned, there should be a hard fork that reverses that transaction; on the other hand, there was a big part of the community that said blockchain should be immutable. That’s one of its most valued qualities and that’s why we should never mess with the immutability of a blockchain.

So what happened? Vitalik listened to both sides of the community and, then, decided that even though code is law, in this case the end justifies the means. And he decided to release an update that he asked everyone to adopt, where those 50 million dollars were returned to the DAO. Unfortunately, not everyone followed Vitalik ‘s recommendation.

ETH Classic

There was quite a big part of the communities that did not agree with the hard fork or they just didn’t want to go through the trouble of updating or, whatever the reasons were, but a large part of the community stayed with what’s now called ETH Classic. ETC is a symbol. So, the chain split into two: there was a hard fork. Of course, that’s not something you want to happen to your network because it creates a lot of insecurity and instability, because both coins are together now for what’s one coin before; or when one chain is completely useless and the other chain is going to be worth a lot.
How do you deal with such a situation? There is a lot of insecurity. So, technically you don’t want that to happen in a network that a lot of users, companies are going to be using.

Hard Forks & Soft Forks

So, before we move on, a term that I’ve used a lot now is fork. And there are only two types of forks: hard forks and soft forks.

A fork basically means that until a certain point the chain was one, and then there’s a release that is adopted by only part of the network. Suddenly the chain splits into two. In the case of a hard fork, that means that the two ends of the fork are not compatible with each other. The upgrade is so substantial that one is not compatible with the other, and that clients who do not upgrade cannot follow the new chain. A soft fork, on the other hand, is an upgrade that introduces new features to a block where the way data is processed: in a way that’s backward compatible.

All clients, meaning clients that have not yet upgraded, can still participate in the network and can still follow the chain and build new blocks although they’re going to be missing out on some features. With that, we now know that its off-chain governance is probably not an ideal solution because it leads to soft and hard forks which are hard to manage and generally lead to a fragmented network. So what’s a potential solution?

On-Chain & Off-Chain Governance Systems

Now, you might already guess it if these systems where governance is handled in properties somewhere else on the web but not on the chain or off-chain, then, the alternative is called on-chain. What that means is that your blockchain brings built-in mechanisms for you to make decisions, for the community to make decisions, and for the community to govern itself. If the blockchain allows you to make decisions on the chain, it means the clients can also update themselves. A release can be rolled out to all the clients that are currently connected to the network, which makes it much, much faster for you to upgrade and also prohibits from diverting into different forks.

In a way, if you look at this, it’s a bit like when the iPhone came out and at the beginning you had to always manually go and download the software. And it was a complicated process to upgrade, and some people chose not to upgrade because they liked certain features and they didn’t like how those features were changed in newer versions. So, in a sense, on-chain governance is like an auto update: when your computer automatically or your phone automatically downloads security updates. It might just prompt you for if you want to stop it, generally just executes them and automatically adapts to new updates and upgrades.

DFINITY Solution: Blockchain Nervous System (BNS)

So now to the interesting part. How does DFINITY solve this? And how does DFINITY handle on-chain governance? DFINITY is one of the few systems coming out that has a very promising idea for how on-chain governance can work.

DFINITY does this by something that we call the Blockchain Nervous System (or BNS). A blockchain nervous system, i.e. BNS, is the built-in governance protocol that the DFINITY will ship to all its clients, to all its users, all its miners, everyone who participates in the network. We’re going to use a different episode to dive into the specifics of how the Blockchain Nervous System works. In general, the way you can imagine it is this: you can submit proposals to the Blockchain Nervous System and you stake them, meaning you put some money down to say that you’re very serious about these proposals.

Now, everyone who wants to vote on proposals also stakes some money and, then, return to get the neurons. What we call neurons are, kind of, voting tokens right now, and then you can use those neurons and voting tokens to make decisions. And what’s so clever about it is that you can delegate your votes. So, you can delegate your vote to someone who you know it’s more to date or maybe you’re going on vacation, you want to vote in a similar way as one of your colleagues does, if you set your neurons to follow that colleagues votes. And it will vote for you.

Summary Blurbs

  • There is on-chain and off-chain governance. Off-chain governance has a few problems; most notably, it’s hard to come to one decision as the whole community and, then, make the whole community adapt that. That often leads to forks. And forks are bad because they fragment the network: it means the network loses value or, at least, there’s a lot of insecurity.
  • There are two types of forks: hard forks which mean that clients who do not upgrade can now participate in new blocks or wouldn’t understand new blocks; and soft forks, where clients who do not upgrade can still follow the new blocks but they might not be able to create that, missing out on some crucial features.
  • That’s why DFINITY is building in the governance protocol into its blockchain. We’re using an on-chain governance system. In the case of DFINITY, it’s called the Blockchain Nervous System. The Blockchain Nervous System works by getting some neurons and, then, either directly voting on proposals or delegating your votes and your neurons to follow some of your colleagues, friends, or anyone that you want to follow.

With that, I hope, that gives you some insights into what we’re planning with DFINITY in regards to on-chain governance.

Hiring Opportunities at DFINITY

Now I’m going to enjoy one of the big benefits that I have living right here on the lake of Zurich. I gonna go wakeboarding.

And with that, I just want to say we’re also hiring, we’re opening an office right here in Zurich. So, if you also want to be in an environment where you work with extremely smart people, work on a cool project, and also have to benefit that every now and then you might be able to go water skiing or wakeboarding on a Friday evening, head over to dfinity.org/jobs.

And with that,
I’ll see you soon.