Slack’s project management system should look like this

5 min read Original article ↗

Jevin Maltais

Slack is awesome but they have a major problem: They aren’t focused on productivity. Instead of asking: “how do we integrate more Slackbots into the product?” they need to be thinking “What is true productivity and how do we build for that?”. There are lots of areas that Slack could move into. One that I think is crucial to be solved in the near term is organizing actionable conversation into tasks to be completed.

In the context of work, there are two types of conversations in Slack: transient and task based. Slack only manages one of these well.

Types of Conversation

Transient conversation are things like quick updates, questions or conversations about things that aren’t really related to a concrete task:

  • What should we do for lunch today?
  • Does anyone have an update with the product strategy?
  • Let’s have a quick chat about what should be done about our new landing page.
  • Just got a notification from Newrelic about our database performance being terrible, I’m on it guys.

Task based conversation surrounds an actionable thing that should be completed. Sometimes the task evolves in a few ways: it’s not important anymore, someone else will be responsible or the task purpose might change entirely. If we broke it down, there are usually a few components:

  1. The thing to be completed
  2. A person or team responsible
  3. (optional) a deadline
  4. (optional) conversational context that evolves with the task
  5. (optional) a higher level project
  6. (optional) dependancies and prioritization

Samples of conversations would be:

  • Assignment conversation: We should do something about that landing page. @John, can you come up with a plan? (Implied task and assignment: Come up with a plan to fix landing page issue XYZ. Assignment: John)
  • Update Request: @.Lizzy what’s update for client ABC? Have they paid us yet? (Implied existing task: Receive payment from ABC. Assignment: Lizzy)
  • Update request: @.Barry we talked about having the cleaner come in today. It’s 5pm now, did it happen? (Implied existing task: Organize cleaner. Assignment Barry)
  • Priority challenge conversation: @.CEO Is it still really important for us to change the header? The task has been there for months but we’re redoing the layout anyhow. (Implied existing task: Update header. Assignment: Me)
  • Clarity conversation: @.Edward What’s the story with the marketing material task? I see you assigned it to me but what’s the context? (Implied existing task: Create marketing material. Assignment: Me)

The above are all centred around tasks.

Why it’s bad to not all be in one place

Transient conversations are ideally suited for Slack where messages don’t need to be followed up with but nice to have a history. However, lots of what we do is task based. Every semi-organized organization is managing these tasks in an external tool project management tool (PM tool) like Asana, Basecamp or Pivotal Tracker. This creates unlinked data and does not create a full picture of the task:

  • Pre-task creation conversation i.e “I wonder if we should do something about XYZ, what does everyone think?” (Slack)
  • Decision taken and rough planned outlined (Slack)
  • Tasks created, assigned and organized (PM tool)
  • Conversation about those tasks (Slack and maybe the PM tool’s commenting tool)
  • Auditing of those task changes to find out the status and activity. (PM tool plus looking at the history of comments in the PM tool. Since comments in Slack aren’t linked, they are lost in the auditing)
  • Notifications of due tasks and updates to the tasks (PM tool)

Furthermore, we now need to keep the PM tool open for notifications.

Why I think Slack should build in a product management tool

Slack is in a unique position in that:

  • They already know all the users in the organization (for assignment of tasks and knowing who to notify)
  • They have a lightweight notification channel that everyone is already using, loving and comfortable with.
  • Most of the task based conversation is already happening in the Slack channels.
  • Most organizations that are using Slack almost certainly have a project management tool already, so there is not a ton of education or convincing to be done that they need one.

How they could do it

Here’s my first pass at a UX for making a native project management tool for Slack:

Creating a task

A few ways:

  • Press the New Task Button
  • Mouse over the conversation to use it as part of the task story

Press enter or click to view image in full size

To add more context, just drag more conversations into the task creator window

Press enter or click to view image in full size

There is a lot more to the UX than this (see below). If there is enough interest (comment below!), I’ll sketch out more ideas about how the following things could work.

Prioritizing the tasks

  • Open the channel with the project list (using the same right pane). All the tasks can be dragged up and down to indicate order.

Talking about tasks

  • Can comment on a task from the right pane.
  • If someone talks about a task in the channel and it’s not associated, simply drag and drop that conversation to the existing task in the right pane.

Notifications

  • Comments/Notifications in channel just like comments on documents or images.

Final Notes

If you like how I think, I’m looking for my next Product Management gig. Hit me up here if interested in a chat: jevin@quickjack.ca or check out my LinkedIn profile: https://linkedin.com/in/jevinmaltais