I guess p2pool would improve things, as follows:
Currently if you are staking 10 CLAMs, you can expect to stake 1 CLAM every 50 days or so. If there are 100 people staking 10 CLAMs each, they each get that same very irregular reward for staking.
With p2pool, those 100 people can expect to get the same return, but with much lower variance. They each get to stake 0.01 CLAM about twice per day. Their expectation is the same (still 14% lost due to orphans) but their income is much steadier.
Thinking about it more, p2pool works by making shares much easier to find than real blocks. 1000 times easier, say. That way, the guy who currently expects to stake a real block over every 10 days gets to contribute a share 100 times per day, or once every 15 minutes.
But there's a problem with that. If JD stops solo-staking and joins the p2pool network, that's almost all the network weight that will be on p2pool. That means p2pool will be staking about once per minute, and so its members will be contributing 1000 shares per minute. Thos shares need to be added to the share chain. So we have a distributed blockchain adding 16 blocks per second. And we thought the orphan rate was bad now!
So that doesn't work. What can we do to fix it?
Do we make the '1000' vary per miner? So JD still only submits full block solves, bitdice works on shares that are 10 times easier than standard, and the little solo-staking guy works on shares that are 1000 times easier? But isn't there a problem there too? If bitdice is only going to submit shares which are 10 times easier than a full block, surely it will get 100 times as much 'credit' for each share as the small solo miner does for each 1000x easier share he submits. Because their shares are 100 times harder. But what is to stop bitdice from selling their too-easy-to-publish shares to the little guy for him to publish on the share-chain and get credit for? This is probably something that has come up with the Bitcoin p2pool already. I've not been able to find anything very in-depth written about how p2pool works however.
Maybe p2pool only works well for Bitcoin because 1) the blockchain targets 10 minute blocks and 2) not a very large percentage of the hashrate is using it. With CLAM we have neither of these - the blocks are very fast already, and JD would want to use it.