create account

RC delegations: Current development status and request for feedback by howo

View this thread on: hive.blogpeakd.comecency.com
· @howo · (edited)
$163.06
RC delegations: Current development status and request for feedback
![social_hive_revolution_dark.jpg](https://files.peakd.com/file/peakd-hive/howo/hP4fZF55-social_hive_revolution_dark.jpg)

Hello, 

First of all if you haven't already, please check out my proposal for blockchain development on hivedao: https://hivedao.com/proposals/97

This the kind of posts that I want to do now and then on chain to gather some feedback and ideas about features and ongoing hive core work.

So here's some history on RC delegations, it's a feature that was worked on over a few years by the steemit team, and was supposed to ship with the smt hard fork, I figured this was a very important feature to have asap and we shouldn't wait on smts to have it. The problem is that the code is quite different between the SMT branch (where smts are done) and the main branch (the one that powers the chain right now). 

When the steemit team said "SMT development change almost every element of the chain" they weren't kidding. So the challenge was to extract the code and then adapt it to work without the rest of the SMT code. Which can be quite tricky as I had to dig up some changes that were made back in 2018. 

Then I realized that there was some bugs, so I set out to fix them and finally I got a working proof of concept.

FYI: it won't go live for hf24 because we don't want such a big change in hf24 and also there's some discussions to be had and potentially modifications to be done depending on your feedback. 

Here's currently how RC delegations work: 

## Pools

Each account got an RC pool in his account, anyone can delegate to any account pool, that RC won't be usable by the account, it's just a pool he can delegate RC from. (he can delegate to himself if he wishes).

## RC slots

There is a notion of delegation slots, each account got 3 slots from which they can receive delegations. meaning they can receive rc from at most from 3 pools, also, each slot can only receive from a specific pool. If you are not "whitelisted" you can't delegate to an user. 

By default:
Slot 1  is set to the account creator of the account, and only the account creator can change that slot 
Slot 2 is set to the recovery account, and only the recovery account or a top witness can change that slot 
Slot 3 is set to null, and the account can change that slot.  

it may seem a bit odd how the user don't "own" 2/3 of his slots, but it's designed in order to offload the complexity (setting up slots etc) to power users (witnesses/account creators/recovery partners) instead of putting that burden on the user. 

Most of the use cases for rc delegations are linked to account creation anyways, and that use case is handled by default, then there's games or other operation intensive applications and those could have a button to "ask for rc delegation" that would make the user set his personal slot to the game and then the app would delegate to it.

It's worth noting that if you change your slot, you lose your previous delegation on that slot. 

## Oversubscription

Pool work on an oversubscription model: (thanks @vandeberg for the explainer)

Let's say Alice delegates 100 RC to an RC Pool. 
That pool can then delegates 30 RC to Bob, Carol, Dave, and Eugene. 
There is a total of 120 RC delegated, but only 100 RC in the pool. 

Is that a problem? No.The implementation allows each of the out delegations to use up to the delegation's worth of RC, but that is charged to the pool.

If Bob uses all 30 RC and no one else does, Bob will no longer have access to RC from the pool until his regenerates, even though to pool still has 70 RC available. However, if Bob, Carol, and Dave all use 30 RC, then Eugene will only be able to use 10 RC before he cannot access any more. 

Although he has RC still available from the delegation, because the pool ran out of RC, Eugene does not have any to use.

This is useful for this use case:  Large stake holder making many small delegations, such as Steemit delegating to new users via the faucet (back when that was a thing). Users will consume their RC, but because not all users are retained, this can be significantly over subscribed.

## Another real life example: 

- Alice delegates 50 rc to her pool
- Bob changes it slot 3 to Alice
- Alice delegates 30 RC from it's pool to Bob (Bob can now use the RC)
- Alice tries to delegate to Eve, but since she didn't set a slot to Alice, Alice cannot delegate RC to it

## FAQ: 

### Will this affect the current hive power delegations ? 

No it will stay the same 

### If I delegate hive power to someone then RC, which one is used ? 

The RC used is in priority the account's own rc (hive power + delegated hive power), then if that's not enough, delegated RC is used.

### It it possible to have to have multiple users contribute to the same pool ? 

Yes.

### How many pools can one account contribute to ? 

40

To be clear an account can contribute to 40 pools, which will then be used to delegate RC to as many accounts as they want (way more than 40). 

Let's say the same thing but with a  soup analogy: 
A user can contribute to 40 different pots, but each one of those pots can be used to feed as many people as he wants.  

### Does delegated RC regenerate like normal RC ? 

Yes 

### Is it possible to Delegate from one pool to another ?

No

# Feedback wanted 

Now, question is, what do you think of that implementation ? Are there things you would change ? I am open to coding any changes. But keep in mind there are performance and complexity considerations to take into account (for instance that's why we don't have like 50 slots per account).

Some early feedback include allowing users to change all their slots if they want to, because a lot of slot 1 (account creator slot) would be blocked and never used since they are linked to the @steem account (including mine). 

# Questions ? Ask them below ! 

And again, please consider voting on my core development proposal here https://hivedao.com/proposals/97
πŸ‘  , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , and 577 others
πŸ‘Ž  ,
properties (23)
authorhowo
permlinkrc-delegations-current-development-status-and-request-for-feedback
categoryrc
json_metadata{"app":"peakd/2020.04.5","format":"markdown","image":["https://files.peakd.com/file/peakd-hive/howo/hP4fZF55-social_hive_revolution_dark.jpg"],"links":["https://hivedao.com/proposals/97","/@vandeberg","/@steem","https://hivedao.com/proposals/97"],"tags":["rc","hive","delegation","development"],"users":["vandeberg","steem"]}
created2020-04-26 17:14:09
last_update2020-04-26 22:02:00
depth0
children39
last_payout2020-05-03 17:14:09
cashout_time1969-12-31 23:59:59
total_payout_value86.995 HBD
curator_payout_value76.061 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length5,946
author_reputation511,962,302,102,641
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd0
post_id97,012,788
net_rshares213,527,864,432,889
author_curate_reward""
vote details (643)
@adexbafo ·
This is a good proposal to say the fact but the issue I have here is that of the account creator that is still linked to Steem Blockchain that would be affected at the long run. I thought Hive is hard fork of Steem, why can't we create code to deal with that, although I know this would be tedious. But it's a good idea, because any idea to make Hive Blockchain a better chain is a welcoming idea to me.πŸ‘
properties (22)
authoradexbafo
permlinkre-howo-2020427t18418135z
categoryrc
json_metadata{"tags":["rc","hive","delegation","development"],"app":"esteem/2.2.5-mobile","format":"markdown+html","community":"hive-125125"}
created2020-04-27 17:04:24
last_update2020-04-27 17:04:24
depth1
children0
last_payout2020-05-04 17:04:24
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length404
author_reputation270,810,806,579
root_title"RC delegations: Current development status and request for feedback"
beneficiaries
0.
accountesteemapp
weight300
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,034,131
net_rshares0
@bryan-imhoff ·
$1.90
It's overall a step in the right direction, but when I'd first heard of RC Pools I guess I was envisioning something a bit more automated and elegant. I'd imagine RC Pools tied to certain transaction types as opposed to individual user accounts, if such a thing is even possible.

I know that most (all?) posts contain some form of metadata that defines where the activity originated, as far as application, front end, tool, etc. I don't know if that's also true of voting activities. I feel that RC Pools should be tied to *that* information, instead of linked between each individual user account, which seems to still be a nightmare when scaling to tens and hundreds of thousands of users or more.

As an example, if Bob is posting his daily Actifit update, the system first draws from his own personal RC as is the case in what you describe above, if his balance is insufficient, it then draws from the Actifit RC Pool instead. Then Bob swings over to PeakD and makes a comment on a piece of art he really likes in the OnChain Art community. This RC cost is then auto picked up by either PeakD or OnChain Art. As a new user, Bob's experience is seamless, no requests need to be made for RC delegations, and the RC costs are being levied on the applications he's actually using. Otherwise, Bob may sign up through eSteem, get an RC delegation, discover SplinterLands, and spend his allotment of eSteem's RC on playing SplinterLands.

In the sort of system I describe, the three pools would essentially be relegated to different hierarchies of user, application, and community... quite possibly in that order of fallback. Applications and communities would ideally be able to set their own "rate limiting," blacklist certain users, etc. to control spamming and abuse of their RC. Applications could feasibly set a limit on both individual users and communities. In the example given above, PeakD may allow only 1% of their RC pool to be used toward any one community, ensuring a single popular community can't drain all their resources and harm the user experience. Then it's the responsibility of the community to power up HIVE and backstop with their own RC Pool to keep their members active and happy.

Communities are already tied to a singular account at creation that could serve as the RC Pool, Applications would have to have an account designated as their RC resource. 

Whew. Hope that made some sort of logical sense.

Summation: Users should individually delegate into RC Pools of communities and applications that they want to support, but expenditure of RC Pools should be tied to transactions, not users, thereby removing the need to manage individual delegations across potentially millions of accounts. The minimal RC amount that all accounts are credited with at creation *should* be enough to ensure any new account can still make limited needed wallet transactions and other behaviors, while the heavy lifting of content creation and interactivity is automated on the backend and charged to the services being utilized.
πŸ‘  , , , ,
properties (23)
authorbryan-imhoff
permlinkre-howo-q9es6a
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.5"}
created2020-04-26 18:46:57
last_update2020-04-26 18:46:57
depth1
children2
last_payout2020-05-03 18:46:57
cashout_time1969-12-31 23:59:59
total_payout_value0.948 HBD
curator_payout_value0.947 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length3,041
author_reputation71,780,425,099,152
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,014,227
net_rshares3,525,835,090,987
author_curate_reward""
vote details (5)
@howo ·
$0.10
That actually made a lot of sense, but there are a few issues with the system you are describing not taking into account the fact that it would require to rework the rc system to its core. 

First there are currently no way of tracking some transactions and linking them to an app, there is actually a task for it somewhere. But it would be something like the "app" tag that we sometimes put in the post metadata,  it's something that's useful for some UI changes here and there but shouldn't be used for important things like RC, because anyone can say "oh I am doing this post via actifit" even though it's not, and then steal RC from that pool, that could be solved by letting apps do some kind of signing on the transactions, but it complicates quite a bit the process. 

And I disagree that it should be linked to transactions, because then nothing stops one spammer from using up all the RC and leaving the pool dry.
πŸ‘  ,
properties (23)
authorhowo
permlinkq9exlv
categoryrc
json_metadata{"app":"hiveblog/0.1"}
created2020-04-26 20:44:18
last_update2020-04-26 20:44:18
depth2
children1
last_payout2020-05-03 20:44:18
cashout_time1969-12-31 23:59:59
total_payout_value0.052 HBD
curator_payout_value0.051 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length922
author_reputation511,962,302,102,641
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,016,354
net_rshares248,610,691,484
author_curate_reward""
vote details (2)
@bryan-imhoff ·
Without a doubt the biggest problem is that a system like I'm describing is ground up different than what's already in the works! 

As long as pools can set automated rules on how their resources are allocated, I don't see the spam factor being problematic. Limiting accounts to (x) transactions or (x) RC per day would be sensible. It's a shame that transaction tracking isn't more robust, but it would certainly take a power user to tag their posts in such a way as to just siphon some RCs off an unrelated application. If you do consider that a serious concern, then that just speaks to the issue that primary front end applications are going to bear the brunt of RC costs, even when not used directly on their platform. 

My main concerns are that it be pretty much seamless for new users to acquire an RC delegation, they shouldn't have to hunt for a frontend, application or user to provide it, request it, and wait for approval, and that applications can effectively manage their RC delegations. The pool as a "slush fund" of sorts with an attached ruleset is simpler than direct management of potentially millions of outgoing delegations, even if employing scripts and bots to help manage the task.  

Side question:

>Another real life example:
Alice delegates 50 rc to her pool
Bob changes it slot 3 to Alice
Alice delegates 30 RC from it's pool to Bob (Bob can now use the RC)
Alice tries to delegate to Eve, but since she didn't set a slot to Alice, Alice cannot delegate RC to it

In this example, are you able to differentiate in advance whether you're delegating to a user directly or their pool?

>Each account got an RC pool in his account, anyone can delegate to any account pool, that RC won't be usable by the account, it's just a pool he can delegate RC from. (he can delegate to himself if he wishes).

For instance, even without Eve setting a slot for Alice to delegate RC to, can't Alice delegate to Eve's pool without Eve's consent, and then Eve can simply route it to herself?

What's the purpose of the extra "whitelisting" step? I'm not seeing the benefit for the added complexity. We don't force people to accept a Hive Power delegation which is more impactful as it conveys RC and voting power in tandem, so why the extra limitation on RC alone?

If I'm understanding the system correctly, my suggestion for the current slot allocations would be to change #2 to the user account directly, and have their personal RC pool potentially feed into that with no approval or as seamlessly as possible, such that when Alice tries to delegate to Eve, Eve will see the benefits immediately without the complexity of needing to reassign a slot. 
properties (22)
authorbryan-imhoff
permlinkre-howo-q9f09p
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.5"}
created2020-04-26 21:41:48
last_update2020-04-26 21:41:48
depth3
children0
last_payout2020-05-03 21:41:48
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length2,664
author_reputation71,780,425,099,152
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,017,275
net_rshares0
@cardboard ·
$0.92
> button to "ask for rc delegation" that would make the user set his personal slot to the game and then the app would delegate to it.

Does this mean that RC pool can not delegate RC to any account they wish to? First the user would have to set the right slot, yes?
πŸ‘  ,
πŸ‘Ž  
properties (23)
authorcardboard
permlinkre-howo-q9erap
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.5"}
created2020-04-26 18:28:03
last_update2020-04-26 18:28:03
depth1
children7
last_payout2020-05-03 18:28:03
cashout_time1969-12-31 23:59:59
total_payout_value0.458 HBD
curator_payout_value0.457 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length265
author_reputation31,522,757,177,122
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,013,877
net_rshares1,864,199,576,253
author_curate_reward""
vote details (3)
@abh12345 ·
$0.85
I think this is worth clarifying.  

As I understand it, due to the slots arrangement, it wouldn't be possible to delegate RC's to accounts without them confirming this was OK for a slot to be used? 

Think I need to read a few more times :)
πŸ‘  
properties (23)
authorabh12345
permlinkre-cardboard-q9esgh
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.5"}
created2020-04-26 18:53:06
last_update2020-04-26 18:53:06
depth2
children5
last_payout2020-05-03 18:53:06
cashout_time1969-12-31 23:59:59
total_payout_value0.425 HBD
curator_payout_value0.425 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length241
author_reputation1,406,692,172,597,077
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,014,340
net_rshares1,752,676,284,452
author_curate_reward""
vote details (1)
@howo ·
That's exactly it.
properties (22)
authorhowo
permlinkq9ew3y
categoryrc
json_metadata{"app":"hiveblog/0.1"}
created2020-04-26 20:11:57
last_update2020-04-26 20:11:57
depth3
children4
last_payout2020-05-03 20:11:57
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length18
author_reputation511,962,302,102,641
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,015,783
net_rshares0
@howo ·
yep an rc pool cannot delegate to any account they want.
properties (22)
authorhowo
permlinkq9ew2l
categoryrc
json_metadata{"app":"hiveblog/0.1"}
created2020-04-26 20:11:09
last_update2020-04-26 20:11:09
depth2
children0
last_payout2020-05-03 20:11:09
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length56
author_reputation511,962,302,102,641
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,015,771
net_rshares0
@cryptological ·
What is the benefit to the account delegating the RC's ? Will it be just to support projects out of Goodwill or is there a Return on Investment? I's be happy to delegate either way, I'm just curious what the motivations would be.
properties (22)
authorcryptological
permlinkq9f8zs
categoryrc
json_metadata{"app":"hiveblog/0.1"}
created2020-04-27 00:50:18
last_update2020-04-27 00:50:18
depth1
children0
last_payout2020-05-04 00:50:18
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length229
author_reputation0
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,019,617
net_rshares0
@hivebuzz ·
Congratulations @howo! You have completed the following achievement on the Hive blockchain and have been rewarded with new badge(s) :

