SteemDAC: A Plan We Can Start Today to Decentralize Steem Governance

in #steemdac6 years ago (edited)

I wrote this document today while on a plane which I encourage you to add suggestions and comments to. It includes thoughts I've been thinking for many months with regards to my involvement in eosDAC and the challenges we've all faced with Steem and Steemit for years. This may be part of the solution.


SteemDAC

Exploring the use of eosDAC technology for decentralized Steem community governance.

Foreword

At this time, this document in no way represents a commitment by anyone to do anything. It's simply a collection of thoughts started by Luke Stokes to explore future potentials. It was created while flying from Puerto Rico to Colorado on Sunday, January 20th 2019.

What is eosDAC?

eosDAC is a decentralized autonomous community powered by smart contracts on the EOS Mainnet. In the future, it may exist on DAC Chain, an EOSIO-based blockchain to be developed which will include the main contract elements (token membership, custodian voting, and worker proposals) as core system contracts for all DACs to use on that chain. eosDAC has been operating for some time on EOS with an active community of workers with development progress on multiple projects including EOS block production, the EOSDAC token explorer, the DAC Member Client, multiple EOS smart contracts, and eventually the DAC Toolkit enabling easy creation and deployment of DACs. You can learn more about eosDAC here:

https://eosdac.io/

https://members.eosdac.io/

https://steemit.com/@eosdac

https://www.youtube.com/eosdac

https://twitter.com/eosdac

Why?

The Steem community needs effective decentralized governance. Steemit, Inc and the large early-mined (some say “ninja-mined”) stake it controls represents a very real threat to this need ever becoming a reality. Without getting into a debate about the effectiveness of Ned Scott, the CEO and Co-Founder of Steemit, Inc, this document will state as a premise that Ned has lost the confidence of the majority of STEEM stake holders and is not the right person to create or lead a decentralized community effort or long-term governance of the Steem blockchain. Those who disagree with this premise may find little value in reading further. Those who agree with this premise will hopefully find value in exploring one possible solution using the eosDAC technology stack.

This approach does not, at this time, suggest a solution to the overwhelming stake currently owned and controlled by Ned through Steemit. This is a fundamental DPoS problem which may not have a solution on the current chain. The hope in exploring these ideas is to create an attractive solution and path towards decentralization. Ideally, it becomes so attractive that Ned may decide to divest a significant portion of this stake to support it and solve the centralized token distribution problem at the same time.

eosDAC Explained

To fully understand what I'm proposing for SteemDAC, it's important to understand what has already been built for eosDAC and what is up and running today. The code running eosDAC will be modified to run SteemDAC.

To really understand eosDAC, please read through the eosDAC constitution available here: https://members.eosdac.io/constitution or on github here: https://github.com/eosdac/constitution You can see an example of the current DAC Member Client below:


Screen Shot 2019-01-20 at 11.48.23 AM.png

Every member of the DAC must hold EOSDAC tokens and agree to the constitution. A hash is stored on chain for their member account for the version of the constitution they agreed to:


Screen Shot 2019-01-20 at 11.30.49 AM.png

Only members with the latest version of the constitution are active. Others are asked to sign the constitution again when they login.

The DAC itself exists as multiple smart contracts on the EOS Mainnet. You can learn more about that here: https://steemit.com/eosdac/@eosdac/eosdac-custodian-candidate-voting-is-live including how accounts like dacauthority ensure all funds and code permissions are managed by multi-signature control. In the future, these contracts may be moved to DAC Chain as mentioned above. You can learn more about the DAC Chain Initiative here: https://steemit.com/eosdac/@eosdac/the-dac-chain-initiative-announcing-an-exploratory-into-how-usage-of-eos-side-chains-and-separate-chains-may-create-benefits-for

The DAC itself, including funds and smart contracts, are controlled by 12 elected custodians. They serve for a 7-day period and are responsible for approving and denying worker proposals. eosDAC members elect them via their token-weighted vote and every 7 days, the top 12 voted custodians are elected. The multi-signature permissions on these accounts are updated automatically when the New Period function is called which also distributes pending custodian pay. Note: members only need to vote once (just like they only vote for Steem witnesses once) as their voted stake will be used according to their votes for each pay period.

Members can create profiles on the DAC and submit themselves as custodian candidates to be voted on. They can also create worker proposals for custodians to review and approve. When submitting a worker proposal, they include an auditor or subject matter expert who will review the work after it's done in the case of a dispute between the worker and the custodians once pay is request. Funds for active worker proposals are put into an escrow account contract with nulled keys that only a 2 of 3 code-based multi-signature approval can release where the three parties are the DAC via the custodians, the worker, and the arbitrator.

For more questions about how eosDAC works, please ask away in the discord here: http://discord.io/eosdac or, again, review the constitution.

Now that you have an understanding of how eosDAC works with the EOSDAC token, let's consider what SteemDAC with a STEEMDAC token equivalent might look like.

The STEEMDAC Token

On-chain governance requires smart contracts which can be interacted with using a governance token. EOS is currently the best platform to accomplish this because the performance requirements can be met, the contracts can be updated as needed by the community, and there are no fees for interacting with the contracts (once enough stake has been set for account network and bandwidth needs). The purpose of creating and using an EOS-based token like STEEMDAC is not to move Steem users away from Steem to the EOS blockchain. Others may claim this or even try to use it for this outcome, but as the original author of this document, I, Luke Stokes, can honestly tell you this is not the purpose of this token. The point here is to solve a very serious problem with Steem centralized governance.

