A Match Made in Heaven—Chatbots and Insurance Services

Chatbots and insurance services

The use of chatbots within the insurance industry goes back over ten years: chatbot Hanna began “working” for the Swedish Social Insurance Agency in 2003 by providing customer service, directing website visitors and giving them information on social insurance. Allianz Australia has their own agent named Allie, and Canadian firm RBC Insurance has Arbie, a blue-suited, hat-wearing character with simple chat capabilities that rely on frequently asked questions. Similarly, Nienke helps customers navigate through Dutch insurance firm Nationale-Nederlanden’s (NN)’s website.

These chatbots, however, are fairly basic in terms of functionality. They represent the first generation of what ex-Uber and ex-Google engineer Chris Messina calls “conversational commerce”. With advances in artificial intelligence and natural language processing, chatbots have come a long way since these the first commercial chatbots arrived on the scene. US auto insurance company Geico, which has a customer base of over 14 million, has a new intelligent agent named Kate who is available within their iOS app (and soon Android); customers can type or speak to initiate a conversation with her.

Continue reading

What Can We Expect From Chat Bots in 2017

future of chat bots

If you work in tech and haven’t yet heard about chat bots, you can consider yourself in the minority. These AI-powered, human-facing bots are taking on a growing number of roles, from answering questions on a smartphone to providing customer support for big business, and their rise has only just started.

By the close of last year, billions of messages were being exchanged between users and chat bots on platforms like Kik and Facebook — and that’s an impressive level of engagement considering it’s been less than 12 months since developers were given access to these tools.

It’s early days of course — bot makers are still experimenting with their code, while users are still getting used to the capabilities of these bots — but even at this nascent stage there are signs of growth. So how might that play out over 2017 and beyond?

Continue reading

Cheat Sheet: All Facebook Messenger Bots Interactions

Cheat Sheet: All Facebook Messenger Bots Interactions

When designing a product for the web or mobile world, we usually operate within certain types of interactions and user interface elements — text fields, forms, buttons, checkboxes, or switches, for example. In the chatbot world, the interface elements are different.

So, after you come up with lots of ideas about the magical things your bot might be able to do, it is time to get “down to earth” and balance your goals with the design constraints of the platform.

In this post, I want to summarize all conversational elements that are available to you if you want to design a  Facebook Messenger chatbot.

Continue reading

Developer’s tools for quick chatbot prototyping: Chatfuel + Gomix + QnAMaker

Developer’s tools for quick chatbot prototyping

One day, one of my colleagues asked me a question:

“What tools do you recommend for quickly building a chatbot?”

I knew that she was taking part in a weekly hackathon session with our client where they would quickly brainstorm different ideas, prototype them and make a presentation with a working demo. I also knew that she was a great software developer who could write code on anything from Objective-C to Javascript, but she needed to make the chatbot in a maximum of 1-3 days.

Here is the short version of my answer:

  1. Use Chatfuel for all simple user flows.
  2. Use Chatfuel + Gomix if you need more complex logic, persistency or access to external data.
  3. Use Chatfuel + Gomix + Wit.ai/Api.ai/QnAMaker if you need even more complex interactions with Natural Language Understanding (NLU) and work with a lot of free-form requests from users.

For the purpose of quick chatbot prototyping and even for a first public MVP it’s more than enough technology to build almost everything you need. It’s also not bad for a production release either. Chatfuel is able to serve chatbots with hundreds of thousands of messages per day.

Below is a detailed look at what is available for your disposal at each step.

Continue reading

How Exactly Can a Chatbot Increase Company Revenue

How a Chatbot Can Increase Company Revenue

If you want to build a business online, you’ll want to locate it where your customers are. You’ve heard about traditional mediums like blogs, forums, catalogs, social media platforms and maybe you even have an app for your company’s services. The important factors to consider are how much attention your customers pay to the sources and how much time they spend on each platform.

Continue reading

How We Improved Node.js Server Response Time by 100 Times

Imagine that you’re building an outstanding mobile application that needs server side support for certain features, like syncing user data or showing posts from other users. Your app is useful and full of animations. However, sometimes it looks laggy while it’s performing server requests; maybe the server is slow, or it often responds with errors. Of course, most users don’t understand the real reason behind lagging – next time when they see a “network error” message, they remove your app, give you a ★☆☆☆☆ rating and write negative review.