<table><tr><td><img src="https://images.hive.blog/60x70/http://hivebuzz.me/@howo/comments.png?202004301337"></td><td>You made more than 1500 comments. Your next target is to reach 2000 comments.</td></tr>
</table>

<sub>_You can view [your badges on your board](https://hivebuzz.me/@howo) and compare to others on the [Ranking](https://hivebuzz.me/ranking)_</sub>
<sub>_If you no longer want to receive notifications, reply to this comment with the word_ `STOP`</sub>



**Do not miss the last post from @hivebuzz:**
<table><tr><td><a href="https://peakd.com/hivebuzz/@hivebuzz/hivebuzz-hive-gamification-experience"><img src="https://images.hive.blog/64x128/https://i.imgur.com/3borgex.png"></a></td><td><a href="https://peakd.com/hivebuzz/@hivebuzz/hivebuzz-hive-gamification-experience">HiveBuzz - Hive Gamification Experience</a></td></tr></table>

###### [Vote for us as a witness](https://hivesigner.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more badge and upvotes from us with more power!
properties (22)
authorhivebuzz
permlinkhivebuzz-notify-howo-20200430t134607000z
categoryrc
json_metadata{"image":["http://hivebuzz.me/notify.t6.png"]}
created2020-04-30 13:46:06
last_update2020-04-30 13:46:06
depth1
children0
last_payout2020-05-07 13:46:06
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,161
author_reputation370,314,159,190,075
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,096,637
net_rshares0
@jager567 ·
$0.78
I know I'm a little late to the party, but I'm wondering why this very complex system is necessary. I think a much simpler system would suffice for the majority of use-cases.

I can see why the current system doesn't suffice. If you delegate HP, you delegate RC _and_ voting power. This is a way of saying that you approve the actions of the user you delegated to. A large account creator can't check all actions of all their created accounts, so they can't trust them with their voting power. They do want to give the users enough ability to interact with the blockchain so they can start earning their power. That's where RC delegation comes in.

A probably much simpler way of implementing RC delegation would be to make it similar to HP delegations. You delegate a portion of your max RC to a single user. That user can use that RC to interact with the blockchain. Most required code can probably be reused from the HP delegation codebase. <sup>1</sup>

This simplistic version indeed doesn't cover all use-cases that RC pools cover. As a dapp who provides accounts, you can't use community delegations to proxy to your new users. There's also no 'oversubscription', so the max RC delegated to the dapp users will be a lot lower, possibly low enough to run out. <sup>2</sup>

On the other hand, this simpler system would allow every user to support any other user they want to support, without them spending an 'RC slot'. I have a mere 78 HP at the time of writing. That's not much voting power, but I never get below 80% RC. If I encounter a new user who brings great value to the blockchain, I am not in the position to delegate HP, but I would be willing to delegate some RC to them.

I believe that if we make it easy enough to delegate RC to others, there will be much less pressure on the account creator to provide the required kickstart RC. Instead, the community will be able to take care of most of it. The only problem that remains is blockchain games. Those systems usually don't promote new players to write posts and earn rewards before playing. That would require too much effort, so a dapp delegation is required. But I highly doubt that this single use-case justifies the complexity of this system.

<strong>Conclusion:</strong> I think this system is implemented to ease the life of large, singular entities, onboarding massive amounts of users while being irrelevant for small-medium accounts with sufficient RC. I believe that if we build a system that empowers everyone, small to large, to help out brand new users who make quality content, we can solve most problems those singular entities have while increasing decentralization, and decreasing complexity.

<em><sup>1</sup> I can't say with certainty that this is a simpler system to implement. I only assume it is because of its similarities to HP delegation. Please tell me if I'm wrong here.
<sup>2</sup> It is likely that I miss some use-cases. Some of them are not covered by the simpler system.</em>
πŸ‘  
properties (23)
authorjager567
permlinkre-howo-q9zcoz
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.5"}
created2020-05-07 21:22:09
last_update2020-05-07 21:22:09
depth1
children1
last_payout2020-05-14 21:22:09
cashout_time1969-12-31 23:59:59
total_payout_value0.390 HBD
curator_payout_value0.390 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length2,983
author_reputation1,419,612,530,148
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,247,080
net_rshares1,939,972,460,831
author_curate_reward""
vote details (1)
@howo · (edited)
Direct peer to peer delegations have been thought of, and while it does bring a lot of simplicity, it also lacks a lot of the flexibility that pools bring (oversubscription), and when you think about it how often do you find yourself in a position where you want to delegate rc to people ? That happens very rarely for me as an user, as a dapp owner though that happens quite often when I create accounts (which is handled by design).

I think rc delegations will be something very few users will actually do. And if you want to contribute yourself to someone else, I bet there will be front ends to do it to hide some of the complexity.

And finally I envision that pools will be smart and always overdelegate because nobody uses all of their rc. So if you want to contribute to an user, you could just delegate that pool. Because in the long run, pretty much everyone will either have hp or be fed RC by a pool until they have hp.

My point is, I think there is a use case for direct delegations but it's a very niche one, and I don't think it's worth the added complexity of supporting both at the same time, or the time spent to undo the current system and make it a direct peer to peer one.
properties (22)
authorhowo
permlinkre-jager567-qa6440
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.05.1"}
created2020-05-11 13:00:03
last_update2020-05-11 13:00:33
depth2
children0
last_payout2020-05-18 13:00:03
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,195
author_reputation511,962,302,102,641
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,311,042
net_rshares0
@jarvie ·
$1.71
This is litterally the first time Delegation Pools have been attemtped to be explained to most of us so bear with us/me as we ask some questions.

-------

It appears one account can contribute to 40 pools.
But one application can make as many accounts as they want so the number of pools to manage can be pretty infinite and hopefully automated. 

So how many users can share from a pool?

Also it appears from the 120RC delegated example with 4 users sharing from the pool that it seems like the limit is proportional? Because you said 30rc per user.

Does the pool limit per user have to be proportional? That sounds like RC was being set up to directly benefit the steemit system of allocating 15sp to each new user.

A non-proportional may lend to the apps (RC delegators) to be more attentive to RC abuse. Just not entirely sure of the reason for proportionality because so many users won't use their proportion allowing for lots more users to have RC but with proportional you kind of have to plan for the worst case user.


πŸ‘  
properties (23)
authorjarvie
permlinkre-howo-q9eyng
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.6"}
created2020-04-26 21:06:54
last_update2020-04-26 21:06:54
depth1
children4
last_payout2020-05-03 21:06:54
cashout_time1969-12-31 23:59:59
total_payout_value0.852 HBD
curator_payout_value0.853 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,032
author_reputation388,491,264,112,133
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,016,740
net_rshares3,239,505,682,471
author_curate_reward""
vote details (1)
@howo ·
> This is litterally the first time Delegation Pools have been attemtped to be explained to most of us so bear with us/me as we ask some questions.

Please feel free to ask anything, I made this post for that exact reason.

________

On the 40 account limit : the pool is not the end goal, I was confused by this too, basically :

may users can delegate to one pool, and each user can delegate to 40 pools max. The rc in the pool can then be used to be delegated to users, and then you can delegate to infinite accounts if you want.

Here's another example: 

A,B,C delegate 30, 40, 60 rc to A's pool. A's pool contain 130 RC, but A can't use that rc to transact, A must delegate RC *from* that pool to users and then that RC will be usable. 

Basically, the act of delegating RC doesn't happen when you contribute to a pool (40 per user), but when you delegate out of that pool (infinite). 

____

Delegated RC out of a pool is not proportional, you can freely delegate 500 RC to one user and 3 to another. It's up to the pool owner to delegate whatever amount he sees fit.
properties (22)
authorhowo
permlinkq9ezeu
categoryrc
json_metadata{"app":"hiveblog/0.1"}
created2020-04-26 21:23:18
last_update2020-04-26 21:23:18
depth2
children3
last_payout2020-05-03 21:23:18
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,074
author_reputation511,962,302,102,641
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,017,014
net_rshares0
@jarvie ·
OK putting RC into a pool may be complicated but really that's only a few people doing that. What we want to know is how to get the RC into the hands of users who do not have much RC>

We will see apps like ourselves and splinterlands putting a ton of RC into a pool for our users to use. Which will number into the thousands ... hopefully eventually tens of thousands (or more) users. 

So i'm rereading what you wrote and it's not really clicking yet. 
How does that part work. PeakD uses 100k SP worth of RCs. How does it go from there? Let's say there are 1000 users that need RC.
properties (22)
authorjarvie
permlinkre-howo-q9h4bn
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.5"}
created2020-04-28 01:04:39
last_update2020-04-28 01:04:39
depth3
children2
last_payout2020-05-05 01:04:39
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length585
author_reputation388,491,264,112,133
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,041,642
net_rshares0
@marki99 ·
$0.41
I think that one slot is enough anyway, why would you need delegations on two different slots? If you're a business that needs a lot of RC, then yeah, you might use the three slots but in this case, a business can easily deal with the complexity of that system. There is no need, to change the code too much if it is sound.

I just give an opinion because it was asked but I really think that you would have a better idea regarding what to do (along with other devs). 
πŸ‘  
properties (23)
authormarki99
permlinkre-howo-q9ey28
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.5"}
created2020-04-26 20:54:09
last_update2020-04-26 20:54:09
depth1
children4
last_payout2020-05-03 20:54:09
cashout_time1969-12-31 23:59:59
total_payout_value0.206 HBD
curator_payout_value0.206 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length468
author_reputation11,400,723,818,181
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,016,518
net_rshares915,186,443,716
author_curate_reward""
vote details (1)
@howo ·
Thank you for your opinion :) 