STEEMDAC will exist to accurately represent the token holdings on the Steem blockchain of those who want to actively participate in on-chain governance of Steem beyond just witness voting which relates more to block production and chain definition. It is a non-transferrable token and balances can only be updated via cross-blockchain communication with Steem (or a partly manual equivalent done transparently on chain by elected custodians). The governance scope of the token will include the management of community funds for Steem development up to and including core blockchain code, shared code libraries and toolkits, exchange relationships, marketing, translation, outreach, and more. This will be accomplished via the eosDAC tools running on EOS or possibly DACChain in the future. There are many possible ways the STEEMDAC token could accomplish this, but for example sake, I'll outline one possibility here. Others may be better.

Example Token Flow

The SteemDAC Member Client and smart contracts require the STEEMDAC token for membership, custodian voting, and all other token-related functions of the DAC. This outlines just one possible example of how this token could be created and used. I have not yet run this design by smart contract experts such as Dallas Johnson or Michael Yeates nor have I spoken about it yet with Steem developers like @someguy123 or @buildteam who have done somewhat similar things and may provide input.

If the Steem user doesn't have an EOS account, services for obtaining them can be created (some free account creation codes exist as well).

Possible EOS SteemDAC member table structure

  • id <auto id>
  • steem_account (matches Steem acount name)
  • STEEMDAC (Steem Power balance as of last update)
  • steem_power_last_updated (date)
  • is_validated (boolean
  • is_pending (boolean)
  • steem_transaction_id (transaction hash from Steem blockchain for the validation transfer)
  • agreedterms_version (version of agreed terms)
  • member_status (starts as PENDING, then ACTIVE when is_validated = true. Might also be SUSPENDED if removed from the DAC by custodians for violating the constitution).

The example below assumes there is no true cross-blockchain automation between Steem and EOS yet, so much of this is done via manual validation by the elected custodians who are the only ones with control to validate STEEMDAC member balances.

Member Client Interface (user actions: example lukeeosproxy account)

If is_pending = false AND member_status NOT SUSPENDED AND steem_power_last_updated is empty or > 7 days:

  1. Ask for Steem user name (example: lukestokes)
  2. Connect to Steem API to find account, get Steem Power Balance (70000)
  3. Present user with confirmation:
    1. "lukestokes, 70,000 SP?"
  4. Call smart contract function update_member
    1. store table id, steem_account = lukestokes, STEEMDAC = 70000, steem_power_last_updated = today's date, is_validated = false, is_pending = true, steem_transaction_id = empty
    2. If steem_account already exists but for a different EOS account, throw error, otherwise update existing account.
  5. Ask user to send STEEM to @steemdac with the following memo: lukestokes|70000|1|lukeeosproxy (the “1” being the auto id of the RAM table record saved in EOS).
    1. This transfer would probably be a very small amount (like 0.001 STEEM) though a larger “membership fee” might also be collected to help fund development if that makes sense.
    2. The Steem @steemdac account owner permission would be controlled via multisig of the top 25 active Steem witnesses. Based on a measurement of witness turnover, this could be updated regularly via multisig by the witnesses. The posting/active permission would be set up as a multisig to possibly include a group or individual voted on by SteemDAC as an active worker proposal to manage those funds (this could also just be the witnesses, depending on how things work out).
  6. Scan Steem chain for transfers to @steemdac account matching steem_account. Do a lookup on the EOS RAM table based on id, make sure the Steem Power amounts match, the accounts match, etc. If they do, save Steem transaction id to the table.

Note: at this point, none of the data within the member table can really be trusted since they could run their own member client and hack it to ignore the Steem blockchain and claim they have millions of Steem Power.

Member Client interface (custodian actions)

  1. Review list of valid, pending token validations. Client will again scan the Steem chain, verify transactions and data in EOS and present a bulk "approve all" for everything that matches.
  2. Multi-signature transaction created to update the is_validated for specific accounts and set is_pending to false.
  3. The transaction id will have to be a valid transfer from the named account to @steemdac and the Steem Power balance of the named account must be >= STEEMDAC balance in the table at the time of validation.

Note: The trustworthiness of the msig transaction directly relates to the trustworthiness of the custodian and the EOS and Steem node they are connecting to with the member client they are using.

On Chain:

New Period:

  • New Period can not be run if there are more than <X> pending updates which are greater than 5 days old.
  • For every <X> amount of Steem Power validated, all custodians get <Y> pay.
    • Idea: Custodian bonus pay lottery where chances to win increase for those who validate the largest bulk msig. (game theory: keeps the number of interactions the custodians have to deal with low while also ensuring they don't just wait for too long. The pending accounts should, in theory, be approved multiple times a week, or at least the bulk of them should be.)
  • Before each period, member client creates a bulk msig (or a template for any custodian to create) which scans the Steem blockchain and sets is_validated to 0 for accounts having Steem Power < STEEMDAC balance. This effectively removes anyone who powered down in the last 7 days but didn't update their SteemDAC account. Accounts that powered up or earned Steem Power will be left alone to cut down on the processing costs.

Note: this will be a process intensive thing, so it will probably have to be done offline and presented as a msig for review. Maybe multiple msigs to keep the amount low.

Ideally, this will all be done automatically on chain via a cross-blockchain communication process when such a thing between Steem and EOS exists.

From this point on, STEEMDAC balances with is_validated = true and steem_power_last_updated < 7 days ago can be trusted and used for electing the next round of custodians.

Things can be kept up to date by on member login, scanning the Steem chain and if needed showing a user a "Hey, you powered down or powered up more than <X> percentage, please verify your balance again." which then sends the transaction to update the members table (sets is_pending = true, updates values, etc) so that update gets included in the next round of validations for that week’s voting.

First Steps

Sound interesting? Worth exploring more? Here are some action items we could take to start seeing this exist in reality:

  • Make copies of all the eosDAC system contracts (eosdactokens, daccustodians, dacauthority, etc) and modify them for SteemDAC use. They can be found here: https://github.com/eosdac
  • Deploy the modified system contracts as new EOS accounts for SteemDAC.
  • Copy and modify the DAC Member Client with Steem logo, colors, language, etc. https://members.eosdac.io/ via https://github.com/eosdac/eosdactoolkit
  • Copy and modify the EOSDAC token explorer. https://explorer.eosdac.io via https://github.com/eosdac/eosdac-token-explorer
  • Develop the SteemDAC constitution (possibly use the eosDAC constitution as a starting point: https://github.com/eosdac/constitution)
  • Set up required EOS nodes and servers (or partner with eosDAC for this) to power the explorer and member client (blockchain scrapers / indexers are needed for the explorer, member profile, and msig proposal system).
  • Develop a website (I recommend using a static Jekyll site) for explaining SteemDAC. This site can be maintained via github pull requests approved by the elected SteemDAC custodians or the active worker proposal team tasked with maintaining the website.
  • Develop social media teams, media, logos, style guide, etc.
  • Create a SteemDAC Discord and/or use an existing one. Another possibility is to create automated cross-posting between discords. Possibly include posting summaries on the Steem chain as well.

What Could SteemDAC Look Like?

With a constitution and on-chain governance in place with an easy-to-use interface for member registration, profile creation, custodian candidate registration, worker proposal creation, custodian voting, and custodian tools (msig approvals, worker proposal voting, etc), we'll have a decentralized model of elected custodian leadership managing the funds of the community. These elected custodians will be put in place via STEEMDAC token voting which accurately represents stake on the Steem blockchain.

Funds sent to the @steemdac account (and/or the EOS equivalent) would be used to pay out worker proposals. To avoid legal concerns, fiat currency would be avoided completely and any fiat costs required for work done would be accomplished by the active workers directly (as in, they would be required to handle their own cryptocurrency to fiat conversions as needed to accomplish their work). Depending on the legal advice gained once this structure is fully defined, a traditional service company (like how eosDAC uses Dacoco) may be used to handle worker employment contracts and remove joint and several liability concerns from the DAC itself.

As people understand the system, the decentralized permissions securing the smart contracts and the funds, and the effectiveness of token-based voting and custodian oversight, we might collect more donations to fund the DAC. The most important donation would hopefully come from Steemit, Inc to vastly decrease their current centralized holdings. Ideally, at least for now, they would also be the most active worker in the worker proposal system continuing development on things like RocksDB, Condenser, Hivemind Communities, SMTs, and more.

SteemDAC would be inclusive, but still governed by its constitution and its code of conduct. A member's STEEMDAC voting weight represented by their a non-transferrable token balance could be invalidated for voting by the custodians (member_status set to SUSPENDED) if there was a credible violation of the constitution and a multisig proposed to the custodian board to change their status passes a Special Referendum. Ideally, all communities within the Steem ecosystem will actively participate including Utopian, Oracle-D, PAL Net, and more.

Just as with eosDAC, changes to the constitution or smart contract code would have to be approved by Special Resolution approval of the custodians.

The Result

A decentralized system for governance and funding for future Steem development which is controlled by Steem Power holders. Custodians, like witnesses, would be voted in (and paid, just like in the eosDAC model) to represent the will of the token holders in a transparent, trustworthy manner. With elections every 7 days, the leadership will be directly accountable to the token holders for approving valuable worker proposals and responding to community needs. They'll have skin in the game and the community will have one more reason to power up STEEM. Their voice can now be heard on far-ranging topics impacting Steem beyond just block production.

On-chain, transparent, non-violent governance: This is what we want and this is what we deserve.

This document represents just one of many possible solutions being worked on by some fantastic, passionate people. Let's keep the ideas coming to form a better future for Steem and the community who values it and creates its value.

Sort:  

Couldn't this be done with soft-consensus, like my project Stratos which does basically the same thing with the SRTS token? It runs fully on Steem using my package steem-state and would mean there would be no need for an EOS link. Consensus checks could also be easily created to ensure consensus around the soft-consensus 'smart contract'.

Here are some links:
How Stratos (and SteemDAC might) Works

Stratos Governance (very similar to SteemDAC)

steem-state - this package would be used to create the soft-consensus

Very cool stuff, I’ll take a look. Reminds me of the pocket token back in the day.

The smart contracts that run the system are quite complex and have taken many months to build including the user interface. Since things like escrow accounts involving real money moving around to fund things makes this a bit more complex though. That said, steemmonsters is moving real money around as well... so maybe.

Yeah, it runs a lot like the pocket token but on a lot bigger scale and featureset. It can definitely handle some much more complicated contracts, just look at what @disregardfiat with @dlux-io is doing with their steem-state project, creating oracles, incentivising nodes, creating a DLUX DAO...

I like what you’re doing here with EOS as I don’t want this governance to become centralized like what the @steemalliance has been leaning towards (last night’s talk about governance in the voice chat ended up with most people quickly pushing away decentralized alternatives to a centralized system run by Steemit Inc) but I’m not a big fan of the EOS-based governance as a) that would mean Steem would depend on EOS and b) This bridge would remain centralized (but in a transparent and verifiable way). Putting the governance on steem-state could fix at least one of them - but I am still in support of your EOS-based governance. Going to go vote for your witness!

Thanks for the encouraging words. I've been traveling so I haven't been able to dig in to the security model of what you're describing. I'm all about incentivized nodes, but I'm still not clear how protocol designs can be enforced in models like this. As long as all nodes interpret the custom json the same way and there are no malicious attacks, then everyone is happy. Multi-signature controlled smart contracts and escrow accounts are for when people do NOT get along and there is not consensus. That's why I think something more robust might be needed, along with a process to upgrade and change the protocol as needed.

I haven't been following the Steem Alliance talks, though I've been asked to join the Discord. I'm wary of any plan which continues to give Steemit, Inc centralized power as we've been down that road before and expecting different results is silly.

I don't think Steem would depend on EOS as much as Steem governance would depend on a system which can actually accomplish on-chain smart contract trust. It could be on some other chain for all I care. I'm not a maximalist for any coin, I just want to see the world improve.

Agree with almost all points in this.

As long as all nodes interpret the custom json the same way and there are no malicious attacks, then everyone is happy.

Yep, but in the event of a malicious node or a break in consensus due to bad code, all other nodes can easily determine that the break has happened, as they all post a hash of their state every 10 minutes to check that they are in consensus.

Interesting. Thanks for the high-level overview. Sounds quite a bit like a side chain but using Steem for the checkpoints. Pretty cool. :)