Special thanks to @tanzor for his hard work on investigating server performance.

How We Improved Node-js Server Performance

You can solve this kind of problem in two ways: either using optimistic models in your app and avoid showing a “network error” message, or improving your Node.js server performance. The following advice is based on our experience of improving backend servers for some of our mobile apps.

If you are an experienced backend developer, the following tips may be too obvious for you, but you may still find some inspiration!

Continue reading

Running Parse Server on Digital Ocean: Tips & Tools

Adventures With Parse Server Hosted On Digital Ocean

Why Digital Ocean?

Read Part I where we deployed Parse Server on Heroku and didn’t like the development flow at all; that’s why we selected DigitalOcean as the host service for our Parse servers.

These two services work with different layers of backend infrastructure; Heroku abstracts you away from the ‘bare metal’ giving you configured and ready-to-use dynos, which is convenient at first glance, but can become problematic when your requirements grow or change. On the other hand, DO provides you with a clean Unix box which can be configured in any way you like. The configuration process is harder, it takes more effort, but gives you more flexibility.

Special thanks to my colleagues Nikolay and Evgeniy for their hard work on Parse server migrations.

Continue reading

Parse Migration: How to Change Cloud Code to Be Compatible with Parse Server (Updated on 23.01.17)

Migration to Parse Server brought not only infrastructure related issues but also cloud code compatibility ones. We described challenges we faced during refactoring and prepared the detailed checklist for you.

Special thank you to our iOS Engineer Igor for his significant contributions to this post.

Bye-bye cloud Parse, hello self-hosted one!

When we started writing on Parse, we expected that at some point, we may change backend provider. We don’t perceive Parse as long-term solution, but rather as a convenient tool to get things done. We have not taken fully to the backends on Parse. Nevertheless, we now have a dozen applications that use Parse.

We build our iOS applications in such a way as that if you suddenly needed to change the backend environment, you wouldn’t significantly modify the app’s code. For this purpose, we hide a networking layer deep inside the app, covering PFObjects with our classes (on ObjC) or protocols (on Swift).

The business logic is mainly implemented in the server-side code (using the Cloud functions and Cloud jobs) rather than coded inside the app.

When Facebook announced Parse shutdown on Jan. 2017 our first intent was to migrate backend code to the Parse Server instead of writing it from scratch using another stack.

Continue reading

Why Retail Brands Should Start Making Chat Bots in 2017 + Infographics

Why Retail Brands Should Start Making Chatbots in 2017

Chat bots were one of the hot topics of 2016 and their use is only going to grow in 2017 – not just through big-name AI assistants like Alexa and Siri but also in cut-down, bespoke versions of these bots created by businesses and brands.

Facebook launched its chat bot platform back in April, inviting companies with a Facebook Page to add a bot to it — an automated, AI-powered service appearing through Messenger, using natural language processing to answer customer queries and provide help. Rather than placing orders through the website or over the phone, for example, users could get them through a branded chatbot instead.

Continue reading

Advanced Natural Language Processing Tools for Bot Makers – LUIS, Wit.ai, Api.ai and others (UPDATED)

UPDATE from Dec 22, 2016: Since the original publication of this article there have been some significant market updates which need to be considered. Google bought Api.ai and also released their own home-baked Cloud Natural Language API, Amazon introduced Amazon Lex – conversational API and Wit.ai is updating their Stories and making them even better.

Recent announcements of a bot framework for Skype from Microsoft and a Messaging Platform for Messenger from Facebook have transformed chat through a new platform. More and more developers are coming up with the idea to make their own bot for Slack, Telegram, Skype, Kik, Messenger and, probably, several other platforms that might pop up over the next couple of months.

NLP for bots

Thus, we have a rising interest in the under-explored potential of making smart bots with AI capabilities and conversational human-computer interaction as the main paradigm.

In order to build a good conversational interface we need to look beyond a simple search by a substring or regular expressions that we usually use while dealing with strings.

The task of understanding spoken language and free text conversation in plain English is not as straightforward as it might seem at first glance.

Below we look at a possible dialogue structure and demonstrate how to understand the concepts behind advanced natural language processing tools. We also focus on the platforms that we can use for our bots today, including the API – LUIS from Microsoft, Wit.ai from Facebook, Api.ai from Assistant team Google, Watson from IBM and Alexa Skill Set, and Lex from Amazon.

