Steem voters will vote on Steem.
This one seems like it's pretty obvious, but we've now seen two big developers with Steem Inc. support fail it completely. The first was @steemhunt, who came to the platform with the idea that of course they could just use the Steem voting system for their own purposes:
The daily ranking system will be applied by the Steemit upvoting system. The rank will be organized by the pending payout values on a daily basis.
As I'm sure was a total surprise, as SteemHunt grew, that didn't work very well, and SteemHunt responded in pretty much exactly the wrong way - they decided to define people using the parent system they were piggybacking off of in ways the didn't like as abuse. Any votes on a post for any reason other than Steemhunt were considered to be improper, when in fact it was SteemHunt that was acting improperly by trying to co-opt the Steem voting system for their own purposes, and firewall off any SteemHunt-related post from the general voters.
Of course this didn't work at all, and SteemHunt slowly, but eventually came to that conclusion.
the stake-weighted voting system is failing because top hunting posts are occupied by upvoting from bid bots, subscription bots, curation tails and self-voting, which is irrelevant to the hunting quality.
They still had no interest in admitting that this was their own fault rather than blaming users who were just using Steem without considering SteemHunt, as is our right, but at least they fixed the problem by developing a separate voting system on their own platform.
Now we're seeing this again with @tasteem, who apparently didn't watch SteemHunt and learn that lesson:
Every user should strive for a fair competition. The usage of upvoting bots is not allowed.
Of course what this means is that users of upvote bots who are good at hiding it have an advantage. But even more so, it means that Tasteem has built a second layer of rules over the Steem rules, and is trying to enforce it on everyone on Steem, not just Tasteem users.
It also means those of us with significant autovoting support just can't participate - I'd be happy to not buy votes on Tasteem posts, but I have a hundred people who are automatically voting me for their own reasons, and their method of counting support either makes that unfair to anyone who doesn't, or labels me an abuser for those voters' choices. That's a no-win situation, and it's one caused by Tasteem trying to get information from the Steem voting system that it doesn't contain.
In the end, Steem users need to be able to vote on what they want for the reasons they want. Because we're going to. If that doesn't support the information you're trying to get, then you should be trying to get that information from something other than the Steem voting system, as SteemHunt eventually figured out and no doubt Tasteem will have to.
Steem posts should conform to the standards of Steem posts.
There's a lot of flexibility built into Steem, and that's great, but there are some universal characteristics of the Post class, and developers should be following them. The big violator here right now is @musing, which among other things doesn't use the standard format for tags. They don't have empty tags, they just don't have tags at all, which means that any program that goes through posts looking for tags errors out when it encounters a Musing post. (It looks like their posts have a tag because they use the "appTags" format to list their category. But this isn't how any other Steem tags work.)
A Steem root post that comes from Musing is still a Steem post, and it should have the values we expect to find in Steem posts made by other methods. As far as I know literally every other Steem post has tags, and people use that fact to do analysis and interact with the blockchain as a whole. Creating posts without tags throws a wrench into everyone else's work for no reason.
A Steem post needs to look like a Steem post to code as well as to people. If you're constructing Steem posts you need to make the effort to do that right, especially if you're a Steem Inc.-supported service.
We're all using this blockchain.
I get that developers have their own priorities. But using the resource that belongs to all of us without regard for the way anyone else is using it is antisocial and counterproductive. I don't know if we need a standards organization, or what. But without some way of encouraging developers not to overgraze the commons the base layer of the blockchain will eventually accumulate enough barnacles to be unusable.
(Not to mention the mass detritus of mixed metaphors.)