i think shares that under 50k has value 1 is wrong.
there must be different value for lower shares.
example:
40k-50k=1
30k-40k=2
20k-30k=3
10k-20k=4
5k-10k=5
0k-5k=10
Because find 49k easier than 5k
Plan for v2 pools:
Now that we have basic pooling to allow new and/or lower hashrate users to mine, I'll be moving on to my original plan of version 2 pools.
A new transaction type will be added that will allow users to declare an alternate address which will receive block rewards instead of them, and sign blocks for them(just blocks, they won't be able to make transactions). New api calls will be added for sending that type of transaction, checking if an address is set for rewards to go elsewhere, and retrieving all address that point to an address.
A new pool will be made that simply supplies an address to declare your rewards to go to instead of registering. Users will then be able to use plots made for their own account(solo mining plots) on that pool. The pool will be able to tell from the api which accounts are pointed at it. The pool will be able to announce blocks on behalf of its users and collect the reward to distribute.
If a user wants to change pools, they will simply have to make a new reward declaration transaction to a new pool, wait for it to confirm, and then they can point their miners there.
rating share values at pools was also with xpm a tough thing to do and resulted in many people leaving a pool for some time.
i think rating timeouts static during the share submission may work but the most fair way is to rate them after a block is found based on all submitted timeouts for this block and in relation to the final blocktime.
would have to be something like 5 million seconds timeouts were submitted in 300 shares.
average timeout 16.6k seconds. the effective blocktime may then be put somehow into this average share timeout as additional weighting.
shares above the average timeout get percentage based less reward and lower more.
sounds complex and is but gives low timeouts a advantage based on what the block really required.
the trouble with all this is that the idea of a pool is to share and distribute resources based on the work supplied and not how effective you supplied it in the current round.
if you want to get paid exactly for what you work on mine solo with one or more percent of the whole network size and get nothing if someone is faster than you.