Well you might want multiple slots to recieve delegations from multiple actors, say 500 rc from the service that created your account and 1000 from that game that you love to play.
properties (22)
authorhowo
permlinkq9ez0x
categoryrc
json_metadata{"app":"hiveblog/0.1"}
created2020-04-26 21:14:57
last_update2020-04-26 21:14:57
depth2
children3
last_payout2020-05-03 21:14:57
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length212
author_reputation511,962,302,102,641
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,016,889
net_rshares0
@marki99 ·
Aren't RCs usable across all Dapps? For instance if you delegate to me 1000 RC then I can use them anywhere, whether for PeakD, Splinterlands, or transferring to an exchange. 

In that case, one delegation should always cover all needs unless the consumer of RCs is a big Dapp which needs 3 RC delegations from 3 big delegators. 
properties (22)
authormarki99
permlinkre-howo-q9ez81
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.5"}
created2020-04-26 21:19:15
last_update2020-04-26 21:19:15
depth3
children2
last_payout2020-05-03 21:19:15
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length329
author_reputation11,400,723,818,181
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,016,953
net_rshares0
@raycoms ·
$0.29
Is there a particular reason for the quantity parameter to be 40? What not 50, what not 25? (Kinda seems like an odd number to me)
πŸ‘  
properties (23)
authorraycoms
permlinkq9eyr9
categoryrc
json_metadata{"app":"hiveblog/0.1"}
created2020-04-26 21:09:09
last_update2020-04-26 21:09:09
depth1
children5
last_payout2020-05-03 21:09:09
cashout_time1969-12-31 23:59:59
total_payout_value0.176 HBD
curator_payout_value0.116 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length130
author_reputation115,046,969,395,583
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,016,800
net_rshares793,668,309,847
author_curate_reward""
vote details (1)
@howo ·
I don't know why they picked that specific number, but I know the number of delegations is limited because of performance issues, so I assume they did their math and that number came out.
πŸ‘  
properties (23)
authorhowo
permlinkq9eyza
categoryrc
json_metadata{"app":"hiveblog/0.1"}
created2020-04-26 21:13:57
last_update2020-04-26 21:13:57
depth2
children4
last_payout2020-05-03 21:13:57
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length187
author_reputation511,962,302,102,641
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,016,870
net_rshares31,204,666,110
author_curate_reward""
vote details (1)
@raycoms ·
It's because I'm wondering if a max count is the best solution or a min size is a better solution.

