Decentralisation & System Design

Words
1129
Reading
6 min
Listen
Play
7y

One good thing about recent DPoS drama is that everyone on the Steem Blockchain community and elsewhere on the Twitter atleast heard the word decentralization. Beyond the economic aspects like mining and tokens, decentralization is an interesting system design concept.

System Design

In very simple terms we can think of an office where multiple people sit and work or a resturant as a system. Lets take the restaurant and it has many "components", well people working together in an organized fashion. We have Chefs, Suppliers, Cashiers, Sometimes greeters, Home Delivery staff and each person has often a set of well defined tasks and they interact with each other. Though these interactions may not be written down in a manual there will be an established order and manner of different people interacting and working together as a unified group or entity work towards a result. A restaurant where a set of people with a loosely defined rules and guidelines work together for a common objective of providing healthy, tasty food and beverages to patrons. The system also ensures the sustainability by employing a cashier and getting paid.

In the world of Computer Science, this is a system comprising of components interacting and performing predefined tasks to achieve a definite and desired output. The means by which we ensure the system to work has to be established by strict rules and guidelines. A strict rule should be that the Chef should be Cooking the signature dish and a cashier should not be preparing the signature dish. A guideline could say, anyone who happen to be the entrance should attempt greet the guests. Such a set of rules formed aka designed and this can be seen as the process of System Design.

Governance

The application of rules in system design to ensure the co-existence and collaboration of system-components can be thought of as governance.

This is to state that the Chef should be making the signature dish and not the cashier.

A floor manager or a restaurant manager can be seen of someone enforcing the rules and ensuring quality.

Decentralize the restaurant

image.png

In the movie Soul Kitchen (https://www.imdb.com/title/tt1244668/mediaviewer/rm1250956800 ), we the story of a restaurant becoming a huge success. The essence was the mix of a great Chef, music and companionship. The rules of engagement was defined by love, friendship and music. The result was each individual character playing their rules to the fullest, sincerely and without supervision.

The Chef, bound by the intangible rules of friendship performed not just his duties but went beyond and over it. So is everyone else. I would see this as an unsupervised, but yet bound by principles to work towards a common goal.

Rather than any traditional example of programmable decentralized systems, the examples of a successful garage music band or the restaurant in the movie Soul kitchen would be the best example of an autonomous, self governed, well orchestrated decentralized system.

Decentralization

The public ledger or the Distributed Ledger Technology (DLT) made mainstream by Bitcoin Paper and sample implementation is the best example of system designed to perform in an autonomous manner. This was the first time that human kind could implement decision making in a transparent, unbiased and unconditional manner.

The decision making in the Bitcoin network is decentralized - means the nodes, a definite number of them takes the decisions collectively. The decisions are automatically and strictly imposed by the code or programs running in the nodes. Bitcoin also imposes a huge cost on pretty much any "decision" and thus it costs a fortune to derail a collective design. The Proof-of-Work (PoW) concept was designed and those who engage in the decision was paid in coins.

Why move away from PoW ?

Cost and damage to the environment would be what I would like to cite as reasons to investigate different mechanisms to make collective decisions. The computational cost and thus the cost of equipment, electricity and labour to ensure smooth decision making on the Bitcoin Public Ledge system made many people look for alternate consensus algorithms. Different iterations of PoW like the Etherium's EVM which uses the computational power of the decision making systems to make alternate uses as well. Many has still seen it as costly and indirectly linked the cost with initial investment.

The simple way to differentiate POS and PoW would be high operational cost vs high capital cost.


Proof of Work is OPEX intensive while Proof of Stake variants are CAPEX intensive


The Proof of Stake variants increased the initial capital investment : The secenario we are seeing now with Steem blockchain is that of someone with a very high capital able to veto all the decisions by less financially capable individuals.

Decentralized systems with human interaction

The system design of a blockchain like Steem is very complex. Unlike the Bitcoin public ledger which is literally working on a fixed set of inputs, most of the POS variants and even for that matter Etherium-PoW is dealing with a large number of inputs. Etherium for example becomes susceptible to attacks and exploits as its EVM is nothing but a mini-computer that can be used to run programs. The practically infinite number of programs running on the EVM nodes results in an extremely complex but yet limited set of scenarios. A chain like Steem blockchain which is literally a chain of emotions on the other hand has to deal with infinite number of possible scenarios. While its possible to perform attacks on blockchains like Bitcoin or Etherium they have a limited attack surface. (Attack here is not necessarily malicious but a challenge on the status quo)

We are seeing numerous applications of blockchain technology in areas like Supply chain, Electronic Voting machines, Encrypted Communication mechanisms etc. Each of these systems brings practically unfathomable number of scenarios for a system design to consider. I have also seen strange projects like Crime-Database on a private-blockchain ( for fun and profit!). Underlying all these use cases is system design. A supply chain scenario easily becomes a "system of systems" interacting with humans.

To Err is Human & Summary !

Decentralized, autonomous decision making systems can one day ensure human interference failing system design ?
(no, I am not talking about dawn of machines here)

Automatic to increase throughput and arguably reduce errors in certain areas is common practise. Such cases involve decision making. The decentralization paradigm is exploring ways to make decisions in a better fashion. The approaches being explores in the blockchain technology space and consensus is ensuring that we understand the decision making and thus governance in a better manner. Since we use governance to accomplish much the explorations in decentralization is a huge boon to system design as a whole.

Decentralisation & System Design | Ecency