Here is a good overview... I wish I would have seen this post as well. Glad so many of us are on the same page. https://steempeak.com/steem/@dlux-io/steem-alliance-proposals-or-dlux-side-chain-actions

Used bid votes to bring visibility. It was my own money and nothing to do with @shredz7

Thanks for the little boost! (and for leaving a disclaimer of course)

Lol comments are u and another guy who know what they're talking about and a bunch of other ppl using big works and thank yous lol

Ya I'm interested In ur steem only steemdac system- I'm collecting list of things that steem can do without EOS fir @steemspeak please come to the discird https://steemspeak.com

Another day, another attempt to assert control over the ninja-mine.

The most important donation would hopefully come from Steemit, Inc to vastly decrease their current centralized holdings.

Which of course you would continue to expect them not to vote or anything. So despite the rhetoric the twelve "custodians" will end up effectively centrally controlled by Freedom the same way the witnesses are now.

Set up a one-account-per-person oracle, make it sqrt(steem power) or less in the primary account, and maybe this starts making sense. Otherwise you're just whitewashing the same old bullshit.

Set up a one-account-per-person oracle

I've heard this talked about many, many times in cryptocurrency, and I've never once seen it work or someone even come close to actually implementing something. Have you?

Do you realize in asking for this, you may be asking for a draconian style KYC nightmare far worse that George Orwell ever imagined in 1984? Please, be careful what you wish for.

