An Analysis of Automated Bot Behavior on Steemit

View this thread on: d.buzz | hive.blog | peakd.com | ecency.com
·@nphacker·
0.000 HBD
An Analysis of Automated Bot Behavior on Steemit
# Introduction
In this post I am going to go into detail regarding some common bot behavior I have seen on steemit. Some bots are sophisticated in structure, but most bots are simple. In order to expound upon common bot behavior I will be presenting multiple real life case studies.

https://i.imgur.com/k2VztA5.jpg
[Source](http://i.imgur.com/k2VztA5.jpg)

# Case Study #1 : @wang and the #introduceyourself bots
Wang is perhaps one of the earliest bots to have been created on steemit. Like most bots, wang does not post any content in its blog section. Yet always replies in the #introduceyourself category. With the following post:

https://i.imgur.com/TMgwhEE.png

Wang being the first in its category is perhaps the most successful bot to date with its account being worth over $1 million in STEEM. According to [steemstory.com](http://steemstory.com) @wang was the 1,244th user to join steemit. After @wang became well established as an #introduceyourself bot, many other bots were created with a similar goal in mind. Most likely developers saw the success of @wang and decided that they wanted to get in on that action, but unfortunately for them the ship to make big $$$ by being an #introduceyourself bot had shipped (most of these bots now make close to nothing). The #introduceyourself bots today include: @ciao, @steemit.tips, @lillianjones, @steemster1, @jarvis, @confucius, @sharon, @overtheline and many more that are unlisted here. How can you spot an #introduceyourself bot? It's simple, most of these bots make generic statements that have nothing to do with the post. Don't be fooled by their, "Welcome," or "Ciao! Ciao!," or "Great to have you in the community here are some helpful tips ..." It is very simple to make a #introduceyourself bot using the official Steemit API or @xeroc's piston library for Python.

**Bot Development Strategy**
1) Connect to a steemit node
2) Stream posts in the introduceyourself category
3) Post a reply for new incoming introduceyourself category posts

# Case Study #2: @isaac.asimov @confucius @msjennifer
Many bots such as @msjennifer are trying to appear as realistic curators of a post, and often post compliments such as "Great post!" or "Great post! @username" they follow a general template. Bots such as @confucius are slightly more sophisticated in that they grab a random quote (in this case from the philosopher [Confucius](https://en.wikipedia.org/wiki/Confucius)) and post it. The case of @isaac.asimov is a little more interesting, below is a sample post from @isaac.asimov:

https://i.imgur.com/4zBs8V4.png

@isaac.asimov takes the text of your post and runs a [Flesch-Kinclaid readability test](https://en.wikipedia.org/wiki/Flesch%E2%80%93Kincaid_readability_tests) to see what school grade level your post falls in then it cross references that grade level with a list of authors who write at or near that grade level and posts this comment. This bot is slightly more sophisticated than the ones seen in the past because it at least makes use of the user contributed content, and although seeing such stats appear at the end of a post might seem cool @isaac.asimov at the end of the day is still a spam bot. Since steemit.com has become open-source a developer could maybe create a fork that includes this type of data and more under each post. 

**Bot Development Strategy**
1) Connect to a steemit node
2) Stream posts across multiple categories
3) Run algorithms on post text or hit an API or text file to grab a random quote
4) Post a reply to an incoming post

# Case Study #3: Plagiarism promotion bots
Though I do not have a concrete real life example of this class of bots, these bots definitely exist on steemit. These bots go to a website such as [Medium](https://medium.com/) or reddit grab a random post and post it to steemit, without giving any credit to the original poster, and are perhaps the most dangerous in that they are the hardest to detect. They could be racking up money through upvotes with users thinking that the content that is being posted is original. These bots could also be cross posting high valued content from top steemit users such as @stellabelle. 

**Bot Development Strategy**
1) Connect to a steemit node
2) Hit a Medium or Wordpress API grab the text of a post and post it to steemit or stream posts from steemit by a specific user and copy that post and post it

# Case Study #4: @cheetah and the rise of anti-spam bots
https://cdn.meme.am/instances/500x/70062522.jpg

With the bots described in case studies 1 - 3 slowly creeping into existence. Bots are starting to become a real threat to steemit in that they are impeding in users' ability to curate original content. Luckily developers such as @anyx, @xeroc and @pharesim are making an active effort in developing tools to make the development of anti-spam bots easier. Let's analyze the behavior of @cheetah a notable anti-spam bot:
https://i.imgur.com/i1gXcBD.png
@cheetah uses similar methods described in bots in the previous case studies but uses these methods to stop bots from spreading plagiarism and spam, instead of promoting it. This bot primarily checks for similar content on the internet and posts a reply with a link to that similar content asking the user to verify they are the original content creator. Anti-spam bots are also known to flag replies that they consider to be from spam bots as can be noted below:
https://i.imgur.com/Djt6JWj.png

# Combating spam bots
There are a couple of possible methods that come to mind when targeting spam bots. The first is to create more plagiarism detection and spam bot detection bots such as @cheetah, the development community is already actively doing this. The second is to present solutions embedded into steemit that prevent against spam-like content to be shown, since steemit.com is now completely open source this is an option.

# As a non-technical background user how can I help combat against spam bots?
Some things you can do:
1) **Reply to posts you are suspicious of being a spam/plagiarism bot, if no one replies to you, you can check for repeated behavior on the suspicious account and report it**
2) **Participate in the conversation of stopping spam/plagiarism bots with your own ideas**

# As a developer how can I help combat against spam bots?
Some things you can do:
1) **Participate in the conversation to develop spam prevention methods, creating spam prevention bots may not be the best long term strategy**
2) **Give suggestions and ideas to @ned @dan, the [witnesses](https://steemit.com/~witnesses) and prominent developers**
3) **Aid in the development of tools to combat spam**

### As always, thank you for reading and I hope you join (if you haven't already) the ongoing fight to stop spam on steemit!
👍 , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,