luandro / modular-societies

Patterns and guidelines for the creation and sustenance of modular societies

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Modular Societies Logo

Introduction

In just about one decade of existence the World Wide Web emerged and became, where available, the de-facto medium for human communication.

But as I write this, early 2016, we are still using digital platforms in a similar way as with technologies like the television or the phone. We've been neglecting the use of these technologies in many fundamental areas of social organization such as exchange of goods and services, and decision making. This essay is an investigation on the philosophy, use and impact of electronic communication technologies that have contributed to the strengthening of political and economic independence within a community.

Why focus on community values, not on individual values? Both are fundamental for human well being. But the centralization of human population has had many social consequences such as wide-spread of neoliberal economic practices and the acceptance of an oligaricarian model of governance, which in turn had many impacts on the satisfaction of Fundamental Human Needs. These models are focused on individualistic values, leaving unbalanced the scale of individual versus the collective.

Modular Societies is about how decentralized local networking could be used to build community values and strive for economic and political independence. Decentralization of political and economic power and information unarguably brings many advantages to human well being. These changes would in no way depend on top-of-pyramid organizations, only in members of a community.

With this I will try identify patterns and guidelines that could be useful for the creation and sustenance of modular societies, inspired by anthropological studies and personal observations on how isolated societies function and achieve collective well being. As well as how this knowledge relates and could be strengthned by digital communication technologies.

Age of Tumor

The sad truth is that the most users either have become addicted to instant communication, which has generated wide spread of very anti-social real world behavior; content most users generated is a reflection of information created by the same old sources; and are as if they could only read, and not write, because of the dificulty involved in developing and deploying an application.

Ideally societies should have come to exist from common needs that would be more easily solved from combining efforts of many. Unfortunately as history tells us, it was less about choice or needs and more about force for the most part of the so called "civilized world".

As we enter a new phase of human development where communication has become global, we can now start conceiving alternative ways of organizing ourselves. The most obvious question than is what would be the bases for our joining together to form a communal society? The achievement of well being would be the most reasonable answer, as in theory this is what every person works to achieve.

Dapps

Open Source
		The application must be completely open-source, it must operate autonomously, and with no entity controlling the majority of its tokens. The application may adapt its protocol in response to proposed improvements and market feedback but all changes must be decided by consensus of its users.

		The application's data and records of operation must be cryptographically stored in a public, decentralized blockchain in order to avoid any central points of failure.

		The application must use a cryptographic token (bitcoin or a token native to its system) which is necessary for access to the application and any contribution of value from (miners / farmers) should be rewarded in the application’s tokens.

		The application must generate tokens according to a standard cryptographic algorithm acting as proof of the value nodes are contributing to the application (Bitcoin uses the Proof-of-Work Algorithm).

Modular societies should adapt to take into account real community values. For example in rural areas, a community could use a Proof-of-Work in cultivating bananas, raising and breeding chickens, labor hours, etc.

		All changes to Bitcoin must be approved by a majority consensus of its users through the proof-of-work mechanism.

This is basically a self-governed entity, based on consensus system. Such system is the same used in well organized indigenous societies in the Philliphines[1](cite some work), assemblies[2](cite some other), etc. I've seen it work in a society with a thousand members, so the use of such system should be balanced between real-world and digital interactions, according to the communitie's scale.

		The same way that governments struggle to learn and regulate Bitcoin because the concept of currency is associated with it, governments might be compelled to regulate an open-source computer program that is a decentralized application.

		The ownership of the Dapp’s tokens is all that is required for the holder to use the system. It’s that simple. The value of the tokens is determined by how much people value the application. All the incentives, all the monetization, all the ways to raise support are built into this beautifully simple structure.

Daaps

Proof-of-Work and Proof-of-Stake Mechanisms
		There are two common mechanism by which Dapps can establish consensus: the proof-of-work, POW, mechanism and the proof of stake, POS, mechanism.

		With the proof-of-work mechanism, decisions about changes in a Dapp are made based on the amount of work that each stakeholder contributes to the operation of the Dapp. Bitcoin uses that approach for its day-to-day operation. The mechanism for establishing consensus through POW is commonly called mining.

		With the proof-of-stake mechanism, decisions about changes in the Dapp are made based on the percent ownership that various stakeholders have over the application. For instance, the vote of a stakeholder who controls 10% of the tokens issued by a Dapp, carries a 10% weight. The Omni Protocol is based on the POS mechanism.

		The two mechanisms can be used in parallel, as is the case with Peercoin. Such a combination allows a Dapp to operate with less energy consumption than proof-of-work alone, and allows it to be more resistant to 51% attacks.
