This is just a quick comment. I just had a comment just a few minutes ago posted on one of my posts, and the poster voted themselves to the tune of ~$1.1, and I had sorta been thinking that this might be a problem (it will flatten out the beneficial effect of crowd-defined distribution of payouts) and now it seems pretty obvious to me this should not be happening.
After that thought, the next thing was, that the purpose of the compounded vote rewards was to stop voting. Now I see this being done by minnows and dolphins, I would pose the question, "So what is so special about whales that they wouldn't have been doing this, even if via proxy alts?" lightbulb moment
That is exactly what they were doing, and only the mature and honorable whale-witnesses who inflicted "The Experiment" on the whale population showed pretty good that whales have no special properties of emotional maturity, or good manners. Especially a certain very notorious whale.
I want to propose that someone who also sees an issue here, do some analytics on the chain to discover how much of the reward pool is paying out to self-voters. I bet it's at least 20%, if not more.
Now, this leads me to my second thought. In every other area, the steem architecture uses various mechanisms to stop abusive behaviour, from the single transaction per block rule, to the 'this witness makes block now, then that witness makes block now', which solve the problems from Proof of Work chains, which is a mechanism that is supposed to provide security as well as antispam benefits.
Could it not be very simply added, just one little if/then, that a user cannot vote on themselves?
Sure, this will then lead to people hiding it in alt proxies, but at least it won't be open as an option to newbies, until they learn more, and most will be too lazy to bother registering a second account, especially these days with how it can take a while to actually get one of the free accounts that are on offer.
It would be nice if there was some simple automatic way to determine that the same human is behind two avatars... There isn't, and in fact, this is why I'm starting to come to a place of thinking that it is not possible to completely eliminate sybil attackers, and even in centralised forums it can be hard for the humans to be 100% sure they are seeing one hand behind two masks. A subject that I am sure I will continue to devote thought to, but basically, the solution I have in mind involves artificial intelligence, text fingerprinting, association analysis, but ultimately in the end, a smart sybil can just send the coins out into some zcash or even just bitcoin, and then tumble it, and send it back to power up the alt, and there is no discoverable trace.
So, banning self voting is not a very strong measure, but it would work well enough for new users who don't understand the platform well, and and most people are lazy, so taking away easy routes of abuse usually mitigates a big percentage of a problem like this.
I do still think, though, that if the network-distance modulation algorithm that I have talked about before in my own system architecture designs, could mitigate this a lot. The more money flows between two accounts, the less the votes award. There is, as I described, work-arounds for this, but it further tightens the requirements of technical skill for an abusive actor in the system.