
The switch to Resource Credits created quite a stir. While the move gives everyone a better idea of what certain activities on the blockchain cost, it did put a limit on what smaller accounts can do.
One benefit is that the spamming of the blockchain was dramatically reduced. This also saw an increase in the payouts to the users that were left since all those micropayments to the spammers was removed. For this everyone is grateful.
What is not sitting well is the fact that newer accounts, especially the ones that go through the application, have zero SP. Unless the cost of activities are reduced, this is severely limiting. Going through Steemit still gets one the same delegation as before. However, they do take it back if an account is inactive or does engage in spamming.
So how do we fix this?
One idea that appears to be followed is giving people the ability to delegate their Resource Credits. This will separate the RC from the SP. Presently, if one wants to give a smaller account the ability to conduct more activity, SP needs to be delegated. This penalizes the larger account in that it is a reduction in power.
Under the new system, RC could be delegated which is not a penalty to a larger account since it is basically excess. From what I can see, anyone with 1K SP or more basically will not use up their daily allotment. RC recharges at the same rate as SP.
@holger80 did a review of the code that is being written and put up a post of what was completed so far. It is obviously rather technical so I won't even begin to delve into that.
From what I can see, the delegation is from an account to a pool that is being set up. It does not look like, at least this go around, that account to account delegation is being worked upon.
New container to store the state and operation of the RC pool delegation has been added
New operation delegate_to_pool_operation was added
This operation can be used to delegate RC from an account to a pool.
What does appear to be in the mix is there will be different pools that one can delegate to. Could this be that each application could set up a pool to have users of that app delegate to? That would make sense.
New operation delegate_drc_from_pool_operation was added
This operation can be used to allow account use RC from a pool. The operation has to be signed from the pool owner.
The entire idea behind the Resource Credits was to establish a system which used market conditions to establish the cost of each activity. Built in was a way for the Witnesses to alter the system if things were shown to be not reaching an equilibrium that created the results desired.
The new coding did change the cost of a couple things by a factor of 20.
The most important change is the adding of objects for resource pool delegations . This is the first necessary step in implementing a fully working pool delegation.
The second most important change is the enabling of resource_execution_time for RC costs. The budget of all pools have been increased to compensate this. The cost of a vote has made 19x cheaper, custom_json operation was also made 20x cheaper (except of follow custom json operation).
Here is the post by @holger80 along with the full breakdown of what code was reviewed and what it all means.
@holger80/code-review-of-changes-since-0-20-5-resource-pool-delegations-were-added
As an aside, @holger80 is a Witness, presently ranked 72. This type of undertaking is what the community needs from the Witnesses so it might be worth consideration giving this account a vote. (full disclosure-this is one of my votes)
I think having account to account delegation of Resource Credits would be a great addition to the community. Personally, I like the idea of individuals being able to directly help out those they being to the ecosystem. This might be something that gets added later or it might not even be on the radar. Nevertheless, I feel it is worth talking about at some point.
The idea of RC pools makes a lot of sense. Hard Fork 20 did a great job in decentralizing the sign up process by giving applications (any large account actually) the ability to sign up new accounts. The problem is they can do very little. If an application can set up a RC pool and get delegation from the users, that would go a long way to solving the problem. Just like Steemit does with the SP, a certain amount of RC could be given and have it diminish as SP is earned.
Thus, we would have a system where the new users are limited in their ability to interact by the blockchain yet it can be overcome if the applications decide to issue more RC to newer accounts. This would provide more flexibility to the applications.
Of course, the subject of leasing bandwidth will come up. Do we see pools established where people delegate bandwidth that is leased out by accounts? That might have been one of the initial intentions with this. While one might jump to the conclusion of individuals accounts having to lease; I think the exact opposite would be in play here.
Users could get their delegation from the applications. Where I see a RC pool for lease being needed is with the newer applications. This could be a way for them to reduce the start up costs by not having to buy as much SP but, instead, expand the ability of their users to interact by leasing RC.
Take a major publication as an example. Let us say they need enough RC for 5M transactions per month. Without knowing the numbers, suppose they bought 25K SP to start. This gives them a nice starting stake yet is not enough to cover all that activity. Therefore, they lease RC equal to 2M SP to ensure they can sign up their users and give them enough RC to participate.
Instead of having to lay out $2M, in this scenario, maybe the leasing only costs $10K a month. Obviously, the numbers can change but I think you get the point.
The Resource Credits opened up an entirely new avenue for this blockchain. While confusing and starting off slow, the merits of these system are now starting to emerge. This was a major upgrade to this ecosystem. I am getting very excited about the possibilities.
It is also encouraging to see the development team is working on this is the code is being written.
And a thank you to @holger80 for reviewing it while bringing it to our attention.
If you found this article informative, please give it an upvote and resteem.