Ready to build a conversational bot for your business, but confused with the variety of platforms? Let’s talk!

A Dialogue Example

Let’s look at the ways we can ask a system to find ‘asian food near me.’ The variety of search phrases and utterances could look similar to this:

  • Asian food near me please
  • Food delivery place not far from here
  • Thai restaurants in my neighborhood
  • Indian restaurant nearby
  • Sushi express places please
  • Places with asian cuisine
  • Etc.

But if we are curious enough, we can also ask Google Keyword Planner for other related ideas and extend our list by about 800 phrases related to the search term “asian food near me”. We use Keyword Planner for such tasks here because it is a great source of aggregated searches that users regularly perform in Google.

Continue reading

Why Is Everyone Building Chatbots? And How Can They Help Me?

Why is everyone building chatbots? And how can they help me?

You don’t have to travel far in the tech world to find a platform embracing chatbots.

They were a big part of Facebook’s F8 developer conference in April of this year, Google revived the idea with its own Assistant tool when it launched the Pixel phones, and they’re also being rolled out across platforms like Skype and Slack.

Virtual workplace watercooler app Slack is a good barometer for the rise of the chatbot, with its parent company having invested $80 million in startups to help built software that integrates with Slack apps, particularly in the form of these automated bots that can respond to user commands.

Continue reading

What are the advantages of using Android on your device?

Every other year, the computer industry doubles the amount of transistors per silicon chip, thus creating more powerful devices that have a smaller footprint on a board. Current SoC components are powerful enough to have the power of a Cray-2 supercomputer or even an IBM Deep Blue in your pocket. Just look at the performance of Qualcomm’s latest chip, Snapdragon 820, that is powering the new generation of smartphones.

Advantages of using Android on your device

With more power on a device we can use more complex software stacks like Android, instead of sticking with Linux. Such an option is good to consider because of commoditized mobile hardware components, the developer ecosystem, the availability of modern development tools, and the ease of use of network and telephony stacks.

Below we’ll look at these arguments in greater detail.

Continue reading

Stanfy Recognized as TOP IoT Developer 2016, Clutch.co

Stanfy recognized as TOP IoT Developer 2016

We are honored to be selected as a Top IoT Developer of 2016 by Clutch.co!

Selection was based on over a dozen quantitative and qualitative factors including: Ability to deliver (references, client’s experience and market presence) and Focus on IoT Development. Even more, Stanfy cited in the Leader Matrix as a “Market Leader.”

Continue reading

Making Continuous Integration More Interesting and Live

Making Continuous Integration More Interesting and Live

We are developers, and as developers, we often need to do some Continuous Integrations. I would, rather, even say that we need to do various automation because CI is not the only thing that we do when we need to automate things.

The automation-continuous integration setup

The automation/continuous integration setup itself is not boring – it’s always side work, which needs to be done, but not as often as the general work we do. But the results that most CI systems are producing are usually unexciting.

The same text, the same few lines of texts, the same number of test runs, the same number of failed tests, maybe there are some other metrics on your project…

Continue reading

Custom Android Builds: Tools and Techniques for Manual and Automated Tests

Manual Testing Your New AOSP

All code changes provoke some kind of effects and we need to know how these changes impact on general  functionality. Android apps are working with a limited memory, CPU power and flashing new ROM associated with some changes inside AOSP, so in this case it is very important to debug, test and optimize your new ROM. Having a reasonable test coverage for your new AOSP helps you to enhance and maintain the whole system and to deliver a high-quality product.

Installing a new ROM is a huge gamble for your fleet of Android devices, because you don’t want to brick them or cause broken system features, so it’s highly recommended to run hardware and performance tests. These test runs will allow you to determine whether or not your tablet is stable enough for daily use.

This article is a part of a bigger guide about Embedded Android that intends to cover a broad set of topics about using Android as a platform for embedded devices.

Before we begin, we need to decide what elements we want to test. In our case, there are three things we’re going to be focusing on:

  • Software
  • Hardware
  • Android Compatibility

Our goal is to ship a high-quality product which is working smoothly, has a great battery life, no crashes, works with all Android apps, delivers  great performance, etc. So let’s define what we want to test.

Continue reading