What do you get when you mix Slackbot and a sleep expert?

It’s Jess and Helena here! Hot on the heels of our first team-wide hackathon, we’re here to share with you one of the three “hacks” we built.

Since moving over to Slack, the whole team has been having fun with Slackbot. We’re no strangers to virtual characters, spending most of our days working on The Prof — the central part of our sleep improvement product. So we were inspired to bring The Prof to Slack, Slackbot-style.

Our goal? To chat with The Prof via Slack and have The Prof respond with relevant messages.

But wait, who is The Prof?

The Prof is your guide through the Sleepio sleep improvement program.

Popular with our users thanks to his Scottish accent, The Prof is your virtual guide through the Sleepio program. He teaches you sleep-improving techniques in weekly video sessions, sends you reminders via text or email and he’s available for in-the-moment help whenever you need it.

Our hack brings The Prof to a new channel: Slack. We’re still a long way from being able to reproduce the full richness of the real Prof on Slack, but we feel this is a great start.

Introducing… The Profbot

Need a pick-me-up? Let Profbot talk you through a happiness exercise…

The Profbot that we demoed to the rest of the Big Health team can tell you a joke, walk you through a happiness exercise, play a quiz with you and if you tell him you’re having trouble sleeping, he’ll recommend a technique to try tonight.

How we built Profbot

Our hack team consisted of 2 engineers, 1 customer services lead and 1 product manager. Here’s how we built Profbot…

  • To kick off, the team divided up — Jess & I started defining ‘what’ we wanted to build, while Brandon & Greg got to work on ‘how’ we were going to build it.
  • To define the ‘what’, we listed out everything we wanted Profbot to do — this included everything from using your Slack username to helping you get to sleep tonight.
  • Meanwhile, Brandon researched the Slack API to understand what we could build in the time that we had. And Greg started work on a finite state machine — Profbot’s brain.
  • As a team, we narrowed down the scope of the ‘what’ — focusing on the elements we thought best demonstrated Profbot’s real world application.
  • We wanted a conversation with Profbot to be interesting, with many different paths you could take. To achieve this, we developed rich and intricate conversation-logic. We did this using two tools:

A flowchart

This flowchart represents how the conversation logic works. You can see we have three main points branching out from the initial “Hello”: a positive, a negative and an ‘okay’ state of feeling. We then have many mini-branches within each state which are informed by your each subsequent response.

An Excel-based conversation logic builder

We used the conversation logic builder to populate the flowchart, i.e. to write the conversation paths we’d specced earlier.

The best bit? We can change Profbot’s responses or add new conversation paths by just updating the Excel-based logic builder. The changes are synced in Dropbox and The Prof will automatically update himself with the new knowledge.

Can you believe we weren’t the winning hackathon team? Too ahead of our time…

How we’ll continue to use Profbot

The end of our hackathon is not the end of Profbot. We plan to use him in at least these three ways to improve both our product and our ways of working:

  • Improve the QA process. If we can display logic in a flowchart, this cuts down required QA time and effort. We’ll no longer need to run laboriously through video sessions, but would be able to run through a flowchart instead. This could also help us spot things that are only subtly wrong, which is usually easy to miss.
  • Add complexity to our logic. With the flowchart, we can add to the intricacy of our logic. Even better, anyone in the company can add to the logic regardless of their technical know-how.
  • Add variety to remote user testing. Profbot enables us to test new onboarding questions and conversation topics in a much more reliable and malleable way — getting realtime feedback in a Slack public channel.

Want to know what else we built? Check out our follow-up post with the second prototype here.

We’re hiring! Want to help us continue changing people’s lives? Then please check out our open roles.