As some of you know by now, there are significant initiatives being undertaken on Steem to accelerate the onboarding of new users. However, there are some technical hurdles involved with mass onboarding to Steem. I spoke with many witnesses, developers and some from Steemit inc. too while at Steemfest and I learned something new - We can't re-delegate delegations on Steem yet! I suggest we change this now.
I have had a project running on Discord for a while now called 'Passport to Steem' that has been working to solve the various challenges with mass onboarding for Steem and I will be making a post to announce that very soon (Keep an eye on @steempassport). One of the issues with mass onboarding is that we need to be able to perform actions that are similar to those that Steemit inc. does when they sign up users for free accounts. This means that we need to be able to delegate small amounts of Steem to new users on a temporary basis. This is fine for Steemit inc. since they have a large pool of Steem to draw on, however, if third party projects are to replicate this, they either need to directly control a large amount of Steem themselves or be able to RE-delegate Steem that is delegated to them.
While it would be ideal for onboarding projects to have a large amount of Steem Power under their control, so far this has not occurred and so I am suggesting here that we consider a change for a future (ideally near) Hard Fork.
Re-delegation Proposal
Under the existing system on Steem, users can delegate Steem to other users to enable them to upvote and interact with the network using that Steem Power. However, there is a limitation that means that the recipient is not able to then re-delegate that Steem elsewhere. Under typical conditions this isn't an issue since the original delegator can simply undelegate the desired amount and then delegate to the new recipient directly. When we come to onboarding solutions, however, the situation is different.
Users need a small amount of Steem Power in order to use the blockchain (around 15 Steem Power might be ideal). Currently new users that sign up via Steemit.com are delegated Steem and this can then be revoked if they are reported for spamming. If @steempassport or some other project that does not hold a large amount of Steem power wants to do similar, we find we currently have no mechanism on the blockchain to support this.
Re-delegation would mean that users who have received delegations can also re-delegate that Steem power elsewhere as if it were their own. If someone 'up chain' then cancels a delegation, then all 're-delegations' that affect that delegation are revoked. Revocation would need to be handled intelligently, so that the minimum of disturbance occurs when a delegation ends and it could affect people further down the chain of delegation.
It is easy to see how such a function might become complicated and difficult to track. What if users delegate the same Steem Power repeatedly, so that it is passed on hundreds or even thousands of times? This might be unlikely, but needs to be considered. In order to prevent such confusion and to minimise the necessary coding/testing for the blockchain and UIs, I suggest that perhaps initially we could just support one layer of re-delegation, which would enable onboarding projects to practically carry out their mission - without adding the kinds of complications that might arise with the ability to re-delegate in an unlimited way to an unlimited number of levels in depth.
Comments & Feedback
It would be great to hear from all stakeholders on their thoughts on this. What challenges do you perceive? Are there any conflicts of interest with regards this approach that may not have been considered?
Wishing you well,
Ura Soul
Vote @ura-soul for Steem Witness!

(Witnesses are the computer servers that run the Steem Blockchain.
Without witnesses there is no Steem, Steemit, DTube, Utopian or
Busy... You can really help Steem by making your 30 witness votes count!)