If you understand how DPoS works, do you see a concern with the ninja-mine? Does it represent any existential threat to the security and immutability of the chain? I was told by @smooth, for example, that Hard Fork 9 was pushed through automatically by Steemit, Inc by using their stake to vote in their own witnesses and force in a code change which reset a bunch of keys that were part of an exploit which impacted some people (including those who should have known better). See this comment for details. Though, in that case, it may have been a positive outcome, the fact that it was pushed through without real community consensus should really concern everyone. Imagine how dangerous that power can be if used by an untrustworthy person?

The reason so many who have been hear so long are so frustrated with Ned and Steemit, Inc directly has to do with the issue of trust.

you're just whitewashing the same old bullshit.

What you are calling bullshit may be reality. Setting up a "one account per person oracle" sounds great in theory, but until I see it working well in practice without becoming a KYC nightmare, I'm still very, very skeptical. Again, I'm fully open to being wrong if you have experience with this and can point me in the right direction (beyond just SMT oracle related empty promises).

"Set up a one-account-per-person oracle"

also have issue with gprd in europe to get this working

Oh, I don't think that would particularly work, especially without "draconian" KYC. But you have to solve that problem. Because there's zero reason not to apply everything you've said to Freedom except that he votes for you.

You don't think what would work? What are you talking about?

I don't know who Freedom is or why they vote for me. They've never made a commitment to use their stake or set an expectation about how it would be used. They didn't push in witnesses for a fork like HF9.

That said, would Steem be better off if large stake holders like Freedom either refrained from voting or moved their stake to multiple accounts in order to distribute their votes more evenly across multiple sets of 30 witnesses? Maybe. As it stands now, I see coin distribution problems in cryptocurrency-governance models as being in the unresolved problem set. It essentially comes down the brick analogy. They can break windows or build houses. If the stake is used well, no one seems to mind. If it's used poorly, then everyone suffers.

What you are calling bullshit may be ...

You seemed to focus on a small almost after thought of the post, Luke. The pertinent part to focus on may be....

Another day, another attempt to assert control over the ninja-mine.

If it were me who converted all my btc to steem when first registering would you be coming after me as sour graped wolves as well?

The best assumption we can make is that the larger one's stake the larger the motivation for the project's success.

Kinda with you on this here. I was thinking 'is this not what the witness votes are for' , which frankly I don't see many people really caring about on a non invested user frame of mind, they just want to post and get interaction in the form of upvotes, resteems and actual not bot comments

Posted using Partiko Android

The job requirement of a witnesses is secure the blockchain. That involves running code and reliable servers. The governance for worker proposals, constitutions, project funding, and more is a much different skillset and it's why many projects such as BitShares have a separate committee for worker proposals that are not the block producers.

I was thinking 'is this not what the witness votes are for'...

Corruption is DPOS' potential 51% attack. Governance run by committees will only further that chance of corruption occuring while making the corruprion less transparent, in my opinion.

probably the only chance to get the ball rolling in the right direction again. I applaud your idea luke!

