Slaying The Bots: Saving Steemit, Busy, and Other Steem Concentrators.

in #steemit6 years ago (edited)


People complaining about bots has been a thing on steemit since it first began. There are some things about bots that the average person doesn't fully comprehend. I will try to be brief on describing these things.

Bots are simply programs that mimic being a human. If you can do it, can we make a program that will mimic you and do it for you? This adds automation. The problem is that if people decide bots are a problem and are cheating in games, draining reward pools, or making curation worthless how do you detect them? They are acting like a person, so any detection algorithms you come up with have to somehow be able to distinguish them from a human. This is generally done by looking for some pattern. The patterns can be changed by the bot programmer. The more aggressive you get about it the more likely you are to get an increasing number of false positives where actual people are getting flagged as being bots. It is, thus not a very viable option.

This problem has mostly been solved in many websites outside of the steem ecosystem. If the amount of input you have to send to a platform is not rapid on a per user basis then we have some solutions. Steemit is such a platform. It has distinct interactions that do not occur rapidly when done by humans. These are post, up vote, down vote, resteem/reblog, etc. In reality those solutions might be able to be used on steemit and it would make bots much more difficult to create and possibly eliminate them. This is not without negative consequences. The question you have to ask yourself is if we have reached the point where those negative consequences are something you would be willing to put up with to address the bot problems. Then the next thing would be convincing the programmers of the steem blockchain APIs to implement the change.

I will present my suggestions later in this post. I do think it is important at this point to layout some of the things that are occurring with bots and some that have been occurring for a long time. This may be helpful to putting some perspective in place and deciding if those negative consequences are preferable to the current state of things.

Where are we, and how did we get here?

The early bots simply followed accounts. A person could program a bot to up vote anything written by certain authors. This was convenient, especially if they themselves had multiple accounts, or they had friends and family members that they wanted to make certain anything they wrote was up voted. It is their steem power, they should be able to vote how they want. This simply automated it and made it easier to make certain they didn't miss a post.

That sounds all fine and dandy. Then if one ponders the purpose of curation. Seemingly the purpose of curation was to help bring the quality posts to light based upon the content of the posts. If you are simply up voting based upon WHO wrote something then it will not be about the content of the post, but rather WHO wrote the post. Your friends and family could put forth very little effort, and could even endlessly write about the same thing and still get their votes. No actual useful curation occurs. You can also have people using multiple accounts to simply up vote their own content and increasingly funnel more and more of the reward pool to themselves. This too makes curation not really doing much in the way of curation. Content is not being voted on based upon its quality, value, etc. It is being voted on based upon WHO wrote it rather than WHAT they wrote.

As they accumulate more and more steem power doing this their ability to do this increasingly accelerates, and their ability to take more and more of the reward pool and funnel it to the accounts they want increases. Soon those who are using the platform and hoping for actual curation so they can find the good posts will begin to wonder why so many of the posts that have high payouts are always talking about the same things over and over again, and why the quality is often (not always) questionable. They will also note how increasingly difficult it is for people new to the platform to be noticed for the quality of their work. When you think about it this should be expected when curation is not occurring based upon WHAT is in the post.

Then a new form of bot emerged. First it was simply a bot you could send a link to and an SBD payment and it would give a random vote from a powerful account to the post link that was paid for. The SBD payment would go to the bot programmer (or perhaps operator that is deploying another copy of a bot written by someone else). The vote would be cast, the reward pool allocated, and again the post is not being curated based upon WHAT is in the post, but rather due to a person paying for it to be curated as though it is quality.

This improved and over time it no longer was random, but became a PAY to get a BIG VOTE proportional to the payment.

If you look at trending posts now and examine the votes of those very high payouts they almost all are there at this point because of people paying services like this. When some people have examined them closely they have noticed that the actual payout to the author of these posts is usually not that significant compared to what you would think by looking at the number. The truth is they PAID for most of that. The bot operator/programmer collected these payments which these days can be quite large, and ALSO got a significant curation reward due to the post appearing to "trend" though it could be argued it didn't trend at all. This vastly accelerates the concentration of new steem power into the accounts of these bots. The amount of the reward pool remaining to go to actual humans who are not bot operators will logically increasingly and potentially rapidly decline. This does appear to be happening.

NOTE: All of this stems from not actually curating on WHAT is in the post, but for other reasons. People should be able to vote how they want. That doesn't mean voting without careful consideration of the long term ramifications of those votes is a good idea.

There are also new bots that spam our wallets indicating that if we pay them money they will resteem the post to X amount of followers (which for all we know could also mostly be bot accounts). This is closer to advertising than the bidbots.

