Right. There are proxies for deep / interesting already, the primary ones being “Likes”, “Views” and “Replies”. Discourse uses these proxies to highlight ‘interesting’ posts via specific topic lists - “Top” (core) and “Hot” (plugin) - and via the design of the topic list itself (separate column for likes; heat colors);
One way of thinking about this is: What other proxies for deep / interesting are there? Here are some possible candidates:
- Reading time (this is particularly underutilized I think)
- Writing time (interesting posts normally take a little longer to write)
- Number of links
- Frequency of posts quoting other posts
This data already exists in Discourse, it’s a matter of using it in an interesting way.
It is perhaps worth mentioning in this context the potential for machine learning to assist as well; if only to plug my existing (unfinished) machine learning plugin, which I would be happy to work with somebody on.
Another way of thinking about this, and this gets back to the OP, is “How do I handle different types of users, with different goals, on the same platform?”.
Say, for the sake of argument, we divide the ‘user experience’ management of Discourse into:
- Defaults: Site settings. In particular
top_menu
andcategory page style
. - Trust: The trust system.
- Taxonomy: Categorization / tagging / grouping.
- Visibility: This discovery list design and user control over notifications, emails and theme.
- Curation: mods & staff
In addition to improving each system independently, some interesting avenues arise when you think about the connections between them, e.g.
- Taxonomy + Trust + Visibility: e.g. A topic list that ranked based taxonomic variables of the topic and trust variables of the posters, in addition to likes. This could split the difference between hiding the ‘sandbox’ / support category and letting it pollute your homepage.
- Trust + Defaults + Visibility: e.g. Give trusted users greater control over the Discovery UI to set their personal preferences; or
- Defaults + Visibility: Show different default topic lists to different users based on things like how new they are or how long since their last visit. It seems that this approach is already used (I can’t find it in the current codebase though).