Thanks. Many have offered ideas to Ned / Steemit, Inc in the past and they've all amounted to very little, so my expectations are not high.

The purpose of creating and using an EOS-based token like STEEMDAC is not to move Steem users away from Steem to the EOS blockchain
That might not be the intent but that would be the effect, especially if it were possible to make money, there were no flagging and no BOTS.

If THAT were to happen I'm outa here.

Actually I was thinking about this possibility some days ago, when I remembered our dinner in Krakow in SteemFest3. Then today I saw this post and then saw that you created @steemdac... :) Count me in! I believe that this is part of the solution, but a fork might be needed as well. How are things in Puerto Rico? Are you enjoying, my friend? I loved it when I was there last summer... :)

I agree, a fork may be needed as well which clearly outlines a constitution or some form of code of conduct which custodians could enforce with the full support of token holder members who agreed to the constitution before joining.

Puerto Rico is fantastic so far! I already miss it just one day here in Denver. :) Just yesterday I was hiking through the El Yunque rainforest with my family and friends.

Please don’t start with constitutions. You sound like politicians. Let’s keep it like it is, everyone does what he wants with his stake.

Posted using Partiko iOS

That's what you have on Steem right now. If you're happy with the status quo here, then nothing needs to change (nor will it).

If the word constitution is a trigger, use "member terms" or something else. Without some shared foundational concepts (such as property rights), then there's no way to say what is "good" or "bad" which means there's nothing which is wrong that the code allows. It means all expectations of wrong doing are void of any substance so any frustration about (for example) a single person via a single entity using their stake to vote out all the witnesses and vote in their own witnesses to push through a code change the community does not support would not be something we could do anything about. If, on the other hand, the agreed terms prevented such action, then there could be safeguards to prevent it and action steps to revert this type of attack if it were attempted (as an example).

Yes every action allowed by the code should be allowed. There is no good or bad.

Making a constitution or a set of rules that controls steemit’s big stake will allow the second biggest stake to be in controle (freedom or someone else).

Unfortunately wealth tends to always distribute in an unequal manner (top 1% will always have a disproportionally large stake). Check the litterature on this subject if it doesn’t seem intuitive.

In order to be protected from whales that can centralize the system, the only way is to have the biggest whale as a “good” whale. I think that ned being that whale is the best thing for steem. Would hate steem to be centralized by a random anonymous person.

Posted using Partiko iOS

Besides, every constitution or set of rules is created with good intentions. But then positions of power change (new witnesses etc...) and one witness greedy for power can use those rules as influence (or maybe create new rules on top of them that are favorable to him).

Slowly but surely you end up having a democracy. I think the way to go is a dictatorship, and hope for a good dictator. Ned is a good enough dictator, even though his progress is slow, he never abuses of his power.

Posted using Partiko iOS

We must assume that the bigger one's stake the bigger the motivation to see the project succeed. Such motivations should push forward positive development; which by and large has been my observation since registering on the blockchain.

Big hug and heart for working this out (including the nice intro on EOSDAC). "I had a dream.." was constantly in my mind while reading this but that is sad as a decentralised blockchain shouldn't exist without a decentralised constitution. For everything we want to do, including this move towards a constitution, we are confronted with same, same, same, a centralised majority stake with the extra annoying element here that Ned is not so enthousiastic about EOS (DAC chain might be more accepted).

Anyway, we all had a dream and this is a beautiful start. It is the perfect time to come out with this. In my eyes, there is no other way but i agree with @prc, a fork might be needed. Thanks for the beautiful work!!!

Thank you. If the community chooses to try on a different fork, a decentralized governance model will still be needed there as well. Maybe this plan can help.

I applaud efforts to decentralize the Steem governance and I am grateful you took the time to think this through, write it up, share it with us and start the conversation. Many Steemians are trying to get some sort of workflow and funding going, including me and many others who maybe don't have the means or sufficient technical knowledge to actually get something started. I know the names of the ones willing to work hard if a great system becomes reality though, and I'm excited to see what will happen if a decentralized governance system becomes reality.

I see it as one of the biggest needs for Steem at this moment.

Again, thank you, and I'm looking forward to read and learn from the discussion below your write-up.

ReSteeming for visibility.

Thanks for sharing and for your kind words.

I, Luke Stokes, can honestly tell you this is not the purpose of this token.

I just did a quick read of this, so how am I just a user of steem blockchain going to be able to vote for one of these so called "12 elected custodians.", you can not get the majority of the people to unvote for witnesses on steemit that are no longer active, what makes you think that people will vote every 7 days for 12 new people? Is the vote for these 12 people a one for one vote, and not based on how much steem they have? How do you stop someone with 70+ accounts from voting 70 times? If it is based on how much steem a person has how does that help decentralization at all when two people would be able to simply automate there votes and always have the people they want as the 12 members.

People are already threatening @ned with Forking and now you want to bring EOS in as a place for people to manage steem development? Let's just drive one more wedge or stake into @ned.

I understand that people are angry and upset at @ned. It does not require this amount of torture to one person. @ned (steemit) and @dan (EOS) parted ways, as in divorced of each other and you would force a re-union?

This is from the aspect of a non-crypto person, just a person using steem blockchain as a social media place. The purpose may not be to drive people over to the EOS blockchain, but purpose and good intentions rarely lead to reality, and the reality is that there are likely a few memories, un-pleasant ones between Ned and Dan.

Loading...

On-chain, transparent, non-violent governance: This is what we want and this is what we deserve.

So 'bernie' wouldn't be invited then? lol

Hopefully it would also exclude leeches like you who have never bought a single Steem in your life, yet feel entitled to have an opinion. Fuck off child.

