IOS Notifications

The goal of the iOS team is to improve the repeat usage and retention of the app. We want to give users a reminder and a reason to use the app, learn something new, and engage with free knowledge every day.

Notifications are a *dangerous* feature. They can be incredibly helpful to users but also terribly annoying. We want to be thoughtful about how we implement mobile notifications for readers and editors.

Initial product questions

 * Can we do reader focused notifications, or does notifications imply editing related notifications?
 * What type of users *want* notifications and what workflows or stories will they use notifications for?
 * If we do editing notifications, does that imply editing capabilities need to be beefed up (diffs, for example)?
 * How often do I want to be notified? How much configuration am I willing to do?
 * Do users "subscribe" to individual notifications? Or "watch" pages or topics?
 * Are notifications global, personal or both?
 * Do we notify on content changes ("new content on barack obama") or popularity changes ("Hot article of the day: Barack Obama") or curation ("Featured article: Barack Obama")?
 * Location based notifications ("You're walking past Nelson's Column")?
 * For content with no inherent "time" what time do we send notifications?
 * Can we be smart about tying to feed. Does subscribing to notifications for POTD, for example, mean POTD should be prioritized (or deprioritized) in my feed?
 * Do we want to have global control over message push and push rates (ie. do we want to be able to push custom messages to all users? do we want to be able to turn off messages or override rate limits?
 * How can we a/b test notifications or answer these questions based on our retention goals?

Initial technical questions

 * Do we rely on Echo to be our backend? What bandwidth is available from the Editing team to support this?
 * If we don't use echo should we do local notifications only? What product limitations does that imply.
 * Do we need centralized control of pushes and rate limiters?
 * If we need to store user configurations on the backend does that mean we need people to log in? Does that relate to synchronized collections or other user data that's not anon, but also not "editing" data?
 * What tools/frameworks will we need to test impact of notifications? Can we segment and analyze users without significant overhead for each test?