I once heard that in ancient Rome people were able to wayfind by sampling the water. Apparently each well tasted slightly differently and after awhile you knew what part of town you were in by how metallic the water tasted.
I wanted to do a modern version of this, but with the "popular" beer of a neighborhood. Only...I didn't know how to find out what the popular beer of a neighborhood is...so I decided to make my own data collection device.
I don't know about you, but when I'm drinking a beer, the last thing I want is a computer in the way, sampling my beer preferences. As minutes turned into hours, I felt a nag pulling me toward a minimal interface that would help users as a bar-buddy might.
1-657-BEER-BOT was born to accompany users on their crawls throughout the city. Users learn about the beers they're enjoying with a minimal interface that fades in and out of focus, much like a conversation with many people ... at a bar.
What it does
1-657-BEER-BOT is a SMS + Camera + Web experience.
Upload a photo of your beer bottle and not only will you get back a description of the beer, including food pairings, and alcohol content, but he'll also record the drink in a log.
Send a and you'll get back the beers that are most popular in this area. (If you squint, you can see a bit of the initial idea here.)
Don't know a beer on draft? Simply type in the name and you'll get expert guidance on its strength and flavor.
Since 1-657-BEER-BOT doesn't drink, he's watching how much you've had. Send a and he'll estimate your blood alcohol level.
But wait, there's more!
Just like a drinking buddy, 1-657-BEER-BOT will sometimes spout off trivia to keep you entertained.
How I built it
Built on top of Twilio, Amazon Web Services--especially the Api Gateway and Lambda functions, and a host of APIs, the bot is an interconnected mesh of software services.
Or did you mean: I didn't sleep...which is how I built it.
Challenges I ran into
Challenges... lots... at first designing a chatbot seemed like it would be simple: no UI, no problem! If only that were true. I really liked the idea of pointing a camera at a beer and getting back information about what you were looking at. Triangulating this data was by far the most challenging aspect.
Eventually I discovered that some APIs were good at some things, others at others, and ended up letting them "win" at the parts they were good at. For instance, Google Vision API is really good at object labeling...but pretty terrible at usable text querying and product naming.
Accomplishments that I'm proud of
Well, you know, pulling it all together. It seems to work!
What I learned
I think my next chatbot I'll approach with a UX flow in mind first. Even though there are no "pixels", I didn't give that part of the project enough thought. I looked at Eliza and some of the other chatbots, but they all seem to have a particular way of seeing the world that seemed more complicated than I needed it to bet.
What's next for 1-657-BEER-BOT
I'd love to try it out. Get some friends to use it. Figure out the data on what people drink in what neighborhoods and make a map of that.