Why are you so angry at everyone matey?

Don't confuse anger with amusement.

If your amusement is at the direct expense of little people in this world going with less, then I have to equate it to a very negative emotion.
My steemit fund is for my girlfriends family, not for me. ( her grandchild).
I told you this months ago, when you did it.
And then you do it again. And again. And again.

(My girlfriend even asked you for a big upvote from you in the past, on one of my posts... She needed some extra money for her grandchild's school)
We don't live in a western economy - and here, a few dollars matters.

I do not see how you gain pleasure (amusement) from that.

I do not see how your actions against me - leading to a child having less food on the table - would provide you amusement of any kind.

You really think I remember your little story? Drama queen.

No drama, just facts.

What you choose to remember is not for me to decide.

I've had my many, many issues with bernie and how he treats people with verbal assaults like "Fuck off child." I've been flagged by him for months because he sees me as a pretentious douchbag even though (his own words) he has read almost none of my actual posts which I've been creating here for two and a half years.

THAT SAID, I will at least give him credit for this: He has had Ned and Steemit, Inc pegged from the very beginning as being an existential risk to this blockchain which could not be avoided. We are starting to see the reality of this in a much broader view which few people can deny.

I truly despise the method he uses to communicate and obtain his "entertainment," but I at least respect the times he's not wrong.

I've gotten so frustrated over the years trying to point at facts to demonstrate where his flags or "fuck offs" were incorrect only to be responded to with "Oh how cute, you actually thought I cared about what you think?" type messages when (as you did below) the facts show his knee-jerk reactions such as calling you a leech were not the whole story.

All I can say is, I'm doing my best to let Bernie be Bernie. No one will change him. It's just words and flags after all, not real actual physical violence. I've learned to better understand my own emotional responses through his actions.

He has had Ned and Steemit, Inc pegged from the very beginning as being an existential risk to this blockchain which could not be avoided.

Such hyperbole does not become you or your position as witness, in my opinion, Luke.

As a witness, I understand threats to DPOS. A centralized, soon to be hidden, stake which is large enough for a single person to replace all witnesses and push out whatever code they want is an existential risk to this chain and always has been. That is not hyperbole. Ask anyone who truly understands DPOS, and I’d be very surprised to find any disagreement.

A centralized, soon to be hidden, stake which is large enough for a single person to replace all witnesses and push out whatever code they want is an existential risk to this chain and always has been.

Do you know as a fact that the monthly six figure amounts tranfered to exchanges constantly over time have been 'sold off' to pay for servers? How do you know that those amounts have not been transfered back to the chain to build whale accounts like @freedom? Or more subtly by creating numerous Orca accounts?

How about you move for an HF that allows witnesses to reject a vote, like a mute, and see how many high principled wirnesses, as yourself, rejects their @freedom vote. Anyone that doubts the influence @freedom has on your witness position need only look at the following graphic. Their one vote comprises almost half of your witness support!

http://steemreports.com/witness-voters/

Could @freedom be Dan and you his agent? You are the one who brought up SP conspiracies. Have you dedicated yourself so much, as an EOS witness, that you are trying to sell the same over goverance crap to us?

Look at all the top 20 witnesses and look how many are there because of @freedom or because of some other witness voting circle jerk.

If your zeal had been used (when the pull request was first made) to post that you and other top 20 witnesses would not run an HF stealing STINC of their stake then perhaps STINC would not have overreacted by moving resources to exchanges. Instead there was radio silence from most witnesses or FUD posts like this one from those that had something to say.

The lady doth protest too much, methinks

I've been running the Exchange Transfer report for 126 weeks (I'm a couple days behind this week as I've been traveling) so I know better than most about what money is heading this way and that. Of course I don't know for sure but I do see movements to and from exchanges, even for orca sizes (my reports show the top 50 in both directions). Steemit, Inc themselves have said they do programatic selling, so I don't think this being made up.

I don't know who @freedom is and all my attempts to find out haven't made progress.

Reject a witness vote? That would be quite interesting. I agree, the Freedom account does represent a risk to the system, but those funds could be spread out into multiple accounts as well if they really wanted to hide their stake. The difference here, I think, is that Steemit, Inc via Dan Larimer way back in the BitcoinTalk days at launch made claims about how the funds would be used. Many in the community are frustrated with the downward selling pressure that brought that 80% stake down to 20% stake (and the price of STEEM with it). Also, Freedom doesn't have a previous track record of pushing in their own witnesses in order to deploy code (as Steemit, Inc did with HF9).

No, I'm not "Dan's agent." You sound silly saying that. I've never met Dan. To say what I've been working on since April with eosDAC "governance crap" is insulting, especially when I wrote this post helping the EOS community get out from under the ECAF constitution drama we've been dealing with.

What you call a "witness voting circle jerk" others call voting for people you know well who have put in more work that most people realize to secure this chain. I don't often look at who votes for me, and I don't make my decisions based on that at all. I can't speak for others in that regard.

I didn't even know about "the pull request" until I clicked a link to join a witness slack about a week ago. It was never a very serious threat, IMO, as it was just some dude who forked the code and created a PR. As I've said before, none of the consensus witnesses were ever fully serious about doing it, though it was being talked about. Ned over-reacted and/or used it as an excuse to power down more. At that point, I got voted into a committee of nine witnesses who then elected three people to talk directly with Ned to try and improve the broken community relationship. As part of that group, I agreed to keep things discussed there private (not at all my preference as I greatly value transparency). That's why I didn't post about what was being discussed.

And which FUD post are you referring to? The committee may not have accomplished much as we didn't prevent the power down or the exchange transfers, but there are more community discussions about the governance problems in Steem than ever before and that is a good thing.

This is a great option to research as it enables a great first step toward a decentralized governance framework for the ecosystem to ensure its sustainability over the long term. I have to read a couple of more time but having followed closely @eosdac, I think this is a great structure to follow.

Posted using Partiko iOS

This is a great start Luke. I think moving towards a form of community governance is required.

One issue that I do see is the same imbalance we see currently with the stakeweighted voting. If there are accounts with 40 million and 8 million steempower (for example ;), the same issue will arise on SteemDAC as it does currently.

I do feel that there should be more votes if you have more stake as it does show more vested interest in the success of the chain, but it also centralizes the "democracy" to 2 (or 1?) accounts/people. Same issue.

I think that there is a way to make something like this work while still rewarding large stakeholders with a large say in the direction of the chain without giving control to one account. I think that is a necessary step in decentralizing the chain.

I also think something like this could work and the constitution could be crafted with rules the community agrees to which could address these concerns (see some of my hypothetical replies in other comments in this thread).

... but it also centralizes the "democracy" to 2 (or 1?) accounts/people.

It is called Delegated Proof of Stake not Democratic Proof of Stake.

I am all for it. I feel I should have more say in what goes on than someone who put in 25 cents. I also feel that someone who put in months or years of hard work developing this blockchain and put in thousands of dollars deserves more of a say than me. Should there be a limit? That is all I am asking.

But there is a democracy involved in its governance. The blockchain as it is currently could fall under tyranny based on the centralization of the stake. It is just one solution to the current issue that the blockchain is dealing with.

Agreed, @allcapsonezero. It is facinating to watch governance evolve in DPOS, yet the human committees should be left to the EOS side of the experiment while STEEM seeks software governance in my opinion. It seems too early to assume EOS governance is the answer.

You could very well be right. This is a natural knee jerk reaction to the reality of not knowing where 44 million steempower is going to end up. I appreciate the "experiment" you speak of. It seems accurate.

I like this a lot... obviously it's only a very small note, but I wonder if the 0.001 Steem could be changed into a membership fee like you suggested that is then put aside for an external code quality audit for the next hardfork... basically membership into SteemDAC also improves the quality of code accepted by the witnesses.

For sure. It could be used for all kinds of things if that's the direction the DAC wants to take it.

Thanks for sharing your ideas. I have downloaded a copy of your document, and intend on reading it thoroughly.

Brilliant!!

Very informative. The eosDAC is new to me and a "programmatic" unbiased approach to governance is a brilliant idea IMHO. I have to read more on this. Appreciate sharing this.

Hi Luke. I wanted to learn about eosDAC concept for quite a while, even during the EOS Community Conference back in Seoul but I didn't have the time to do that. Finally as you outlined the same concept for Steem, I decided to write my own thoughts on that. Here's what I find challenging and I think some may agree with me too:

  • It requires people to own additional tokens that are based on EOS blockchain. This is something not everybody will be happy to go through. Some people might not like EOS specifically, others might not like the idea of purchasing yet another token. You might disagree with me but I don’t see the point of buying token that is used primarily for the voting.
  • If you want to go through custodian model, 12 individuals are simply not enough. It can be easily manipulated by creating a few sets of large staked accounts and vote for your own custodian each time from a selected set. There should be at least 50 custodians to make it a fair voting process but it will be way too hard to make people vote that often. People are lazy when it comes to decision making and this one is a really hard one.
  • 7 days election is a fantasy. If you force a community to vote for new custodians each week, they will have to learn the background and previous experiences of new candidates each time. That will blow anybody’s mind. Nobody has that time luxury. If custodians are the same every 7 days, then it doesn’t make sense to elect them that often. Maybe a quarterly based procedure could be fine. The primary reason why frequent election may not work is because people don’t even vote for witnesses. There are over 1 million Steem accounts and only a handful are actually use this important feature.
  • A separate SteemDAC account is a torture. I’m already tired of having dozens of accounts for all of the websites. It’s a lot smarter to enable login via SteemConnect for Steem and Scatter/SimpleWallet for EOS into SteemDAC website.
  • The overall system sounds very complex. I do understand the power of multisig but for a person from the outside world it’s a guaranteed headache. We should simplify everything as much as possible, not to make it even more impossible to accomplish.

I'm not against the system you proposed but there are so many specific features that will not make it a successful one. Hope to have some discussions, like your contribution to both Steem and EOS.

  1. Yeah, I know. Our team (@paytomat) created a simple way to create EOS accounts as well. We leverage promo-codes that people can use to get a free account inside of our wallet. P.S. We support eosDAC tokens as well. Check it out. If users don't need tokens, then I'm cool with that.
  2. Make sense but I would probably consider having custodians for each category of potential working proposals. Basically we need experts in top areas: marketing, development, community, sales and so forth. The main point is that not every custodian can have a required experience for proper proposal evaluation. Like an option each custodian can be a team of people with certain skill set(s). That would totally work.
  3. My bad, misunderstood the statement.
  4. I didn't know that. Now I understand why Dan moved to EOS lol. I'm not sure how long are they going to survive without smart contracts though, especially if they finally release SMTs.
  5. I checked the website, it's actually quite simple to use. Nice work.

Thanks for your response.

  1. No, I don't think so. As I said in my post, there are services out there today giving out free EOS accounts. If they needed more RAM or CPU or something in order to use the account, that could also be solved relatively easily via delegations. If the post wasn't clear, no EOSDAC tokens would be needed at all. That's just an example of what we've built already.

  2. The voting system only allows for 5 votes, so the 12 model isn't so easy to control. Having more than 12 means nothing will get done. The whole point of a board is to take action based on the input of those who support them. Larger groups have trouble taking action.

  3. You only have to vote once, not every 7 days. The 7 day period is just when the votes are tallied. I edited the post to include an extra note to clarify that. Most steem accounts are not "real" accounts, so it doesn't surprise me that many do not vote as many don't have Steem Power anyway. This governance opportunity would essentially just be for those who care (just like not everyone shows up to HOA meetings).

  4. Steem does not provide smart contracts. Dan wanted to build them here but had issues with Ned and so it never happened. I don't see how this could all be done without smart contracts, but I did have an interesting conversation with @roelandp about using custom_json to accomplish something similar, so maybe it's possible, but it seems to risky to me given the money that would flow through this.

  5. This document wasn't written for a general audience, so I probably should have made that clear. This is for those who are actively building governance systems with blockchain code and want to explore alternatives. The protocols used to post your comment are incredibly complex from TCP/IP to encryption to API endpoints talking to nodes which interact with the blockchain. The point of doing it right is that all that complexity is hidden away from the user so things just work. If you click through to the eosDAC member client, you'll see it's a nice experience for the user.

Hey Luke! That’s been quite an efficient flight I’d say. Thanks for thinking out of the box!

For a non-developer it’s hard to understand the technical part of it, but I clearly see the structural benefits of such a system. The past days have proven that there’s a strong need for more decentralization in any corner of this blockchain, so it’s great to see the direction it all takes now. I’ll be happy to contribute in the way I can.

Would you mind elaborating a bit more on the concept of worker proposals? Could these proposals include any type of task within the ecosystem - not only development, for instance?

Again, thanks for your contribution to the new Steem :-)

