How to notify a human...

Last Update: 13.06.2018. By Jens in Developers Life | Learning | Newsletter

Sometimes we need to trigger a human to continue a task; manual reviews, todos or whatever. In my particular case, an action in the system should trigger a human to review an entry and manually approve it. For that, we got multiple options and I thought I include you in the reasoning process.

Giving some more context. The user can create an entry, in my case a job post, which is not auto-approved. Someone, like me, must check the post and manually approve it. It is designed by intention. However, right now the reviewer aka me must check the admin interface regularly to check for posts to process. The problems; a) too much manual checking and b) if I forget it for a week, there are delays. So, the goal is to inform the reviewer he has work to do on a channel he checks daily.

The obvious option is to use email. Just send an email. Email works great for that as long as the user checks emails and is not already drowned in plenty of them. Another mail to a full inbox is senseless. Same as the email notifications that your inbox is getting full; and sending those reminders daily…

The downside is that if it affects more than one reviewer, email might not be the preferred channel anymore. Sure, one can enforce it with company policies, but only to a certain degree. Maybe you want to switch channels at some point later; so now slack is the new email. Or whatever.

Sure, we could implement each option one by one. Building a nice internal lib or just hack it together, it’s up to you. Or we could use a platform for this like Zapier or IFTTT. One trigger point and what it does is configurable. Depending on your business and the kind of data it might work. In my case, it does not really matter. Yet, I decided to implement the email and a Zapier solution just for fun and for you, of course, as I will write about it.

However, the interesting part of this problem is, how one can solve it in a corporate world. In my experience, all parties move quickly to email and just live with plenty of more emails. Or leave the notifications out and tell the responsible guys to at least check the admin interface twice a day. If the company is modern, it might default to slack or Hipchat. Whatever the medium is, keep in mind, a) people are drowning in messages and b) channels can change, so either make it flexible to switch channel or selecting a preferred one or go with the most common one, like email.