Behavioral product strategist and gamification designer. If something seems incomplete, it probably is. These are ideas in motion, so I'm iterating on every page as I go.

Home

Help the user to recognize situations for functionality usage

User goals change over time as User skill level increases over time so being aware of the features generally means you’ll be aware of when you should learn it to accomplish a new goal.

Due to principles of Difficulty Matching, we know that if we ask a user to learn something too advanced early in, they will likely get frustrated and give up. This is a common problem with Notion and Roam users: they see people using the applications in advanced ways near the beginning of their experience and they think that they have to implement everything right from the start.

These users would have far better outcomes if they simply operated at or slightly above their skill level to accomplish their current goals, but were aware of what could help them accomplish their future goals so they know what they can learn when those goals arise.

Let's take the example of learning queries in Roam. Nobody needs to learn queries in their first week of usage. The most successful app adoptions come from a project, so we don't want users to try to learn queries as some abstract feature. Ideally, at the point when the user starts a project that requires queries, they would recognize that queries would be useful and learn them at that point.