Messaging, bots, and Slack

At the moment, one of the sexiest themes in design is messaging-driven user experiences — exemplified by the array of bots and personal assistants now arriving in the market. Look no further than Clara for scheduling, Operator for errands, Facebook’s M for everything?, and Howdy for meetings on Slack.

Most bots/assistants function primarily through ‘conversation’ — a back and forth between you (the user) and the bot/assistant (be it software or human). Messaging is a really exciting user experience pattern, but solely exchanging words is not always the most convenient or efficient way of accomplishing something.

Ok, so then what?

At a high level, I think there is a lot of opportunity to combine messaging/command line like inputs, as a trigger, with more ‘traditional’ interfaces for getting tasks done.

Note: I’m going to try and keep the focus of the rest of this post on business/work related use cases because that is my wheelhouse right now.

We can make a lot of shitty work-related tasks less painful by simply making them easier to accomplish — whether that’s requesting PTO or getting the latest DAU/MAU numbers for your product.

The ‘magic’ emerges if the user never has to leave whatever app they are in to do these things.

Platform for ___________

In the business world Slack is hands down the most exciting platform emerging for messaging, productivity, collaboration, etc.

As time progresses, my hypothesis is that Slack will/should invest in building out their platform to enable partners and developers to deliver experiences to users natively within the Slack environment— Partners gain a deeper channel to monetize and engage current and potential customers, Slack users (ideally) enjoy a more pleasant and productive workflow.


Disclaimer: I don’t work at Slack, I don’t have their platform research/strategy, and I don’t have the context or data that come from working on this kind of challenge from the inside. Building a platform for developers that allows them to create ‘native’ slack apps/experiences is no simple feat — executing will be extremely resource intensive from engineering, marketing, design, customer experience, etc standpoint. The pragmatic path forward is to find a way to build towards this with clear customer/partner wins along the way.

Ok, thats enough of that for now, lets get back to imagining what could be!


This all started with messaging..

As a quick refresher here is where we stand:

  • Messaging (read: Conversation) as a UX pattern is exciting, but not always the most efficient or effective way to achieve a desired outcome.
  • A combination of messaging, as a trigger, and a secondary user interface could be really powerful, especially for work related tasks
  • Slack is uniquely positioned to be the platform where developers and software providers can deliver more pleasant experiences to their customers through deeper integration and native ‘apps’.

Visualize this with me a bit

I’ve been thinking a lot lately about how to make certain mundane work-related tasks suck less or not at all — Things like: requesting PTO, expense reporting, logging time and attendance, and booking travel.

As an example, I’ve come up with an incomplete sample of how requesting PTO might look in our brave new world.

First, we start with a Slack command from anywhere that opens the TobyBot

Upon greeting you, Toby might reveal this app card from Zenefits:

After you complete the form, your manager would probably then get something like this:

Rounding out the experience, you’d expect Toby to tell you when your request is approved or denied:

The best part? No emails, and no logging in to Zenefits.


Many more opportunities like the example above

  • Enter/reconcile expenses with Abacus via Slackbot that proactively works with you to complete expense reports as they happen (no additional app or login required)
  • Schedule business travel for you and co-workers with Kayak right from a group DM. Each traveler could then be prompted with individualized forms to edit traveler information or simply confirm the reservation as is often required.
  • Add call notes or update a lead’s contact information in your CRM by typing in the command ‘/crm lead Avi Eisenberger’ and getting an embedded edit form with inputs appropriate to either web or mobile (whichever you are on).
  • Get the latest product metrics from Mixpanel in a nicely formatted and interactive card by typing in the command ‘/mixpanel summary [product name]’
  • Easily pull up a comparison of two companies with Mattermark (shameless plug) by typing in the command ‘/mattermark compare [company 1] [company 2]’
  • ___fill in the blank____

What would you build?