resteemed

Thanks Marley. Yes, anything benefiting the community. Click on the spreadsheet image here to see the types of things approved by eosDAC so far: https://eosdac.io/active-worker-proposals/

Thank you! That's exactly how i imagined it to be - concrete tasks from all types of areas. Great to see such structures already exist and apparently function well.

So: when on Steem? :-)

Unfortunately Steem doesn't have smart contract support. I think Dan wanted to build them here, but Ned wasn't a fan. Just a theory, anyway.

That said, maybe in the future all that functionality (custodian voting, worker proposals, etc) might be built at a core blockchain level. I think other things like RocksDB and SMTs might be more important though.

Interesting! Thanks for clarifying this :)
I’ll be reaching out to you via dm since I’d like to get your feedback on an idea I’m working on currently.

This post has been included in the latest edition of SOS Daily News - a digest of all you need to know about the State of Steem.



Still the hardest working and most tech knowledgeable blogger on Steemit I know @lukestokes ! See you soon at Anarchapulco brother, thanks for keeping it real! Hope you're loving Puerto Rico!

Thanks Jan! Looking forward to hanging out. Been in Denver the last few days doing some exciting stuff with https://fio.foundation Looking forward to telling you guys all about it. Flying back tomorrow. Can't wait to get back to my island and out of the cold. :)

