EOS Transitioning: The introduction

in #golos3 years ago (edited)

 There is an obvious necessity for a bold move in terms of development for Golos team as currently GOLOS (golos.io, a fork of Steemit) appears to be in a state when no technical improvements lead to user base acquisition and there are some code base-related unresolved limitations.
One of the opportunities that we see is to migrate to EOS code base that tends to be quite technically perspective at the moment. Besides, its resemblance to Golos code could make transition smooth and hassle-free.
Moreover, the current blockchain development is centralized and not all stakeholders are interested in project evolution rather than rewards. We think that we could change the current trend if  we do the following:

  • to develop the EOS like blockchain for applications
  • to develop GOLOS application on top of the new blockchain

Each level will have its own token, DPOS and its own workers. In this case, both Golos io and Golos Core, the teams that are developing Golos blockchain and Golos app, will be paid from reward pool based on decision made by witnesses or will be eliminated if the witnesses are not satisfied with their job.
Keeping some recent EOS witnesses activity in mind, it’s clear that that people are not robots and tend to act with their own interests in mind. Also, each EOS stakeholder is able to vote for 30 different block producers. Such a mechanism questions the network management as the top 10 token holders are able to choose the top witnesses and thus manage the network development. So, we do think about making some changes in this algorithm on new Golos blockchain.
The goals of the proposed transition are the following:

  • To move to modern technological platform with smart contracts
  • To give to blockchain applications new opportunities 
  • To move Golos business logic to smart contracts to speed up its development 

The suggested solution: EOS blockchain has features that allows to run smart contracts, suitable in terms of implementation among other things for business logic of community tokens.

The future structure

The EOS-based blockchain (new Golos) will become a platform for creating various communities and applications. The blockchain will act as a transport layer of the data protocol. The logic of blockchain applications will be defined by smart contracts.

An external database will be set for content. The built-in mechanism for data export to this external database will allow developers to build more flexible applications with regard to data storage. The blockchain data filtration will be done in external database, and the blockchain applications will not depend on softworks in terms of new functionality. New blockchain management will be carried out through DPOS of 21 witnesses. They will keep the nodes, make decisions regarding updates and emission of the new system tokens and get the rewards for blocks production.
When it comes to GOLOS application on top of the new blockchain, witnesses will be replaced by regulators which will be elected by members of the community. They will take over economic decisions and manage the community (inflation, distribution of the reward pool / payout distribution curve, cashout window, emission parameters, community contract version, etc.). The parameterization will be achieved via smart contracts. Also, in the new system there will be a possibility to build-in a system of workers, those who will be paid for code development.Users will still be able to create content, curate it and vote for community regulators within the community.

Bandwidth in a new blockchain

Bandwidth is the actual cost of blockchain usage. Applications on top of the new Golos  will be able to purchase the amount of bandwidth required for them and grant permissions to their accounts to use it via smart contracts. This distribution model of bandwidth would allow to make it completely free for the end-users of the applications. The applications interested in growing user base will be interested in buying more bandwidth. The bandwidth would be available for purchase in system tokens.
All main GOLOS functions can be transferred to a new technological base without any loss.
The following features will remain:

  • Creating accounts
  • Posting and commenting
  • Voting
  • Golos Power witnessing 
  • Beneficiary system
  • DPOS
  • Making transaction proposals

The proposed transition will help us get rid of the following features:

  • Mining (absent in EOS blockchain)
  • GBG 
  • Price feeds
  • Custom operations (to be replaced by smart contracts)

The time estimation for the transition 

  • Development of the external database - 2 months
  • Exporting the current Golos community to a new blockchain genesis - 1.5 months
  • Proxying bandwidth from smart contracts to the users - 2 weeks
  • Development of the application consisting of several smart contracts 
  • Development of the token-vesting smart contract - 2 weeks
  • Development of the smart contract of user profiles - 2 weeks
  • Development of the smart contract for posts publishing - 1 month
  • Development of the smart contract for private messages - 2 weeks
  • Development of the workers smart contract - 2 weeks
  • Development of the smart contract for governance - 2 weeks
  • Development of the smart contract for proxy - 1 month

The team to perform the transit

  • Team Lead - Andrey Falaleev.
  • Senior C ++ Developer - Konstantin Konstantinov
  • Senior C ++ Developer - Semyon Medvedev
  • Senior C ++ Developer - Rostislav Velichko
  • C ++ Developer - Vadim Kaynarov
  • C ++ Developer - Julia Zhuravleva

A number of team members will be expanded up to 8 in total in order to enhance and accelerate the work process.

Token distribution

We are proposing the following distribution of the tokens of the new blockchain system (system tokens):
45% goes out to the current Golos community5% goes out to Golos Io and Golos Core teams as transition fee for building new blockchain and moving Golos application to it 50% goes to a special fund managed by the witnesses so that they would be able to delegate the bandwidth to applications using the certain algorithm, e.g. when 100 thousands weekly users are reached (this has to be discussed)
For example, the witnesses have delegated 5% of bandwidth to Golos application. When 100 thousands of weekly users mark is reached, the control over these tokens are passed to the application witnesses and workers. It means that all the applications lacking bandwidth in EOS  will be able to start working on top of the new Golos and get protocol tokens when target audience mark is reached. The distribution period could last up to 3 years, and not distributed tokens could be destroyed after its end.


5% goes out to witnesses 

5% goes out to workers

Golos community application

100% goes out to Golos token holders


5% goes out to regulators that are to be elected by the community, make decisions on economic and technical issues and manage the community

5% goes out to workers


We do believe that this transition to a  new Golos protocol in the next 6 months will allow us to create a network suitable for different communities similar to Golos, and most importantly will make further development self-sustainable.

By the way, don’t hesitate to join our chat Golos Improvements/Transitioning and take part in discussions with Golos team members / witnesses / community members regarding any features that the platforms lacks and/or moving to EOS code base. There's a Discord meetup devoted to transitioning taking place this very Wednesday and you're welcome to join as well - stay tuned courtesy our new Telegram hat