Back to Parent

Outcome


Intention

People keep to a diet for different reasons, such as losing weight, gaining weight or just keeping a healthy lifestyle. Furthermore, some people are trying to be more accurate in controlling how much food they have each day, i.e. recording and controlling the calories of their food. However, even with advanced calorie calculators, it's hard for people to stick to the plan and keep the habit of controlling their diet.

The intention of the bot is to basically serve as a kind of personal assistant to help users stick to the plan, nudge them when necessary and most fundamentally provide a friendly interface for people to track their calories.

Context

There is a similar web-based product called myfitnesspal. It asks for users' body stats and fitness goals when they signed up. But due to all the clicks and typing needed to track fitness plans, it's not that easy to use, as compared to a zero UI SMS bot or Alexa skill. That's how my idea came into being, why not enable people to just say their meals to a bot or talk to a bot to record their meals? Besides the convenience of doing that, it would also feel like they are talking to an assistant, which will more likely help them persist through their plans.

Process

Tutorial feature

The diet bot is not supposed to be a one-time conversation bot, i.e. it has some sort of memory like what the user has eaten in the day. So after testing the initial version with a friend, where the bot would only tell users how to use it in a simple paragraph, I found that they still don't have a clear sense of what it looks like to interact with and make use of the full features of the bot. So I integrated a tutorial feature into SMS to lead first-time users through a typical day of using the bot.

Alexa and SMS combined

I've been considering if I want to build the product in Alexa skills or SMS bot, until later I realized why not have both and build the most suitable feature into each one. Therefore, I built the tutorial feature in SMS where users would be able to track the messages more easily. Whereas for more frequent users, justing talking with Alexa to do some routine work would be preferable to typing it in the chat. So I built the "log meal" feature in both SMS and Alexa and have them working on the same file. 

Workflow1
Show Advanced Options

Reminder feature

Based on the feedback gathered during the showcase session, I added the reminder feature below to send reminder for users to log their meals. This gives the product a more sense of personal assistant.

Workflow2
Show Advanced Options

Product

Sample interactions can be found in the video below.

Show Advanced Options

Reminder Feature

Below is the screenshot for daily reminders. Note that I didn't realize it was UTC time so the time is a bit weird. The intention is to send reminders at the time of 9AM, 1PM, and 9PM.

Reminder feature
Show Advanced Options

API call

Below you can find the code to call Nutritionix API and process the response. Basically what the API does is if I send it a sentence saying "I had two eggs and some salad for breakfast", it will return all food detected in that sentence and the corresponding nutrition value. What I did was to extract the calories, protein and fat value of the said food, then log it and return that message to the user.

Show Advanced Options

Customized feedback

Below is the method to get daily summary and provide customized feedback to users. Based on the difference between total calories he has eaten and the daily limit, different reminders/summaries will be sent.

Show Advanced Options

Reflection

I would say what I learned most from the project is that you need to have a well iterated and thought-through design of your product before you start to implement it. Constantly changing the design while you have implemented some of them is time-consuming and contrary to what we hope to achieve, i.e. "rapid" prototyping. 

Another point is that API is really powerful. I can imagine how wielding the power could scaffold the implementation of products and the possibilities it creates. I'll keep an eye on it when making other products later and I'm sure I can find some surprises.

Drop files here or click to select

You can upload files of up to 20MB using this form.