Trolls, drugs, money… and lunch

Elaine Lee
Designing for Bots and Humans
3 min readDec 7, 2015


Of course people asked Large for illegal things. People said things that they probably tried on Siri in the middle of the night. It was natural to ask for pizza then, “ABORT” when it became too real. People also asked Large to perform tasks that perhaps a service like Meekan would be more suitable for. And, we recommended those services. We did successfully fulfill many legal requests like office cleanings, lunch deliveries, happy hours, and personal purchases. We were figuring out our limit at the same time people were testing it. Ultimately, we wanted to understand how people would use Large and what’s valuable to them.

Birth of Baby Bot

People didn’t know if Large was powered by humans or bots. We were purely human on day one. Matt and Austin were on the front line. As I mentioned in my previous post, we needed to scale them for consistency and speed, and to be more bot than human. We were also testing different ways to demonstrate how to use Large once it’s integrated into a Slack team.

So, we took a couple simple and recurring requests and automated them for the on-boarding experience. Large greeted users with a message that explained what it does and some ideas of what to ask for, like coffee beans. We created our baby bot in a couple days’ time. Dave and Charles wrote a script that hooked up to Slack. Matt whipped together an API in Google Sheets. Austin and our agents compiled the type of information needed to fulfill specific requests like lunch delivery and flights.

I took everything and created a coffee beans script. These were the things I ended up doing.

  • Gathered the best options for each filter. I was looking for a balance of quality and value.
  • Learned how the API worked. Then, accidentally learned what broke it. Added options into the API, which included the least amount of information that will guide a customer’s decision.
  • Wrote some more. For this example, I wanted to find that one detail we need to know to provide the best coffee bean choices. From the customer’s response of those choices, we’ll be able to refine future options. That one detail also needed to be easy for the user to provide immediately. The overall goal was, and still is, to have minimal back and forth. I came to the decision of asking for brewing method (rather than roast, region, notes, etc.). If someone wanted beans from Kenya with particular notes, they will most certainly voice that.
  • Learned how the YAML file is structured and what can break it… like the wrong type of spacing. Dave and Charles did the heavy lifting so I just had to follow their lead to write a script that offers coffee bean choices when someone asks for it. The script is what gives life to our baby bot.
  • Test and refine. We all do this; talk to ourselves. I acted as the customer making requests and monitored how our baby bot reacted. Then, cheer-laughed in excitement when it responded with what’s written in the script.
  • Wrote more scripts.

It was important for me, as a designer, to write a few scripts so I understood what’s possible in how we display text and options.

Example 1: I need coffee beans.

We chemex.

Example 2: I need a flight.

I ❤ NY

This was only the beginning to our understanding of what we can do as a team building a bot and what I want to do as a designer.

You can read about how I got here in my previous post.



Elaine Lee
Designing for Bots and Humans

Designing for AI at Twilio. Product designer with experience in psychology, advertising, marketplaces, edtech, and hacking at whatevs. 🦁