That is one of the arguments in support of these activities that it is like advertising. Loosely it is like advertising. Then again it is NOT. When a person pays for advertising in the rest of the world it is not paying for guaranteed purchases and sales. The client paying for the advertising still needs to make a product people want to purchase. There was/is a feature called POST PROMOTION which burned steem dollars (deflation) and put posts in a promoted queue and no bot operator was paid, it actually increased the value of steem dollars for all steem dollar owners. The problem was that it had its own little queue and it was never really implemented in a way that adjusted its appearance on the Trending, Hot, etc feeds. It is closer to actual advertising than the bidbot method.

The bidbot method is paying for guaranteed purchases whether the product is a turd being marketed as a block of gold or not. That is not the same as advertising. The long term ramifications should be something most people can imagine if they bother to seriously think about it.

It results in more and more people speaking about how they can't get noticed. They will start using bidbots as they think that is the answer, when they are not getting noticed faster at all. They are just feeding the beasts that are creating and fueling these problems. The bidbot operator/programmers are happy as they are accumulating more and more of the reward pool in their own coffers without them actually having to do anything, or curate anything. It is automated.


Some people have spoken up


There have been those that could see it and have spoken up. They have recommended NOT voting on anyone that uses a bidbot. In otherwords, boycotting them even if the content of their post is good. If this were done by enough people in the past it may have worked. At this point the bot operators own so much of the steem power that they can shrug this off. You may cause a brief dip in their upwards trending graph of gobbling up the steem power, but it is accelerating so eventually your boycott won't have meaning. It will be all bought and paid for posts, with the post owners only getting a trickle of value from them other than seeing a BIG NUMBER and thinking "Wow my post made thousands of dollars" and then thinking "Why does my bank account only seem 10 dollars more than before?" They paid for the prestige of appearing to have a quality, and extremely popular post. Though it wasn't about popularity at all.

There are people that have advocated flagging those posts to discourage it. This tends to create a flag war and again doesn't really impact the bot operators at this point anyway. Too little, too late. You get 10 votes at 100% per day on your account. That includes negative votes.


So what can we do?

At this point the only thing we could do is try to stop the bots or make them significantly more difficult to create. We would need a method that does not falsely target actual humans.

Such techniques have come into existence, but they would need to be implemented at the API level of the blockchain.

These come in two forms that I can think of now:

  1. Captchas
  2. Authenticators

If every time you POSTED you had to solve a captcha, or enter a code from a mobile authenticator then that would stop bots in their tracks. It would add a little more effort on the end user's part, but it would make these problems much less likely to work.

There are other negative implications.

Things that require being able to post fast, vote fast, etc that are not humans would be impacted. So it could negatively impact beneficial applications that required some automation.

At this point the question is do we do something of this nature before steemit become increasingly more and more a platform of bots. A place where finding things not voted on by bots is more and more difficult, and you likely are getting very tired of reading the same material over and over again, or reading pieces that are worth so much that you read them thinking "what am I missing?" and thinking the problem is you. It is not.

Captchas


Captchas are the things you've certainly had to solve where it shows you an image with some numbers in the image and asks you to type those in, or where it says click the boxes that contain signs in an image, or where it asks you to slide a puzzle piece into its correct position, or where it asks you to solve a simple problem. These are things it is very difficult to program a bot to solve. Thus, by requiring one it does protect against that at the cost of a little inconvenience.

This could be done on steemit or busy rapidly, but the problem is that would be purely a webpage side solution and most bots talk directly to the blockchain by the API and don't actually use a website. It wouldn't do anything to most of the bots, and it would just add inconvenience without actually solving this problem. Which is the main reason I haven't recommended it before now.

Authenticator


An authenticator is something like a key fob, a mobile authenticator, etc that has a code that changes uniquely for you every 30 seconds, minute, etc. Google Authenticator is a popular one at the moment. Have it so the person as to enter the code on their authenticator before they can proceed. This can sometimes also be done by SMS and sending a text, or an email. SMS and Email could be handled by a bot, though with more inconvenience than currently.

Again this has the problem of it would mostly only be website existing so wouldn't really stop most bots.


So how could you make it apply to bots?


It would need to be implemented at a low level on the blockchain so any vote or post required this authentication. People may decide that post should not need it, and it is only needed for votes. That certainly would be something worth trying.

The code is open source so one argument would be that people could just fork the code and create a new project. If that project enabled this lack of curation to be passed off as an indicator of quality, popularity, etc then it would not survive long in the face of a competitor that actually properly curated things based upon the content.

As to the posts. There are different types of posts. You could perhaps leave the MEMO posts alone in terms of captchas, authenticators in the interest of allowing applications that need to rapidly post data to use that.

This entire concept is likely very unpopular with the bot operators, and at this point they are pretty much the plutocracy of this platform. It also would not be easy to do.

