A short story that can help you kick-start with chatbot development

Written by darekzabrzenski | Published 2018/06/27
Tech Story Tags: chatbots | chatbot-development | build-a-chatbot | start-building-a-chatbot | code-a-chatbot

TLDRvia the TL;DR App

I was working as a developer in LiveChat, a provider of customer service software when I realized that work in the customer service department can drive you nuts.

My friends from the support team were answering billions of repetitive or irrelevant questions. Many times they were quipping that their fingers were on fire because of writing to multiple clients simultaneously. Pure madness.

A problem needs a solution. Therefore, together with other developers, we thought it was high time our support department used chatbots.

Some companies had already offered customer service bots. Such chatbots could provide answers to popular questions or handle less complicated queries.

The only thing was to check which of the available tools would be the best for our company.

Testing

We started by devising an internal chat prototype that would let us test different chatbots. After work with the sketchboard and analyzing the market we noticed, that existing chatbots could be divided into two groups:

  1. The first bunch consisted of very good and complex tools. But, their use required coding skills.
  2. The second group included more user-friendly chatbots that could also be used by non-programmers. However, they didn’t offer so many possibilities as the previous group.

What’s more, these tools didn’t let us create complex scenarios or add extra functionalities via an API. We also picked up that these bots were losing context while talking with a user. And most importantly, they were usually limited to one platform like Facebook.

We needed a simple but a flexible solution. One that would let us build a chatbot on LiveChat. Unfortunately, we didn’t find any satisfying tool. The only way to get it was to build it on our own.

The idea

Interestingly, our analysis showed another thing — there was a void in the market. Companies with needs like ours didn’t have a wide range of user-friendly chatbots to choose from.

The findings gave us food for thought. We decided to build a chatbot platform for our use but also one that could help other companies to easily tailor a chatbot for their needs. Without keeping after their programmer colleagues, of course.

The channels

At first, we had to determine the channels covered by our chatbot.

In general, it’s easier to build a chatbot dedicated only to one platform like Facebook or Slack. However, relying on a single solution has big disadvantages.

  • Firstly, you can’t do whatever the hell you want. You must work in compliance with the platform’s policies and capabilities.
  • Secondly, when the platform changes its rules, releases its own chatbot extensions or simply stops existing, your whole project may be written off!

Therefore, building a multi-platform solution is a better option.

Sure, it’s time-consuming and more difficult from a technical point of view, the old saying goes “no pain, no gain.”

Multiplatform or not, you still have to decide where to start. We bet on Facebook Messenger. At that time the platform was friendly for the chatbot environment, so it was easier to get the ball rolling there.

Until after integrating our chatbot with Facebook Messenger, we got down to developing next integrations.

Methodology

Before we finally decided to offer our platform to clients, we had been developing it for about 6 months. For all that time we were asking ourselves many questions:

Do we need to hone the product before we launch it or it’s enough to polish just the basic features?

Should we offer a beta first?

Will users find it useful?

Honestly, we didn’t know. We also couldn’t afford to spend ages on pimping out the product just to find out that people didn’t want to buy it. At the end of the day, a business must put itself through college.

Because of this uncertainty, we decided to follow the agile path and released a basic, free beta version to check whether users like our idea.

Community

The growing popularity of online communities let us realize that the best way to get feedback would be to create an online community.

In fact, the user group came up to be much more useful than we expected. Not only did we learn that users like the idea of creating a multiplatform chatbot (this gave us confidence that people were going to buy it), but they also vastly contributed to the product development. At the moment, we don’t only ask people to comment on our ideas — we apply theirs.

For example, to our surprise, customers weren’t satisfied with immediate responses of our bot. They claimed that it didn’t look natural when a chatbot replied with the speed of light to every question.

We went over their feedback and realized that it was a fair point. That’s why we’ve developed and recently released a new “delay” feature.

Thanks to it, users can slow down the response time so that it looks more habitual for visitors.

I will be honest with you, we wouldn’t have come up with this idea if users hadn’t asked for it.

And that’s why the community is so important — it lets you make a better product and realize that not all your ideas are perfect.

Afterthoughts

We started creating our chatbot to solve the company problem, and we succeeded. The solution got its name, ChatBot. It serve clients, answers recurring questions and sometimes helps to fight the fire in our customer department.

However, at the very beginning, we didn’t expect that a small internal project would turn into a product that could be found useful by other firms.

We also had a different perspective on the chatbot development.

Lesson learned

  • There isn’t a ready recipe for success in business, especially if you build a product from scratch. Even if you plan this or that, many things will come out at the wash, and you will have to reorganize our work — that’s nothing bad, even more, it’s normal. So don’t give up and keep going!
  • Consider the agile methodology (it proved itself in our case). Making far-reaching plans is for dreamers, and I have nothing against dreaming! But I think it’s better to build your tower one block after another and observe whether it stands straight rather than to see that the whole construction is falling because of a silly mistake.
  • Two heads are better than none, and it’s important to have regular brainstorming in your team. But with hundreds of heads from the community, you can come up with much better ideas. Besides, if you create a product with people, you will build a group of potential clients.

And what did we like the most about the whole venture?

Ongoing development.

There isn’t anything like a finishing post in the chatbot development. You end one run just to start another. So if you decide to build your solution, you can be sure that work won’t end quickly.

But this bodes well for the future, doesn’t it?


Published by HackerNoon on 2018/06/27