Token distribution
		There are three common mechanisms by which Dapps can distribute their tokens: mining, fund-raising and development.

		With the mining mechanism, tokens are distributed to those who contribute most work to the operation of a Dapp. Taking Bitcoin as an example, bitcoins are distributed through a predetermined algorithm to the miners that verify transactions and maintain the Bitcoin block chain.

		With the fund-raising mechanism, tokens are distributed to those who fund the initial development of the DApp. Taking the Master Protocol as an example, Mastercoins were initially distributed to those who sent bitcoins to a given address at the rate of 100 Mastercoins per bitcoin sent. The bitcoins collected were then used to fund the development of applications that promoted the development of the Master Protocol.

		With the development mechanism, tokens are generated using a predefined mechanism and are only available for the development of the DA. For example, in addition to its fund-raising mechanism, the Master Protocol used the collaboration mechanism to fund its future development. An additional 10% of the Mastercoins generated through fund-raising was set aside for development of the Master Protocol. Those Mastercoins become available through a pre-determined schedule and are distributed via a community-driven bounty system where decisions are made based on the proof-of-stake mechanism.

		To summarize: Tokens of a Dapp that establishes consensus through proof-of-work are distributed by mining, by people buying directly from miners and by trading for goods and services; that is the case with Bitcoin. Tokens of a Dapp that establishes consensus through proof-of-stake are distributed based on the contribution of stakeholders during a fundraiser, by people collaborating on the development of the Dapp and by trading for goods and services; that is the case with the Omni Protocol.
Formation and development of a Dapp
		Development of decentralized applications takes place in three steps.

		Step 1: A whitepaper is published describing the Dapp and its features

		As in the case of Bitcoin, the most common way by which a Dapp takes form is by the public release of a whitepaper that describes the protocol, its features, and its implementation. After the public release, feedback from the community is necessary for the further development of the DA.

		Step 2: Initial tokens are distributed

		If the Dapp is using the mining mechanism to distribute its tokens, a reference software program is released so that it can be used for mining. In the case of Bitcoin, a reference software program was released and the initial transaction block was created.

		If the Dapp is using the fund-raising mechanism, a wallet software becomes available to the stakeholders of the Dapp, so that they can exchange the tokens of the DA. In the case of Mastercoin, an Exodus fund-raising address and a wallet script were publicly released.

		If the Dapp is using the development mechanism, a bounty system is put in place that allows the suggestion of tasks to be performed, the tracking of the people who are working on those tasks and the criteria by which bounties can be awarded.

A development mechanism can be used for community actions for sharing, instead of exchanging, goods and services.

		Step 3: The ownership stake of the Dapp is spread

		As tokens from mining, fund-raising and collaboration are distributed to a greater number of participants, the ownership of the Dapp becomes less and less centralized and participants that held a majority stake at earlier have less and less control. As the Dapp matures, participants with more diverse skills are incentivized to make valuable contributions, and the ownership of the Dapp is distributed further. Through market forces the tokens of a Dapp are transferred to those who value it the most. Those individuals then can contribute to the development of the Dapp in the areas that they have an expertise.

		The case of Bitcoin illustrates the point. By some estimates, Satoshi Nakamoto mined many of the first 1,000,000 bitcoins. As developers contributed code to Bitcoin and miners contributed computational power to the Bitcoin network, the market began to value bitcoins more highly. As the system matured even more, people with diverse skills started valuing Bitcoin and contributing to its development. Now that more than 12 million bitcoins are in circulation and Satoshi Nakamoto’s high original ownership stake has been diluted.

Community

		Issuance of initial tokens
		Holding of developer tokens
		Management of bounty payments
		Determining the Dapp direction

		Ideally, the non-profit organization will make decisions in a decentralized manner, using a “proof of stake” voting mechanism for any decision.

An organization's responsability should be minimal to get it started, and decision-making should use a proof-of-stake voting mechanism.