It is something I think seriously worth considering if you want to save this platform.

Sort:  

Bot-be-gone: the powerful detergent to clean this mess up :P

what would happen to steem if this pattern is not addressed? Does steem eventually fall apart? Does it turn into a myspace with minimal value?

No clue since there is no precedent. Steem is the first of its kind.

IIRC @paulag did post regarding this issue some months ago, and reckoned that the rewards pool eventually becomes entirely consumed by bots. I dimly recollect that in the comments there were discussions of some misapprehensions and errors in her calculations, but I don't recall if these invalidated her original conclusions.

This is what I see happening, and I don't see anything able to stop the eventual total consumption of the rewards..

Steemit Captchas - Great idea!

Apt description of the problem but, being one that codes a degree of automated voting operations for various reasons, such as rewarding non-self voting for example, I have mixed feeling about the solution.

I think a more gradual solution could be achieved by requiring the bid botters to decline rewatds so the bots function is more promotional in nature.

I'm doubtful this will change. Many bid bot owners use their bots stake to self-voting their witness making it difficult for those that represents the non-bot interest to have adequate influence to make these sort of changes.

I think a more gradual solution could be achieved by requiring the bid botters to decline rewatds so the bots function is more promotional in nature.

The problem is that you can't actually reliably detect bots. So you cannot reliably detect bid bot users. Anything attempted to do to detect them is looking for a pattern. All they have to do is change that pattern. Also doing this it becomes increasingly likely people that are not bots or accounts that are not bots will be false identified as bots.

This is NOT something anyone out there has reliably solved. If they did they'd have a high million or even billion dollar product.

This is why captchas exist. They do not detect bots, but they make a barrier it is difficult for bots to solve, but easy for humans.

Great article, @dwinblood!

Excellent post @dwinblood. This whole exercise reminds me of Animal Farm ... revolt against the humans so we can share equally in the 'riches' turned full circle... Steemit where content creators get rewarded for their content and NOT the corporates (Facebook) ... well at present the Bot Operators are Facebook and the content creators are NOT getting rewarded for their content.

Basically, that is correct. :)

Great post! Congrats! Upvoted. I've been here for nearly three week and already noticed the bot problem, leading to SP concentration, and possibly damaging censorship through downvotes. Bots need to be eradicated. Otherwise, to me, this platform seems doomed. There are no ways out if bots keep ruling a platform which was built for giving value to great content... Bots are doing exactly the contrary of that. Implementing a validation through google-authenticator -or whatever- is a great idea. Forking to implementing it By Force, is also a great idea. Actually, that solution sounds so great, that might be coming soon (by fork... not necessarily from Steem Slowly-Moving devs)

Somewhere in a comment — it may have been on @themarkymark's long post asking for Steem suggestions — I saw a brief comment: "Everyone is here for the money, whether they admit it, or not."

In reading your post, I got to thinking about that again.... and how that statement — whether technically "true," or not — invariably creates a bias in terms of what is developed and implemented, and what is not.

Captchas are a great idea and would potentially return Steemit somewhat to the model of being a "social content site."

But do enough people actually want a social content site? Or have we already fallen beyond the "event horizon" to where Steemit can never be anything but some version of a "cash grab" because that paradigm dominates everything?

It's hard to say. I have my bias in that I am not a cash grab person so I don't view such things as a goal. Though I have encountered people that think it is the same as advertising, when advertising has no guarantee of return.

@dwinblood this is great! I love the solution you came up with! I think witness theMarkyMark is looking for suggestions on upcoming changes via HF. Would you copy link to that?

https://steemit.com/steem/@themarkymark/what-is-the-1-change-needed-for-steem-win-usd20-upvote

Yeah I saw that. Though he had rules to put it in a comment. I'll check it out.

I'm seeing things your way lately on this issue. When it came up I hardly knew the full problem at hand. One thing I'm confused about is where a service like minnow support fits in. Does their upvote bot fit in and cause the same problems? I have been bot free on all my IW posts since we first discussed it but I'm thinking that being %100 bot free is the way to go.

Minnow support is still 100% manually curated as far as I know so it isn't technically a bot.

It's good to have help navigating the minefield that is social media, much appreciated. It is tough saying goodbye to all those artificial upvotes, even though they don't provide financial incentive those rep points are addictive to say the least. I suppose the fake rep won't ever replace a real/actual honorable reputation at the end of the day. They have level up junkies by the short and curlies on that aspect, I have to remember this isn't a game of Final Fantasy ;)

Coin Marketplace

STEEM 0.30
TRX 0.12
JST 0.034
BTC 64513.75
ETH 3146.11
USDT 1.00
SBD 3.95