I think it might be useful to develop some kind of "quality score" for a given post.
One of the problems is that, even if you can distinguish between users and bots, there will always be users who try simple tricks to superficially boost their own posts, whether it's through upvote/resteem exchanges or the classic follow/unfollow tactic or some other trick. If people are incentivized to upvote a certain number of posts through an exchange, for example (e.g. steemfollower.com), they will likely gravitate towards more superficial content (like photos or memes) so that they can reach their required quota of upvotes as quickly as possible. "Deeper" content, which requires more time/thought to create and also more time/thought to digest tends to lose out to memes and the like for this reason. And so the time/effort involved in creating "deep" content likely isn't rewarded in a way that reflects that time/effort.
One idea for assessing quality would involve assessing the "depth" of a post. This might be achieved with some data-mining/ML/AI techniques to to assess the post relative to other posts that have already been given some kind of quality score manually. Ideally, this would also test for plagiarism, since originality should ideally be valued over content duplication. If this kind of functionality were to be developed, this might also provide an interesting content discovery idea for Steem: let users find content that is of similar "depth" to their own.
Another idea would be to take an approach similar to PageRank, where the quality of a post is calculated by some combination of the following:
- some measure of engagement: e.g. maybe a ratio of interactions (comments/upvotes) vs. number of views
- quality scores of the comments on a given post
- quality scores of the users who made the upvotes/comments. Note that this should NOT necessarily be the same thing as "reputation"! The way in which reputation is currently calculated does not do a good job of reflecting the quality of a given user's post(s). I've seen bots/resteem accounts with "reputation" scores that exceeded those of users who were genuinely posting good, original content and engaging with the community.
- the number of comments and the number of upvotes could then be weighted according to their quality scores (and not by any parameters in which values can be bought and sold like Steem)
The two ideas could be combined, in that the "depth" of a given comment could also be taken into account in assessing its quality. Perhaps the Steem platform itself could eventually track things like the number of keystrokes or the active time spent in the editor so that quality can be eventually be assessed more robustly. Of course, I'm sure the spammers out there will figure out new ways to exploit the system, but at least they'll have to try harder.