An idea for a bot to help combat the comment spamsteemCreated with Sketch.

in #bot7 years ago

steem bot.png
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.

Sort:  

There's several potential methods to prevent false positives from falling into the blacklist.
Yes, pattern searching is a good. But the more exception filters you add the less likely it is a real human falls into that category (as in someone with lack of originality and compulsive obsession to "leave a comment).

I would add a filter based on the post length→ minimum reading time factor, flagging those bots that read 1500 word articles in 2 minutes (I HATE those).
Also the potential to find markov chains is imperative, it wont be long until comment bots start implementing that (or a similar system), being a step ahead can never hurt.

A third option would be to "legalize" comment bots:
Release a bot easily usable by anyone that offer certain features that make it a better choice over others, and in it, include a command able to "please, don't comment on my posts".

And I forgot to add:
Selfvotes (such as the one above), all comment bots do that!

Great points. Should be quite easy to do a bot that finds the people that comment too quick. It might be my best bet for my first bot before I try to do the more complicated one.

Great post. Follow me i will....Just kidding. Seriously I don't know how I missed this post. I am not seeing every post these days. I am only following like 200 people but seem to miss some here and there.
It might just be my broken brain. LOL
Speaking of spam, are you investing in Ripple XRP I think its at $.19 right now. Pretty cheap. I just threw a few bucks at it.

I got a small amount in ripple just so I am not too annoy if I miss it pumping, but not enough to hurt, it is around 0.5% of my crypto portfolio

Slow down! (head down, writing down every word, using calculator with other hand)

Something to think about:
Some time ago I had a fairly long chit chat back and forth about one of the posts I made. There were many short sentences added to the replies. None were upvoted. The content of that conversation helped a fellow steemian to understand something. If you had you bot running, I suppose our (or my) reputation would have been below zero. Why should helping someone result in my being downvoted? People SHOULD be able to have a conversation (this is supposed to be a community where we build friendships) without worrying about voting for ever post made. Same goes for following: I may have something to say about a post that adds insight (as I hope I'm doing now) without feeling pressured to follow the person.
Honestly, I just don't see the value in your project and it could do more harm than good. Perhaps I misunderstood what the bot will be doing and in that case I apologize.

I'm not fond of the obvious cut-and-paste "love your post. Upvoted and followed. Please follow me too" type of comments either. I've actually investigated a couple and was tempted to throw a flag at them and then decided against it. My choice was simply to ignore it. If everyone did the same then there would be no benefit for the culprit to continue doing so and they would stop.

A conversation would only be penalized once and then only if the main post was not upvote or the post's aurtor was not followed. Even then the x:1 ratio I suggest would mean if you would only get on the blacklist if you were commenting on more than x times more post than you vote on. As you are likely following some of the authors that inspired you to comment, the fact that you only have 10 votes should get you or the bot's blacklist. And if I see an honest author on the blacklist I will adjust x so as there are off it. The bot will not be released until I am sue not innocents are getting on the blacklist

I don't understand what is wrong with building community by chatting without voting. We vote when we wish to reward an author. We chat when we wish to communicate something. The 2 are not related.

Clean up the streets of Steemit. Yes, I agree. If we want to keep Steemit community healthy, we need quality content. No one likes spam, and it brings the whole community down.

I guess it depends how good the bot is, you wouldn't want to discourage people from interacting either for fear the bot will think you are spamming. Maybe you could make a simple one where it will flag people who constantly write the same response to everyone over and over.

Yea I will implement it slowly to make sure it is not getting innocents. Other have mentioned the 'repeated response' idea, i think it is good, I will try and get it into the bot

That's awesome. You'll have to keep me posted when it's finished! Clean up time!

I don't like the comment bombers either, just drop in a couple of words maybe not even relevant to the post or comment thread then beg for whatever. It has become a lot worse since the influx of noobs after a quick buck (BTW that isn't really possible),, I'm not saying all new accounts are like that but it sure seems like it at times.

A bot automatically flagging is not a good solution though, it will encourage flagging wars...the end result being a vicious war where there are no winners.
We have already seen how flagging affects peoples reactions...automatic response go after those who flagged and retaliate. This is not good for anyone or for the reputation of Steemit.
Unfortunately I have no suggestion for a solution to a quickly spiraling problem.
This posr needs to be seen by many more and more discussion too. Thank you for sharing your idea about the bot.
You got an upvote & resteem.

Does a meaningless comment really hurt your post, though? I would take a meaningless comment over none at all, I guess, because I read early on that simply having comments gives your post a higher chance of being read.

I think if you have comments started and upvoted as a result of your post then you will stand more of a chance to be more visible.
Upvoted I think is the key here not just lots of comments, I may be wrong though.

Nice post.......

Just kidding 😘

I do have a question for you though:
Is there any place on the Steemit White Paper or FAQ stating the things that are considered abuse on Steemit?
For example: self-voting on your own comments, how many self upvotes on comments are considered abuse?

In a decentralised system like this anything that can be done is allowed to be done. So they are doing nothing wrong. But people are also allowed to do what the bot I describe does. And again to take it to another level if someone doesn't like what my bot does they can downvote it. Or people can even hardfork the steemit chain to make something undesirable impossible.

Did that answer your question?

Fascinating, I'm a Libertarian so for me, this is the closest thing to a community without a government, because it's decentralized, since there is nobody saying something is "illegal" or "forbidden" people will tend to do almost anything until somebody else tells them it's not "permitted", the community members are the ones that can decide what is to be considered "allowed".

When I first signed up for Steemit, there was a warning about Plagiarism of images and text, something considered to be a big Don't on Steemit, but even outside of Steemit people don't like Plagiarism and in some cases, it's even illegal.

Now talking about self-voting on comments on Steemit, that can be a very grey area, because from the moment that we publish a post a self-upvote is already added automatically, so it's easy for Steemians to think "well already I'm voting on my post, let's vote on my comments also", I'm Not saying it's ok to make a 100 comments like "nice post" and then self-upvote each one of them, but there should be some sort of warning or something before starting to Flag users, that way they can stop doing Sketchy stuff.

This is a lot like @smackdown.kitty, a bot I am creating with some others in the newly formed Steem Cooperative ( #steem-coop ) to flag self voted comments. This is the first post on it, and here's the latest.

We have decided to go for full flags on the top 4 paid self vote comments because of limited SP. But the idea would be to never flag to a value effect greater than their self vote. Actually this is starting today, the first flag is coming in a little while.

We're also going to publish stats on it to give people (and us) and idea of what the scale is, though we know already it's going on a lot.

You have a tidy sum of SP, we'd love it if you would delegate some to the @smackdown.kitty account 😊

Also I'm not going to respond directly to what I think about it, I've overdosed on discussion about it over the last few days, you can see my comments all over the place on it 😅 We're also talking about hard fork idea, etc., and you can find it on my posts and comments.

Great to see others thinking about it! Following you to see what you come up with, but if you want to join us I'm sure we could work together.

We are allowed to upvoye our own comments if we so wish, as you are allowed to flag those if you wish (or your bot wishes), you should be aware that flagging only encourages a retaliatory reaction as can be seen in recently on steemit.
There are those who dislike the idea of self upvotes because it limits the number available to be given to others comments and posts, this is fair.
The other side of self voting is that if a post is created or comment made then a self vote ensures at least something at reward time for you effort, so that too is also fair especially those who don't have a loyal following yet.

Will your bot respond to the vote buying also using the many self upvote buying bots? Do they also qualify to be flagged... your bot may be asking for more trouble than it expects.

We're well aware it is a divisive issue, and even though it is a legitimate action, flagging is still something that people feel they should not use, and can get upset when others flag them. This we know.

If the flagging incurs retaliatory action then so be it. But it would be worse to sit by I think, we are prepared to explain our position to others as well as act, and promote the debate, hopefully changes some people's minds and create a better Steemit in the process.

I know it's tempting to see the self rewarding as something we are entitled to but on a system wide level we cannot seriously condone this. The idea is that if people like your comment they will up vote it. It's a vicious cycle: if some people mainly up vote their own comments, those potential upvotes are not going to other comments, which effectively promotes self voting. We are trying to counter this culture.

The best way to engage with others is to follow then, comment meaningfully on their content if you have something to say, and upvote others!

Unfortunately I think all the bots for buying self votes may have something very different to say about self voting.

Many (all?) of those bots that they pay to upvote their own post can also be directed to upvote other posts/comments too, ones that are not by the ones paying, but that doesn't happen much as there is a rapidly growing impatience to be a bigger fish (dolphin, or whale) the bots mostly upvote the post/comment creator that pays.

This is not good for Steemit as it could be rewarding content that really isn't worth the rewards it is receiving as could be evidenced by a lack of non bot votes on those comments/posts.

It seems the way Steemit is heading is to be a community where more than 25% will be bots deigned to encourage automatic (content not even read or understood) upvoting for member of certain groups or 'support groups' at the expense of the other community members not in the 'support group' but still maybe creating content that deserves to be be seen and upvoted.

Why do these bots target the redfish and minnows...maybe because many are too impatient to wait their turn, so they want to self vote to glory, unfortunately the upvote bots are encouraging this more and more at the expense of the rest of the Steemit community.

In time maybe non users of upvote bots will also unite and just not upvote/follow/ users of the bots, there are only so many upvotes a bot can make, and take from the reward pool each reward period.

I like the idea of NOT voting for anyone who BUYS a vote. Buying votes just goes against everything Steemit is supposed to striving for. I would be totally happy if bots were outlawed.

I seriously doubt that bots being outlawed will happen, there are too many dolphins and whales running them....and guess who still has most control over steemit.

Not only that, but how can the system distinguish between a live person and a bot? After all, it is all just electronic signals.

You actually have a great point here, thanks for taking the time to write it.

I didn't actually realize but my project with @treeplanter would exactly allow for self votes, as it's kind of like @randowhale

Thanks to your insight here (and not thanks to my own blindness!) I discussed it with the person in charge of it and we decided to add a note to the automatic comment to encourage people not to use it to self vote themselves. In time we might disallow it entirely but for the moment we will allow users to decide, as it is in steemit now, and see what happens.

You can read the statement here.

Will read through the posts tomorrow, there definitely needs to be discuss in this area. But before reading your arguments my opinion is people should be allowed to upvote their own comments as much as they like

So, here we are. Someone already wanting to police Steemit. I comment on a lot of blogs. But, I'm here for the ideas and friendships that can be built. But, oh no, I'm not allowed to add any comment. Try to build this community, unless I pay up. I up vote SGT Report and any other professional organization that I consume every single video they make. Except their videos I disagree with. I also pay monthly to some people as well. On Patreon. But, absolutely will not treat this as a coin machine. I hope this platform takes off. But, here comes the rules. You and every other person will have things you would like to happen. So, how many rules do we allow? Do we set up the Facebook style? Google? Why don't we let people make comments, and grow this site? Blacklist? Wow, did you come straight from your Facebook blog? Are people not smart enough to look at the user name and see if they add value to Steemit? No, we need rules, just like Facebook. This isn't Facebook. We are "free" here to like, up vote, resteem, comment, and hopefully offend people. Or, will you be "blacklisting" offensive comments next? I hope you understand that this is just dialogue. I am not trolling you or looking for a fight. I came to Steemit to be free of the "rules" and become part of a community of free people. I heard there was no censoring of any kind. If it is the next Facebook, why leave Facebook to begin with. I am not part of Facebook by the way, or Tweeter. I am a Steemian for the moment. We are all Steemians here. Cheers

you're right we are all 'free' just as someone is free to downvote/flag. As I said I will not be using my bot if I think it is likely to impact an earnest commentator.

In a decentralized system like steemit there are rules, they are the rules that the majority decide to follow, these rules are fluid and subject to change.

Oh, and up vote my comment, hehehehehe just kidding.

Yes, I agree.

I just got a reply to one of my postings from @fiveboringgames threatening to flag me for encouraging people to 'comment spam' on my post, as he sees it. He then says downvoting is no big deal. Does he realize that this can affect reputation score?

I think downvoting someone in this manner (on their own post) is extremely rude and antagonistic, and I can see things going badly wrong, as others have already suggested tit-for-tat flaggings.

I find this attitude totally unfair.

I love your post :D

Wish you good luck on your experiment, but just remember i am not a bot 😜

Coin Marketplace

STEEM 0.28
TRX 0.13
JST 0.032
BTC 60793.50
ETH 2910.51
USDT 1.00
SBD 3.59