___  ___    _ _    _  _ _____   _____
 / __|/ _ \  | | |  | || |_ _\ \ / / __|
| (_ | (_) | |_  _| | __ || | \ V /| _|
 \___|\___/    |_|  |_||_|___| \_/ |___|

 --- A GOPHER-LIKE INTERFACE FOR HIVE BLOCKCHAIN ---

How to create a founding document for a blockchain?

BY: @samupaha | CREATED: May 21, 2017, 5:27 p.m. | VOTES: 77 | PAYOUT: $43.10 | [ VOTE ]

I wasn't exactly happy with the example constitution that @dantheman posted. In a way it's a good text but something was bothering me but I couldn't understand what it was. Now I think I finally got it.

I'm not sure if a constitution for a country is a good foundation for a constitution for a blockchain. They are very different institutions.

Good constitutions (for countries) will define what are the limits of the state and the government. Rights and freedoms of the citizens are written down. But a blockchain is not a country. It's not crowded with people who might have very different opinions about everything and who need to find a way to get along. They all live there, they don't have other options than try to get along as well as possible.

A while back I might have written the same kind of constitution. I can see and understand how Dan is coming from libertarian school of thought. But my thinking has been evolving from "how to prevent others doing bad things" to include more "how to use freedom to create something valuable and useful". Not only preventing negative things but to create more positive things at the same time.

Blockchain is an organization. Usually nobody is forced to take part in it. People are not born to blockchain users like they are born to citizens of a country. On the other hand, organizations are founded for a reason. So maybe the blockchain constitution should explain why the blockchain exists? What it's trying to achieve?

Instead of a constitution-like text, the founding document of a blockchain could include a long-term vision (or a mission statement) that explains why the blockchain was created. It should also define ways how the blockchain can and cannot advance towards the long-term goal – for example, it can never confiscate cryptoproperty of its users – basically, the ethical/moral boundaries for actions that apply in the cryptoworld. Talking about "life" in this context isn't necessarily the best thing because human life and digital organization have very little to do with each other.

When the long-term vision is clear, it becomes easier to understand what kind of steps should be taken to go forward. Just analyze the current situation, compare it to the goal where you want to be, and you can see what is missing. From that information you can form medium-term and short-term goals.

For EOS, for example, long-term goal might be: to become the most valuable blockchain platform/ecosystem in the world and then keep that position. From that we can derive medium-term goals: find and conquer niche markets to build a network effect. Short-term goals will be building infrastructure and features that particular niche markets need and want.

This perspective is important because it helps to prevent the organization becoming directionless. Instead of letting everybody just do anything they like (as long as it fits the boundaries of constitution), the founding document should give a clear goal for everybody to strive for. It empowers the organization and helps everybody to work together towards a common goal.

Many blockchains are very directionless today. There are lots of visions how a particular blockchain should be developed, but those are held by different people and they can't agree what vision is the one to follow. For example, Bitshares hasn't had a clear vision which made it difficult for it to decide what features to develop, prioritize, and implement.

Property rights and arbitration-based constitution

Based on my reading of Dan's posts about blockchain constitution, I think his perspective is a few steps too much ahead.

Property rights are not so straightforward as Dan seems to think. If a blockchain promises to make everything it can to protect users, what that actually means in practice? If private keys are stolen, are they returned to the original owner? If tokens are stolen, are they returned to the original owner? What if the original owner was very careless with the private keys? Should the blockchain return the money even if private keys were stored in place where anybody can see them? If yes, then it's kind of redundant to have a blockchain. The point is that "protecting private property" is not a clearly defined goal. There are situations when careless actions should be seen like throwing something into a trash can: an indication of giving up the property right.

And the focus on arbitration... It's not easy to understand why it must be emphasized so much. Is it because EOS is a smartcontract platform and it's expected that there will be more or less conflicts over contracts that need human decision makers to resolve them? What are some example cases that need an arbitration system to be in place?

For me it seems to quite weird to focus on that. What I'm more interested is a process how to make important decisions over the blockchain, such as hardforks, adjustment of blocktime, block reward, funding of development and related projects, transaction fees, etc. That's the essence of governance in my opinion. It's really hard to create a perfect blockchain. It will need changes. Governance is the process to make those changes. The decision making process needs a fine balance between quick decisions when they are needed and a great resistance against stupid decisions.

We must separate the governance of bare blockchain and the governance of services that are implemented on the blockchain. It sounds to me that conflict resolution over smartcontracts is rather a service than a core blockchain feature. At least I don't see how things like core token supply or transaction fees can be derived from a constitution that's based on arbitration for property rights.

It might be helpful to think about the blockchain that doesn't have any services built on top of it. Its mission is just to make blocks forever. Because technology advances, it will need to be upgraded sometimes, so it needs a way to decide how and when upgrade should happen. It's good to have also a well-defined process to change parameters like blocktime, transaction fees, and reward for block producers.

The goal is to make the blockchain very resilient so it can work forever, whatever might happen. Bugs are found and fixed, developers come and go, block producers are attacked or misbehave, economic incentives change, etc.

When we have designed very resilient blockchain governance system, we can start to build some features. If our customers can be sure that our blockchain will be running very reliably for a long time they can truly trust it.

That's the bare blockchain governance. After that is OK, we can think how to govern the services built on top of the blockchain. Preferably they can be separated from blockchain governance, but that's not necessarily always the case. Sometimes the service is so valuable that it makes sense to combine it directly with the bare blockchain governance process.

In the case of a smartcontract platform it might be good idea to include conflict resolution system in the blockchain governance. But I'm not sure if it's a good idea to do it in the beginning. My intuition says that it would be better to separate bare blockchain governance and arbitration and wait until we see what kind of problems actually need a resolution.

When a totally new kind of system is created, it's really hard to know in advance what kind of problems and conflicts will arise. Focusing on arbitration is like jumping too many steps ahead. We don't have the blockchain yet. First the blockchain should be launched. Then it should be used by people. Then we can see what kind of problems users have and only after that we can know what kind of dispute resolution system might be the best. An arbitration system is a feature/service that the blockchain offers to users. It shouldn't be a central focus of the blockchain, not at least until we have seen the blockchain in action.

It's good to remember that international arbitration systems haven't just born one day and people decided to use them. Instead they have evolved over hundreds of years to meet the needs of businesses and individuals. I suspect that evolution over time is also a way to go to create a blockchain arbitration system.

Urbit

If you haven't already checked out Urbit, you really should. It's one of the most interesting projects out there. It doesn't have a blockchain, but it has cryptoproperty. They describe it like a land ownership, unlike blockchains which enable currency ownership.

Urbit is designed to become a digital republic. But it's not yet – the developers emphasize that a young system can't be decentralized properly so it's useless to even try. Only mature systems can be decentralized – a view that I very much share with them.

There are a few posts worth reading:

For me it seems that Urbit has pretty good approach to organization development. You might want to read also their interim constitution and beliefs and principles.

A few objections to the example constitution

I'm not saying that what I write here is the right way to do this. This is just publishing my thinking process to get feedback and to understand this topic better. But there are some things that I disagree with in the example constitution.

First of all, the language. It's written in so weird style that only a few people can actually understand what it means. Remember the KISS principle and write it with very clear language. Blockchains are global organizations and many of the users don't have English as their native language.

Based on article 7 it seems that block producers will be also politicians who have power to decide whether or not updates will be accepted. I don't think this is a good idea because running a block producing server is a technical job and deciding about updates is politics (and everything that is connected to it, like economics). Those two jobs require totally different skillsets. That's why it makes sense to separate them. It would be better to have a committee (or something similar), like Bitshares has, to make political decisions.

And I have a little bit of skepticism if agreeing to the "terms of service" is really a valid contract? People will habitually just click "yes" to everything without reading the text. If it's well-known fact that people won't understand what they are doing by clicking "yes" (or in this case, making an agreement transaction on the blockchain), I'm not sure if we can say that a contract was made. A contract to be valid requires that participants have consciously agreed to it.

If we have a constitution-contract that is so difficult to understand that it requires users to seek help from lawyers, it's really hard to get any kind of network effect. It's just too frightening for normal people to use.

TAGS: [ #blockchain ] [ #blockchain-constitution ] [ #eos ] [ #dao ]

Replies

@mahaelsayed | May 21, 2017, 7:28 p.m. | Votes: 3 | [ VOTE ]

great work

@modprobe | May 21, 2017, 10:02 p.m. | Votes: 0 | [ VOTE ]

My friend, it seems that there is a vast disconnect between what Dan intended to write with his post, and what you read. I'm honestly trying to understand where you're coming from, to say things like:

> For EOS, for example, long-term goal might be: to become the most valuable blockchain platform/ecosystem in the world and then keep that position.
> [...]
> The point is that "protecting private property" is not a clearly defined goal.

Are you honestly contending that "protecting private property," stated in proximity of a particular, context-aware definition of private property, is more specifically descriptive than "to become the most valuable blockchain [...] and then keep that position"? What makes a blockchain valuable? What is value? Can you objectively define the value of any thing? If not, then how will we objectively determine the values of blockchains (which are decentralized, autonomous networks intentionally designed to be difficult to map or reconnoiter)?

But you then argue private property rights are too difficult to define because of the potential for abandonment of property, negligence, and key theft? Ironically, all of these are addressed in the "Property Rights" section of the mockup constitution:

We recognize that private keys can be stolen and used to sign unauthorized messages on behalf of that Member. We recognize these forged transactions lack the authority to exercise the property rights controlled by the stolen key.
We will take reasonable measures to secure our accounts. We shall give public notice within a reasonably short period of time after discovering our keys have been misused.

Now, could that be made more explicit? Of course, that was stated up front, but even as is, it's a lot better than "make it more valuable"... So while you claim to want greater specificity, you criticize specificity and suggest vagueness instead. You contradict yourself.

As to your confusion around arbitration, I understand your position here, and for this to make sense, you need to contemplate why anyone would write a constitution in the first place. In particular, you need to understand law. If you don't understand that vocabulary (law), then the documents which use it (contracts and constitutions) won't make sense because you're not using words and ideas the same ways as the author.

> Is it because EOS is a smartcontract platform and it's expected that there will be more or less conflicts over contracts that need human decision makers to resolve them?

Well, yeah... It is. I cannot possibly imagine that any smart contract system will be used by any meaningful number of people without there arising disputes. People just don't work that way.

> What are some example cases that need an arbitration system to be in place?

Try the DAO? In that case the fundamental dispute was whether the parties agreed to the smart contract code as written, or the ideas and intents behind the code? We've already seen a real world scenario where parties to a smart contract couldn't agree on what exactly the contract terms were, a question smart contracts were promoted as resolving forever. And no procedure for how to handle this was defined, nor was there any clear indication as to applicable law, so they just made something up and ended up creating a permanent fork of their chain, which is pretty much the worst possible scenario for a blockchain.

A major purpose of a blockchain constitution is to resolve these kinds of high-level questions and define procedures in advance and with full transparency for handling the details of future disputes.

So yes, the emphasis on arbitration is very important: it clearly sets the procedure for handling ambiguous cases when people realize their situation is less simple than they'd imagined.

@samupaha | May 22, 2017, 8:53 a.m. | Votes: 0 | [ VOTE ]

> Are you honestly contending that "protecting private property," stated in proximity of a particular, context-aware definition of private property, is more specifically descriptive than "to become the most valuable blockchain [...] and then keep that position"?

Yeah, because honestly I am confused how to think about "private property" in this context.

For now, from the perspective of a blockchain, ownership of a token has been very clear: if you know the private key, you have the power to use the token so you own it. A blockchain doesn't care how you got to know the private key. Ownership is a fact that is recorded on the blockchain.

But when you add an arbitration system over a blockchain, the whole thing becomes much more ambiguous. Arbitrators become some kind of final authority over transactions. Then we have a need to draw the lines what is forbidden and what is permitted. The example constitution is quite unclear:

> We agree the Arbitrator’s ruling is final and binding. We also agree that precedent of prior rulings shall not be used as the basis of future rulings.

So we can't know, based on prior rulings, what kind of rulings there will be in the future. It's all up to the arbitrator in every case.

> We agree that rulings of arbitrators shall have no authority over the right of the Producers to exercise discretion over which valid transactions are included in Blocks. The Producers, at their discretion, may use their ability to exclude transactions from new Blocks to enforce arbitration rulings.

So there might be different outcomes: arbitrators rule something but block producers will care or don't care.

> What makes a blockchain valuable?

Sorry for being too vague, it was just a quick example of how to think about the vision and not by any means a full mission statement. The market cap was in my mind. If EOS is so good as it seems to be, there is no reason why it shouldn't be the number 1 in Coinmarketcap.com. That's pretty clear goal.

> We recognize that private keys can be stolen and used to sign unauthorized messages on behalf of that Member. We recognize these forged transactions lack the authority to exercise the property rights controlled by the stolen key.

What does "lack of authority" mean in this context? Traditionally blockchains haven't cared how the private key has been acquired. If you have the key, you have the authority to exercise property rights, period. So this seems to be quite fundamental change to the logic how blockchains work and needs more commentary so that everybody will understand what it means in practice.

> We will take reasonable measures to secure our accounts. We shall give public notice within a reasonably short period of time after discovering our keys have been misused.

But where do you draw the line? What is "reasonable" in this context?

> As to your confusion around arbitration, I understand your position here, and for this to make sense, you need to contemplate why anyone would write a constitution in the first place.

That's exactly what I'm trying to do here. I don't just try to understand this particular constitution but also think outside the box. That's why the title says "founding document" to include all kinds of texts/statements/contracts. The cryptoworld is new and we are pioneers. We don't need to copy what people have done in the past in current legal systems.

> In particular, you need to understand law. If you don't understand that vocabulary (law), then the documents which use it (contracts and constitutions) won't make sense because you're not using words and ideas the same ways as the author.

Yeah, this is the problem.

The blockchain won't become very popular if people need a help from a lawyer to use a smartcontract to buy a cup of coffee.

I'd rather see blockchains as a tool to make trade easier, not more complicated! Rather than creating a need for lawyers we should try to use blockchains to decrease the need. Usually lawyers are highly immoral individuals and try to game the system to make profits for themselves and their customers.

>> Is it because EOS is a smartcontract platform and it's expected that there will be more or less conflicts over contracts that need human decision makers to resolve them?

> Well, yeah... It is. I cannot possibly imagine that any smart contract system will be used by any meaningful number of people without there arising disputes. People just don't work that way.

I don't say that an arbitration system is a bad idea. I'm just very skeptical whether or not it should be the foundation for the whole blockchain. My intuition says it would be better to let it evolve little by little with the blockchain ecosystem, to answer the demand by markets, instead of trying to guess before the markets even exist what people will need and want to use.

> Try the DAO? In that case the fundamental dispute was whether the parties agreed to the smart contract code as written, or the ideas and intents behind the code? We've already seen a real world scenario where parties to a smart contract couldn't agree on what exactly the contract terms were, a question smart contracts were promoted as resolving forever. And no procedure for how to handle this was defined, nor was there any clear indication as to applicable law, so they just made something up and ended up creating a permanent fork of their chain, which is pretty much the worst possible scenario for a blockchain.

If the dispute resolution system doesn't evolve with market demand, it's quite possible that people will just ignore it's rulings. As I wrote in the OP, I'm skeptical if clicking yes to "terms of service" is really a valid contract. At least most people don't feel that way. For them, clicking yes is just a thing that you need to do to use a software or service. In their mind they are not signing any kind of contract.

So even with an arbitration service, hacks like The DAO could end up with fork to two chains. If enough people disagree with the resolution, they just ignore it and start using a forked blockchain because they don't think they made a valid contract with the blockchain by signing the constitution.

That's why I'm emphasizing the evolutive perspective. The dispute resolution system will need to evolve with the community to gain real authority. If users don't feel that the system has real authority, it won't have.

> A major purpose of a blockchain constitution is to resolve these kinds of high-level questions and define procedures in advance and with full transparency for handling the details of future disputes.

I'd like to see the blockchain constitution to focus (mostly) on the bare blockchain and not on features that are build top of the blockchain.

Try to think it this way: When the blockchain is launched, it doesn't have any features besides transaction for core token. So basically it's just a payment network with one currency. The goal for constitution (or another type of founding document) is to define the process how any kind of decisions over this bare blockchain are made. There will be adjustments for different parameters, there will be decisions over hardforks and softforks. When that system is fully ready, the community can use it to implement more features, such as a smartcontract platform and an arbitration system.

It doesn't make much sense to let an arbitration system to handle most of the decisions over the bare blockchain. There might a need someday to make a roll-back like in the case of The DAO hack, but that is a special case. The biggest priority for governance system is not to handle special cases but the most common cases.

[ BACK TO TRENDING ] [ BACK TO MENU ]
CMD>