Best practices for creating a Dapp
		The application must be completely open-source, it must operate autonomously, with no entity controlling the majority of its tokens, and its data and records of operation must be cryptographically stored in a public, decentralized block chain.

		The application must generate tokens according to a standard algorithm or set of criteria and possibly distribute some or all of its tokens at the beginning of its operation. These tokens must be necessary for the use of the application and any contribution from users should be rewarded by payment in the application’s tokens.

		The application may adapt its protocol in response to proposed improvements and market feedback but all changes must be decided by majority consensus of its users.

		To develop a Dapp it is advised to follow these steps:

		1. Create a whitepaper that has at least the following sections:

		Intentions and goals of the Dapp
		- Plans for token distribution
		- Mechanism for establishing consensus
		- Structure of the non-profit that oversees the Dapp
		- Management of developer bounties
		- Technical description of the Dapp

		2. Gain community engagement by releasing the plan and by revising it based on feedback.

		3. Set a date when the community can contribute to the crowd-sale.

		4. Sell the initial tokens based on your whitepaper and establish a non-profit to oversee the development of the Dapp.

		5. Begin executing your idea while the non-profit plans future development.
Why is a Dapp a profitable model for developers, users and contributors?
		The model allows contributors to get involved with the project as purchasers of tokens, as project contributors or as providers of resources to the network. All of these contributors benefit from the exchange of the tokens and from the possible appreciation of their value.

		What is a user-behavior reward?

		A user-behavior reward is given to contributors that provide utility to the network. The whitepaper should outline what constitutes utility for the DApp. (For example, hashing power is utility on the Bitcoin network and it is rewarded.) Utility should be measurable, like in the case of a data storage Dapp, amount of storage is measurable.
Using blockchain as data storage
		One mechanism by which type II Dapps can leverage the block chain of type I Dapps is by embedding additional data to the transactions taking place in the type I DA. The Master Protocol, for example, embeds additional data on the transactions of the Bitcoin network. Although currently (February 2014) Mastercoin embeds its additional data in an ad-hoc way into the Bitcoin block chain, the release of the 0.9 version of the Bitcoin reference client will provide a standard method for that embedding. By using the methodology of “provably prune-able outputs,” type II decentralized applications that are based on Bitcoin will be able to embed data in a systematic way and Bitcoin miners will have the option to prune those data.

		Given this development, several type III Dapps are in various stages of development. They include:

		- MaidSafe provides a “proof of resource” mechanism and decentralized data structure for storing files privately or publicly in the cloud.
		- StorJ provides a front-end, Dropbox-like cloud storage of files utilizing MaidSafe and other systems in the back-end.
		- Ethereum provides consensus-based scripting and computing resources.
		- Scalion provides an incentivized version of the Tor Network with nodes serving as Tor relays and exits.
		- Shared Miles provides a proof of transportation mechanism that allows for an open source transportation standard.
		- BlockAuth provides a multi signature OAuth-style system for sharing private data with third parties.
		- API Protocol provides an open source standard for hosting, normalizing, and sharing API data.
Token
		The purpose of a token is to allow access to a computer application. For example, an individual must own a number of bitcoins in order to be able to perform any transaction on the Bitcoin network. Tokens in Dapps do not represent any underlying asset, they do not give rights to a dividend, and no equity is represented through them. Although the value of a Dapp token may increase or decrease over time, tokens are not equity securities.

For creating tokens:

		Crowd-sale tokens: An initial one-time sale of tokens is a common way to initially fund a Dapp. The funds raised from such a crowd-sale should be controlled by an entity that is independent of the founders, commonly a Foundation.

		Developer tokens: A portion of the tokens can be set aside for developers working on the project. As the market sets a valuation for the project, the developer tokens will gain value, attracting additional contributors to the project.

		Premined tokens: It is best if no tokens are premined because most communities and investors are negatively predisposed to it. A premine may be successful only if a meaningful reason is provided by the founders.

		Minable tokens: Distribution of tokens by mining incentivizes the community to contribute resources to the Dapp. In Bitcoin for example, there is a block reward every ten minutes, that incentivizes miners to provide hashing power to Bitcoin. Similarly, Dapps need to determine how to incentivize the network to contribute the required resource as this is the most important decision about the token distribution.

Barefoot sociaties

You never change things by fighting the existing reality.
To change something, build a new model that makes the existing model obsolete

The New Model

		Dapps have the potential to become self-sustaining because they empower their stakeholders to invest in the development of the Dapp. Because of that, it is conceivable that Dapps for payments, data storage, bandwidth and cloud computing may one day surpass the valuation of multinational corporations like Visa, Dropbox, Comcast, and Amazon that are are currently active in the space.

		Based on the economic and efficiency advantages of decentralized applications its clear that existing centralized services will be displaced over time by decentralized alternatives. This shift is likely to come most quickly for services in which the network effect advantages of Metcalfe’s Law are most critical to the success of the service provider.

Thank you!

Please leave some feedback. Pull requests with edits are very welcome.

License

Public Domain. Do what ever you like!

About

Patterns and guidelines for the creation and sustenance of modular societies