You're already spoiled by the PR temperatures you brat! :) Oh well I got nothing to say since I'm chilling in hot Thainland, so I totally hear you. See ya soon buddy!

Congratulations @lukestokes!
Your post was mentioned in the Steem Hit Parade in the following category:

  • Comments - Ranked 6 with 69 comments
 6 years ago  Reveal Comment

a snarky child, that has something to hide, who's done something wrong and knows it.

In all my interactions with him, this description seems pretty spot on to me as well. The need to controll everything seems to come from some insecurity. Maybe it's daddy issues. I don't know. It's frustrating to see the result of it though.

PR is great! We're just getting settled and finding a new normal, but I got to hike El Yunque a couple days ago and it was so much fun. I'm traveling this week, but will hopefully post pictures at some point though you can find them on facebook now.

Wow, that sounds like a great travel plan! Let us know if you do head this way and we'll get Devon's room set up for you to stay a bit with us, if you want.

In the few times I have watched Ned's public speaking I can see that he is using speech patterns in the way he talks(though I don't think he quite has it down right). Also, earlier this week he seemed to have joined the Steem Alliance audio chat on discord half drunk(I am speculating because I have no way of really knowing). He randomly kept strumming a guitar and being nonsensical. Not really sure what it was besides cringe, just stop doing that Ned. You should save that for hanging out with people and having fun at a party(in my opinion).

As someone who is a natural speaker and can talk for hours on end from memory, I cringe when I see him publicly speaking. He really should have someone else do that for him.

When Dan left he said that the code was 99% completed for SMTs. With all of the ideas and innovation happening on EOS I can see now that it was Dan who was coming up with it all.

I originally doubted what Dan said about SMTs being 99% completed. But after a year and a half+ being here and seeing what has been going on, I know what he said to be true.

I don't think we will ever truly know what is going on, but I suspect Dan was really what was leading the innovation and now he is over on EOS. I hold both cryptos ;) so we will see!

Totally agree with you.. I feel the same way!

... this document will state as a premise that Ned has lost the confidence of the majority of STEEM stake holders and is not the right person to create or lead a decentralized community effort or long-term governance of the Steem blockchain."

Why? Because Luke says so???

It sounds to me; be he a good person or not; that Luke has drunk too much of the EOS Koolaid.

Did Luke bring you Hivemind? Did Luke promise a rocksDB HF in February? He has likely been too busy as an EOS Witness to have time for that.

 6 years ago (edited) Reveal Comment

Well Luke does not seem to be rooting for Ned, so you may have to choose Captains when/if your frolicking allows. ✌