A Superblock for Pool Polls?
Voting on development and implementation decisions and details is a right of every Gridcoin network participant. Vote weight is determined by balance and magnitude. This means that owning GRC gives your vote weight in proportion to your balance, and possessing magnitude gives your vote weight in proportion to your magnitude. Solo crunchers can vote with both balance-vote-weight and magnitude-vote-weight. Pool crunchers can vote with only their balance-vote-weight. The challenge is:
How do we give pool crunchers the ability to use their magnitude-vote-weight?
First, some stats
There are:
8,277 total active users in the three pools.
4,000+ active BOINC team members.
This means that there are 4,000 people voting with magnitude-vote-weight, while there are 8,000+ people with magnitude, but not voting with their earned magnitude-vote-weight. This is a significant amount of vote-weight left out of polls.
There is:
40,031 total magnitude in the three pools.
There is 115,000 total magnitude in the magnitude kitty.
This means that ~35% of magnitude-vote-weight is locked up in the pool.
(thank you to @ilikechocolate for this statistic)
In other words:
@jamescowens tracked down the code and found that a magnitude+balance poll figures weight with the following equation:
vote-weight = ((Magnitude * (MoneySupply/TotalNetworkMagnitude + 0.01)/5.67) + Balance)
assuming that money supply = 400,000,000 we get:
1 mag = ~613 vote-weight.
This increases almost linearly with the increase in money supply.
This means that the 40,031 magnitude in the pool currently equates to about 24,539,003 vote-weight trapped behind the pool wall.
I might be mistaken, but my understanding is that 1 magnitude-vote-weight is the equivalent of 650 vote-weight (1 balance-vote-weight = 1 vote-weight). If this equivalency is accurate, this means that there is:
26,020,150 vote-weight trapped behind the pool-wall.
Sources
GRC Pool | BOINC Stats
The Idea
There are currently ways for users in the pools to be polled while taking their magnitude-vote-weight into consideration, but there is no way to take those poll results and put them on the Gridcoin blockchain.
What if we build a superblock that aggregates that data when appropriate? Is this possible? Could we then take that data and automatically calculate each pool-user's magnitude-vote-weight and vote, and appropriately insert that data into the client poll results?
If we do this (if we even can do this), we will have successfully proven that superblocks can be built for purposes beyond BOINC while adding more validity to every future Gridcoin poll.
Thoughts?
For a continuing conversation on this subject, you can join the github thread here.
Voting rights should be addressed and the way is to allow everybody to go solo.
As we have quite limited development resources, it would be a bad idea to meddle with code and introduce temporary solutions into the blockchain.
There are already several proposals put forward that will allow users to go solo and still receive their ERR, however there will likely still be users who want to use the pool -- so this will remain an issue moving forward for many many years. Additionally, proving the proof of concept around superblocks outside of BOINC is a fairly big deal.
Let's solve a long-term problem with a fairly straight-forward solution that will result in several major proofs and improvements while we continue to work through the very complex potential solutions to the ERR problem.
Out of a total of 115,000, meaning ~35% of magnitude-based polling is not possible.
Interesting idea; I don't know enough about
since I don't use a pool. Could you elaborate/provide a link?
Unfortunately I cannot, but @bgb has said that there are ways to do these things. Maybe he can provide more details.
For a continuing conversation on this, the github thread is here.
I've added your statistic and the github thread to the main post.
Cool, look forward to seeing more. This is an important issue if the blockchain is to enable equitable voting.
As discussed in the slack economics channel, so long as we implement means to prevent abuse and/or means to independently validate submitted pool data I'm all for it.
I think the first option being the easiest to implement.
Given that having pool users being able to vote does outweight the risks of relying on trusting pool owners to calculate mag and provide the data without falsifying it, It can be justified implementing some form of pool superblock.
I personally would prefer keeping pool users from voting with mag simply as that is one of the downsides to being a pool users, But that it only a justifiable way of thinking if being a solo miner was not so difficult.
Given that it would be some months before proposed fixes to staking would be implemented and we still need to have votes on said things it's sorta a catch 22 as to what you fix first and how.
Absolutely. I think the main draw to a pool poll superblock is the proof of concept of multiple super-blocks. I think we should explore this with something that doesn't affect GRC distribution, like polling, well before we might begin exploring additional data-hosting platforms.
I agree that the ultimate fix is to make it so you do not need to join a pool, but you can choose to join a pool. Under that system I would agree that pool users do not need to be given their magnitude-vote-weight as they are harming the network by removing their node. They would be sacrificing utility for convenience, which I think would be fine.
As it stands, however, all new users must join the pool in order to receive their Earned Research Rewards, so i think we should not limit their participation for doing something they must do in order to contribute and commit to Gridcon and without paying cash for GRC.
I do not think a pool poll superblock should be a focus of core development, but if there were a bounty made to help bring more people into development with a focus on the neural net and superblocks... I think overall this would be beneficial to the advancement of Gridcoin.
@jamescowens tracked down the code and found that a magnitude+balance poll figures weight with the following equation:
vote-weight = ((Magnitude * (MoneySupply/TotalNetworkMagnitude + 0.01)/5.67) + Balance)
assuming that money supply = 400,000,000 we get:
1 mag = ~613 vote-weight.
This increases almost linearly with the increase in money supply.
I have added this to the post.
self-upvoted for visibility
We should be putting our efforts to free the masses from pool slavery instead of offering them incremental improvements. The real problem is the pool itself. Marginal improvements to the pool will only make it more tolerable.
Solo mining is the key to liberty, rights and progress!
Yes, and there are plans for that. Many people will remain in the pool though, because even when the low staking frequency problem is solved, it will remain harder to stake solo. So I think this is an excellent approach to ensure that pool participants are not disenfranchised.
One step at a time, my over-eager trollish friend.
See: MRC, Superblock payout, future proposals.
why the name calling?
Perhaps masternodes can break the shackles and free our brothers and sisters.
tbh. Pool should only be a stepping stone. If they want to be involve deeply with GRC.
Invest. in hardware or $.
🔝🔝🔝