Bot building disobedience


It’s a well-worn cliché, but building a business is more of a wild rollercoaster than a smooth boat ride. This is particularly true for the uncharted waters of chatbot building.

GaryJeff and I spent the past 6 months building Yala, our funky social media scheduling robot-assistant. In recent months Yala has been steadily gaining momentum, but we’ve made our fair share of wrong turns along the way. I’d like to share with you some of what we’ve learned.

Episode 1: Bots don’t have to be conversational

We started building Yala in the good ol’ days, way before Slack released interactive messages. This means Yala existed for several months (March-June) without her beloved buttons, and we had to use text.

We flirted with natural language processing and with textual commands before it hit us:

No one wants to chat with a robot.

People don’t care what the bot has to say — they just want to complete transactions as quickly as possible.

If your bot is in the business of providing information, perhaps textual commands can lend themselves to rapid transactions. If not, buttons are almost certainly the way to go.

In that case, why build a bot at all?

Great question! The appeal of chatbots lies in their proximity. To borrow a euphemism I heard from the brilliant Clark Valberg — bots are like the popcorn vendor that comes into the theater to sell her wares, instead of you having to go out to the lobby and serve yourself. Their existence inside a natural environment of work is in itself the strong value prop of building a bot over a classic web- or mobile-app.


By Jack Ziegler for The New Yorker

Episode 2: Getting users

Roughly two months ago we were ready for our beta, and I was faced with a non-trivial task: finding some users! Luckily, there’s a fantastic Facebook group called “Bots”, where people were very supporting and enthusiastic about what we were building. I posted our beta on there, and 30 or 40 people signed up.

Our beta testers were super happy — they were lovin’ Yala! How awesome is that?

Our smiles faded when we saw retention slowly declining ‘till it hit 0. At first, we were worried — this isn’t the validation we’re looking for! Then it dawned on us — bot builders are a fantastic crowd, but they aren’t our target audience. They’re interested in playing around with cool bots, but don’t necessarily need a powerful social media scheduling tool.

So we wrapped up our beta and did what we should’ve done in the first place — we launched Yala on TechCrunch. The results were very different than what we’ve seen beforehand.


Illustration by Keith Rodri via Dribbble

Episode 3: A bot is still software.

When we set out to build Yala, we wanted to craft a smoother social media scheduling experience, and we wanted it to be a bot.

For some reason, it just didn’t click. People would ask: whyHow is it different from Buffer or Hootsuite?

It took us a couple of days to come up with the solution: Yala is going to cleverly optimize your social media content to increase engagement, starting with timing optimization. People loved it. This felt like a solution to a problem they were having, instead of the same product in a different package.

The reason our idea didn’t catch on at first is this: a bot is a facade for software. A fantastic designer can design a stunning app, but the design is worthless without excellent software behind the scenes.

When our product wasn’t fully fleshed out, people could sense something was missing. We could too, even though intellectually it felt like we were already bringing enough value to the table. “Bot” is such a buzzword!

Episode 4: Bots and artificial intelligence.

One of the most popular top-level domains for bots is .ai. It’s nice, it’s short and it’s catchy, but it represents a distortion in the way we perceive bots.

“Bot”, in this context, is a description of an interface: a way to interact with software in a chat-wrapper.

It doesn’t neccessarily describe an artificial intelligence. We’ve seen numerous examples of great bots without any “machine learning” or “neural networks” behind the scenes, and that makes perfect sense: a bot is just a piece of software, and the average piece of software doesn’t need AI to be great. It just needs to work.

We’ve realized this when building Yala’s timing mechanism. We didn’t have a gigantic data set to train our AI on, but we figured a proper algorithm would do the trick. And it did.

The idea of building a multi-purpose, self-learning chatbot might be appealing, but it doesn’t always go hand-in-hand with keep-it-simple startup mentality.


If you’re reading this, you’re probably building a chatbot. You’re a pathfinder, experimenting with a brand new software platform. The beautiful thing about sailing these uncharted waters is that you never have to settle for conventional wisdom: instead, be quirky. Ignore everything everyone has to say. Ignore everything I have to say. No one knows yet how to build a proper chatbot, so the first one may very well be yours.