Proposal: move curation calculations from the blockchain layer to the interface layer.

in #steem6 years ago (edited)

Part of the problem with the curation algorithm is that it's fairly strongly limited by the witnesses' calculation power and the number of blockchain operations necessary. There are ways that it could be improved, if those limits were reduced. Beyond that, it could also be improved by competition: if multiple entities and multiple priorities were driving the development of various curation algorithms, they would advance our knowledge of how to algorithmically reward the discovery of valuable content.

Both of these things can be achieved by decentralizing the calculation and distribution of curation, moving responsibility for it from the core blockchain to the posting interfaces (Steemit, @steempeak, @busy, etc.) through the use of beneficiaries.

An interface would take a beneficiary payment, and run their own, off-chain calculation to determine the payouts for the voters, then send the rewards via transfer. This offers several advantages over any system with a set percentage of curation on the blockchain level:

  • Significantly reduce the processing power required by witnesses by offloading the curation calculation.
  • At its base level, this would maintain the level of blockchain operations, or increase them by 1/post for interfaces that don't already take a beneficiary.
  • Interfaces could choose to batch payouts for their users; a daily or weekly curation payment transfer rather than one for every vote would reduce blockchain operations.
  • Allow for more complex calculation of unexpected discovery via methods like Bayesian Surprise, which is impractical on-chain.
  • Each interface could choose its own curation percentage, allowing both posters and voters multiple options.
  • One or more interfaces could implement the user-chosen curation percentage proposal without increasing blockchain load.
  • Users with direct-access skills could choose their own curation percentage, though they'd be responsible for distributing the rewards.
  • Each interface could develop its own algorithm based on its own priorities.
  • Batching transfers would eliminate the need for dust curation; small users could accumulate small ledger amounts until they reached the minimum transfer amount.
  • Competition between algorithms would lead to much faster development of our understanding of how rewards are optimally distributed.

This is sort of a hacked-up SMT-esque system that can be built on top of the current Steem today, as a proof-of-concept without any consensus change required. Many of the blockchain benefits depend on removal of the existing algorithm, but if the proof-of concept is demonstrated to be practical and effective, the base curation layer can be removed at a later date.

I didn't invent this, DTube did. I just noticed its potential to satisfy broad categories of stakeholders in the debate over curation rewards. 50/50 can happen if you want it to, so can 69/31, so can 100/0 if you like. User behavior can determine which are successful.

Steem.png

Sort:  

I love the idea of creating a market in curation power.

That really needs to be fleshed out, I think. There should be some real value in offering a better algorithm but it's hard for me to quite see how it would work.

Thinking this out as I write...

So there are 4-5 parties that directly interact here.

You have the content creator, the condenser site the content creator uses, the curator, the condenser site the curator uses, and the witnesses.

For simplicity, we can ignore witnesses since their function and rewards would remain the same.

If leave the author split at 75%, then the competition among the condensers can take place by offering different curator splits as one of the differentiating factors. For example, even if steemit.com offered full curation and steempeak.com offered 80% curation, I'd still go with steempeak.com because the UX is so much better.

If we don't leave the author split at 75%, then we need a true two-sided market of some kind. Off the top of my head I don't see how that would work very well.

OK define "UX" please :-)

User eXperience

An interesting idea, but at the current moment it requires a trusted third party to take some of the funds and redistribute them in an agreeable way. Although having multiple competing sub protocols operate different curation levels would definitely be an interesting experiment to run if SMTs permit that sort of thing.

I'm all for experimentation and am definitely opposed to making protocol changes without real world data and empirical evidence to back them up. We've generally been too quick to jump onto certain ideas based on theoretical arguments just to see unintended consequences sneak up and make things run not as smoothly.

That's part of why I picked the front ends; they're already trusted third parties, or second parties, or something. Trusted middlemen. You're giving them either your keys or your auths already, except maybe for the few people using @yabapmatt's new thing. I'm not totally clear on how auths through that work. So there's not a whole lot of extra trust added there.

Also it's hard for anyone else to set beneficiaries.

Competition between algorithms would lead to much faster development of our understanding of how rewards are optimally distributed.

Exactly!

Heck yeah. Could smt’s be used for this purpose? Will each smt creator have control over those parameters?

Posted using Partiko iOS

That's one of the big ideas for SMTs. This is just sort of hijacking it for use on core Steem.

This is a vert interesting idea, resteemed :)

But I think we need more developers in the system to achieve that - developers that are willing to spend a lot of time on making new frontends (condensers) and the curation payout algorithms.

As far as I know even busy don't set themselves as benefactor. Probably most devs think, that if you take a cut of user's profit, the users will just use different platform.

On a basic level both Condenser and Busy are cloneable, so the real necessity is adding a small upgrade, and then running a server. The first part is reasonably in my toolkit and I may actually try it. Webservices really aren't, unfortunately, but I guess you gotta learn sometime.

Once a proof-of-concept site exists, if it attracts users I can see the other ones adding it rather quickly. @steempeak in particular seems to have really good devs.

Yeah, maybe you should try to reach them :) would be fun to make your own condenser... and than adding few upgrades ;)

My Witness Partner is a Diva-DEV-DELUXE ( @sapphic ) in fact she is the High Priestess of the Blockchain ;)
SHe has a server dedicated to Hive-mind and is ready to ROCK

.

OK Tim, I've followed U for a while, "Fellow🐬Dolphin" and I believe we NEED a person of your analytical skill in the Dolphin Council. If you are on Discord I will send you an invite link but I need to first run it by the Existing council... should be no problem :)