Bots are Dumb
With the growing surge of available bots on platforms like Facebook, and the availability of tools to supplement services with bot-like interactions through the likes of Amazon’s Alexa, Microsoft’s Cortana, and Apple’s Siri, it may seem like bots are a recent innovation in software development. Perhaps the artificial intelligence revolution taking place is providing the tools we finally need to make bots useful? Actually, this isn’t the case.
Artificial intelligence or machine learning have absolutely nothing to do with bots. Bots have existed for decades, predating the current sophisticated state, relatively speaking, of natural language processing (or NLP). In fact, most of the bots available on Facebook and Slack are still as unintelligent as the IRC bots were 20-years ago.
That’s right, we (the Internet users of yesteryear) used to communicate with bots daily through the trending chat medium of its time: IRC, well before machine learning became as accessible as it is through cloud services like Azure and Bluemix today. We mostly wrote bots for fun; making small games for other IRC users to play, or as practical jokes.
The pivoting point in modern bot development is not in machine learning, although that has changed the landscape, (we’ll get to that shortly), but in the availability of cloud services and distribution channels, like Alexa and Facebook.
In the late 1990s, our distribution channel was often an IRC channel somewhere, that had limited users, and that required us to have a computer turned on and connected at home, with our IRC program actively running. We’d go to sleep with our PC towers humming away in the far corners of our rooms, to the chagrin of our parents.
The bots would be written in a variety of programming and scripting languages, with mIRC’s proprietary scripting language being one of the most popular options. There was limited (read “no”) options to monetize the bots, and running a server for a bot service was prohibitively expensive.
Now, the emergence of the cloud and the opening of rudimentary platform APIs, provides us with some fairly powerful tools to augment valuable and not-so-valuable (read “vanity”) services. I would be confident in suggesting 99% of bots have no artificial intelligence or machine learning whatsoever. They don’t need to, just like they didn’t 20-years ago. Many are simply there as a supplement to notification services.
There is some confusion when people seemingly converse with bots to run tasks, or work through routines, but mostly these are programmed routines, as they were in the 1990s. They look for key words, or patterns, and they react with a programmed response. Bots are regularly demonstrated to me by startups with the term, “AI” thrown in, and rarely is that the case. AI, in these cases, has been mistakenly made synonymous with consciously designed sub-routines. Which, to be fare, is how most programs are put together. Bots are no different for the most part.
The concept of bots being clever, always useful, and advanced technology is missing the reality of what bots are; dumb. The magic is in the cloud and within the simplicity of setting up and using them. Unfortunately, that’s rarely down to the bot developers and typically down to the platform providers. Sure, the best bots encompass good service design, well thought-out UX / persona development, but they are less than 1% of the current marketplace, and are often the least useful for everyday users.
If you want to make your first bot, go find one of the many, “how to make a Slack / Facebook bot in 10-minutes” articles and have at it! Sure, you can add machine learning, artificial intelligence, or natural language processing and make your bot more sophisticated than average, but don’t assume you need to.