I built my first bot

As part of the Product Management course that I’ve been working on (which is taking much longer than expected to complete), I’ve been toying with an idea of an app for learning. This app was meant to address the issue of employees in organisations not utilising the learning resources provided by the company.

My hypothesis was simple. Most times, employees forget about those resources. Now, this was not meant to be another app for employees to access a Learning Library. I was toying with the idea of using a familiar interface, a chat interface in particular, to reduce resistance to using the app.

With an integration to the employee’s calendar, the app would be able to identify idle times in an employee’s calendar (i.e. travelling between meetings) and prompt the user with a personal message like “Let’s take a quick lesson about X while you’re on your way to the next meeting”, or something along those lines. The idea was that if the prompts came at the right time, it would encourage employees to open up the app, answer a question like “How much time do you have now?” and the app would then recommend a quick bite sized learning activity. It could be a short 5 minute video, or it could be text based snippets of summarised information. This way, learning could happen more often.

In order to hack up something quickly to see if it would work, I tried to build out a simple Bot of my own. If you’re on Telegram, you can check it out:


Using a bot to achieve the above is probably not the best way. When it comes to conversation, trying to predict how people respond, and giving contextually accurate answers, was a pain in the ass! The moment I started responding using natural language, it wasn’t able to recognise the query:

IMG_7102 IMG_7103

This got frustrating really quickly. I believe though that this was a personal limitation and not a limitation of what a bot can possibly do. I didn’t have the right technical skills to set up something more advanced, but there are services out there which allow your bot to respond more accurately to natural language. Here’s one such example: https://wit.ai/

I had to use a combination of services like Smooch (customer chat app), Github, and Heroku to push out a working bot. If you’re interested in toying with a bot, check the instructions out here: https://github.com/joshieisking/EstherBot

Credit goes to @esthercrawford for the instructions.