Source: altered from this image on pixabay
The Problem
We all get the comments on our posts of the form
What a beautiful post, I followed
Real important blog
Another great post, keep them coming
I hate these! Why you may ask? Because I am obsessive and I check to see if the author of the above comment has indeed liked my post or failing that has at least followed.
And of course with nearly all these bland comments, they have not.
So what are they up to? Money, they are fishing for upvotes. If you click on the profile of the authors of these banal compliments you find that they post a lot of them. And if you dig deeper you find that they mostly comment on posts by steemians that have over 1000SP.
These are likely bots or at the very least humans acting robotically.
The solution
How do you fight a bot? With a bot.
I've been playing around with learning python on and off for a while now, and the most common bit of advice I hear about learning to program is, pick a project and learn by doing.
So this is my project and I am looking for some input. So far this is the broad picture I got.
On the 7th day of a posts life the bot will check if the author of a comment has either voted (up or down) or has followed. They will then be awarded points based on whether or not they interacted. I was thinking something like -1 for no interaction and +2 for any interaction. The + value been higher to make it less likely to catch honest commenters in the bot mistakenly. Then if a steemian gets to, say, -20 they go on the blacklist.
The bots second job would be to downvote users on the blacklist, using at most x% of my voting power, I would see this x% as a donation to the community to help clean up the spam and if enough people were to run the bot, x could be as low as 1 to disincentivize the spammers.
Concerns
I am slightly worried about a steemian getting on the blacklist mistakenly. Maybe they are short voting power so don't upvote and they may not of followed the OP yet due to not seeing enough of their posts. This possibility is another reason I was thinking of the +2 -1 dynamic. If you are commenting on twice as many posts as you are voting on, you may of entered spam territory. And +2 could be adjusted up or down as needed.
Another safeguard for honest commenters could be starting it off with a threshold of -100 or more so as to only get the really aggressive spammers at first. And then lower the threshold slowly and see if it improves cleaning.
I could also add a counter, where if you have a minus score you regain +1 a day until you get to 0 again. That way there is room for redemption. edit: or this could be +x% a day.
I am also worried about the stigma of downvoting to the downvoter (me or whoever runs my bot), this is why it is my goal to set the safeguards so high that no honest commentator should get caught, my theory is it is better to miss a lot of spammers than to persecute one innocent. Also the worst spammers do most of the spamming, I'd imagine, so if thats all who I catch I will consider it a job well done.
What else? you tell me. What edge cases do I need to think about? Will this bot help? Will it hurt innocents? Let me know.