
In today’s world, we are surrounded by Technology all around us, with new ones getting developed and built every single day. Technology had made our lives better in ways we couldn’t have imagined before. Perhaps one of the influential technology around is bots.
Bots are special software designed and developed to do a specific repetitive task with zero human assistance automatically. Bots were developed to take the load off people by performing some tasks faster and often more effectively than if a human performed them.
Most of the time, bots are software that operates over some type of network, often the internet. They interact with other bots, web pages, or even humans to look for problems they are designed to solve. If we want to categorize bots, we can define two generic categories, good bots and bad ones.
A "good bot" is a term used to describe bots that help users and provide valid services. Bad or malicious bots are those bots that perform illegal and sometimes unethical tasks. But, we must remember that bots, like any other technology shape, are neither good nor bad; rather, people make them good or bad by the way they decide to use them.
How to categorize bots?
If you tried googling types of bots, you would find some people who say there are six, seven, or some even say four types of bots, because when categorizing bots, people often set their own rules and terms to how they will do so. Hence, we end up with various categorizations.
In this article, we will stick to the generic categorization of good and bad bots to explore our way around the land of bots. That being said, bots can be categorized in many other different ways.
Bots with good applications (Good Bots)
№1: Chatbots
From the name, Chatbots are those designed to have a conversation with humans. These bots are most often used in customer service to solve a problem and help people better understand a service or a product. Chatbots are built to imitate natural human interaction.
For Chatbots to imitate human interactions, they need to be able to understand and use human language. Understanding human language is a complex problem; it’s the core challenge of natural language processing. That’s why most Chatbots are designed as a narrow context AI for a specific scenario.
There are many Chatbots out there, but the first one and the one considered the birth of Chatbots is ELIZA. This Chatbot had hard-wired question/ answer script that is used to communicate with humans. Other examples of Chatbots are Erica, financial assistance from Bank of America, and Tay, a Microsoft AI chatbot that interacts with people via Twitter.
№2: Crawlers
The second type of bots on the good bots list are crawlers. Crawlers are bots that run continuously and interact with APIs or websites to collect some data, respectively. These types of bots only fetch publicly available data or data they have permission to fetch.
The most well-known type of crawlers is search engine spiders. Search engine spiders are bots designed to extract URLs from the web, and then these URLs are used to download and parse data into a searchable index. Commonly used search engine spiders are Googlebot and Bingbot.
Crawlers are more than just search engine spiders; another type of crawlers are bots that are built to monitor and system and give alerts whenever a change occurs. Examples of this type of crawler are pricing assistant, which monitors e-commerce websites for price changes, and Alertbot, which monitors websites for server uptime, bugs, and website errors.
№3: Transactional bots
Transactional bots are bot built to act on behalf of a human. They need to interact with systems to accomplish certain tasks, often related to data movement. Since transactional bots are built for a specific task, they can be designed for different custom solutions.
One of the areas the transactional bots fin into is the field of robotics. Some known transactional bots are Birdly a Slackbot used to retrieve specific data for you, and x.ai‘s Amy Ingram, a bot designed to interact with people through email to find the best meeting times for distributed teams.
№4: Informational bots
Last but not least, on the good bot list, we have informational bots. Informational bots are designed to provide helpful information by pushing notifications or sending emails and texts.
The most common usage of informational bots is breaking news bots. These bots monitor the news and send alerts whenever something happens. An example of this kind of bots is the GuardianBot which allows you to get on-demand briefings on the latest news via Facebook Messenger and GamerBot, allowing you to get regular gaming news updates specific on-demand content via Facebook Messenger.
Bots used in bad applications (Bad Bots)
№1: Hackers
Let’s kick off our bad bot list with hackers bot. These bots are designed to distribute and enable malware through email or websites. These bots’ goal is to attack data and sometimes break networks. They do that by looking for vulnerabilities within a network or application and then used them to destroy that network or application.
The number of hacker bots increases every year; once a computer or a network is hacked, their information is exploited forever. The designer of the bot can use it for different purposes.
№2: Scrapers
Scrapers are the bad version of crawlers. Crawlers follow the low when fetching data from an API or a webpage. Scrapers, however, steal data they are not meant to access, such as email addresses, passwords, and personal information.
These bots are often designed to ignore API and website data fetching rules to get to their target data. Once these bots steal data, they then republish it and exploit this sensitive information.
№3: Spammers
Spammers are bots designed to – as the name suggests – spam was content to users via emails or faulty ads to drive traffic to some specific website or blog eventually. Examples you might have seen around the web are comments and mail spambots.
Luckily, due to good bots and search engine development, detecting bad bots’ behavior, the number of spam maile or any spambot has declined in rapid years.
4 Software Development Techniques to Level up Your Data Science Project
№4: Impersonators
Last but not least, we have impersonating bots. These bots are designed to mimic a specific user’s behavior to gain information about them or steal some of the sensitive data.
These bots are often used a lot in politics to mimic human behavior and drive attention towards a specific target and away from the opponent. Using impersonators for this purpose creates what is called propaganda bots.
Final Thoughts
As data scientists, we sometimes need to design, build, develop and deal with bots more frequently than one might imagine. Not just as data scientists, everyone these days will deal with bots at least once per week. That’s why knowing what bots are and what types are out there is a piece of good information to have in general.
There are different ways we can categorize bots; in this article, we went over a generic categorization of bots based on the way they are used. Bots can be built and used to perform legal, ethical tasks, or they can be used to perform illegal ones.
Bots are merely a piece of technology, a piece that is not inherently good or bad; in general, they are neutral. It just depends on how they are utilized. So, next time you hear someone referring to a bot as "bad bot," just know they mean that the bot has been used in a bad way.