A big account (1 million HP) might want to lend to 100 accounts. This account would have its HP into three accounts to do so. A small account could also do 40 delegations (let's say a 400 HP account) each 10 HP and tax the system too.
properties (22)
authorraycoms
permlinkq9ezlv
categoryrc
json_metadata{"app":"hiveblog/0.1"}
created2020-04-26 21:27:33
last_update2020-04-26 21:27:33
depth3
children3
last_payout2020-05-03 21:27:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length334
author_reputation115,046,969,395,583
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,017,084
net_rshares0
@rekha007 ·
hey bro  you share a good info  i will support you
properties (22)
authorrekha007
permlinkq9go91
categoryrc
json_metadata{"app":"hiveblog/0.1"}
created2020-04-27 19:17:24
last_update2020-04-27 19:17:24
depth1
children0
last_payout2020-05-04 19:17:24
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length50
author_reputation4,669,811,561,637
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,036,412
net_rshares0
@sepracore · (edited)
$1.47
I am glad you are working on this. Thanks! It is critical for mass onboarding without creating thousands of spam accounts.

It makes sense to me that all three slots should be able to be changed, but if it is going to add a bunch of work and delay things maybe that should be saved as a future update. Something now is better than nothing at this point in my opinion. 

Since you mentioned this would not be in the next hardfork ... what is planned to be included in the next hardfork? I assume we don’t want to include RC delegations because there is a higher likelihood of it causing fork issues and we want our first Hive hardfork to go smooth for PR purposes?

As another note .... If the community had issues explaining HBD, Hive, and HP to newcomers, just wait until we get to explain RC delegations to them!! 🀯  
πŸ‘  
properties (23)
authorsepracore
permlinkre-howo-q9eplf
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.5"}
created2020-04-26 17:51:15
last_update2020-04-26 17:52:30
depth1
children4
last_payout2020-05-03 17:51:15
cashout_time1969-12-31 23:59:59
total_payout_value0.732 HBD
curator_payout_value0.733 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length819
author_reputation19,888,382,618,059
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,013,299
net_rshares2,808,748,011,667
author_curate_reward""
vote details (1)
@howo ·
$1.04
Thanks for your feedback ! 

I wouldn't add too much work to let all three slots be changeable so that's fine. 

In the next hard fork we'll likely have : 
- Chain id change (to truly set us appart from the steem chain) 
- Delayed voting (to avoid having exchanges powering up everything at once and then voting like they did before) 
- Some fixes on apis here and there 
- Changes on the sps to make it go from steem.dao to another account (@hive.fund)

On the complexity, the whole point of the way RC delegations are implemented where other people can set their slots, is to make it in order to offload the complexity to power users (aka the account creator / top witnesses) 
πŸ‘  ,
properties (23)
authorhowo
permlinkre-sepracore-q9eq0y
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.5"}
created2020-04-26 18:00:39
last_update2020-04-26 18:00:39
depth2
children3
last_payout2020-05-03 18:00:39
cashout_time1969-12-31 23:59:59
total_payout_value0.520 HBD
curator_payout_value0.520 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length678
author_reputation511,962,302,102,641
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,013,452
net_rshares2,087,050,766,785
author_curate_reward""
vote details (2)
@antisocialist ·
Can authors have their ten percent back now that the dev fund has ~90m hive?
properties (22)
authorantisocialist
permlinkre-howo-q9fphm
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.5"}
created2020-04-27 06:46:36
last_update2020-04-27 06:46:36
depth3
children0
last_payout2020-05-04 06:46:36
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length76
author_reputation274,219,090,240,881
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,023,598
net_rshares0
@sepracore ·
Oh that's right! I forgot some of those changes, like the vote delay, have not gone into affect yet. It has seemed like Hive has been around for a long time, but it really hasn't. The quarantine has made me lose track of time and my mind.  
properties (22)
authorsepracore
permlinkre-howo-q9eqp2
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.5"}
created2020-04-26 18:15:06
last_update2020-04-26 18:15:06
depth3
children1
last_payout2020-05-03 18:15:06
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length240
author_reputation19,888,382,618,059
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,013,657
net_rshares0
@taskmaster4450 ·
$0.09
Here is a direct link for @howo's proposal.

https://hivedao.com/proposal/97

πŸ‘  
properties (23)
authortaskmaster4450
permlinkre-howo-q9esqi
categoryrc
json_metadata{"tags":["rc"],"app":"peakd/2020.04.5"}
created2020-04-26 18:59:09
last_update2020-04-26 18:59:09
depth1
children0
last_payout2020-05-03 18:59:09
cashout_time1969-12-31 23:59:59
total_payout_value0.046 HBD
curator_payout_value0.046 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length78
author_reputation6,666,762,621,239,153
root_title"RC delegations: Current development status and request for feedback"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id97,014,450
net_rshares221,142,678,374
author_curate_reward""
vote details (1)