Below, I've posted a modified copy of an internal Forem document on Making Your Forem Work for You (/making-your-forem-work-for-you) where I've removed all internal Forem team mentions. This page is part of our open resources, meaning that you can copy the Markdown for this page from the open resources section of our admin docs repo and use it in your own Forem to educate your members about organizations. No need to give us attribution for this page, just copy it over to your Forem and paste it as a page. As a reminder, here's a tutorial that goes over how pages work and how you can go about creating one.
Now, let's take a look at the page...
So... you've joined your first Forem and poked around, but you're not sure what to do now. Forem's designed to make it easy for anyone to jump in with reading Forem posts, reacting, and writing comments. But if you've done all that and are now ready to customize your Forem to deliver super-relevant info directly to you, then this post is for you!
Given the limited amounts of time we all have, it's impossible to ever expect to read all the posts in a given Forem, so my goal here is to help you get to the things that interest and are most pertinent for you, faster.
Let's get started!
Tags
Following Tags
A huge part of how to organize your Forem reading is by following the tags you're interested in. The easiest way to do so is to go to your Forem's tags page -- we'll use Forem.dev as our example here. So in that case, you'd go here.
You can scroll through this page and click the Follow on any that are relevant, at which time, you'll see that tag with a Following button instead:
Now posts with those tags will show up for you more frequently, and are also easily accessible on the main Forem.dev page, on the left navigation, under My Tags.
Weighting Tags
Once you've added the tags that you're interested in, you can now weight them, to provide even more granular customization for topics you really want to see frequently versus ones that are second- or third-tier for you. You can get to this either by:
- From the tags page, click on Following tags in the upper-right corner, or
- From anywhere, click on your photo in the upper-right corner, and go to your Dashboard, then click on Following tags in the left navigation.
So once you're on this page, you can go through the tags you're following and assign each one a weight. A higher number means that posts with those tags will more frequently show up for you. A lower one will cause posts with those tags to show up less frequently. Then click "Update Weights" to save!
Now, one note: if there are tags that you genuinely never want to see posts on -- there's a slightly non-intuitive way in which you can use tag-weighting to help sort those posts out of your feed. In that case, you would follow that tag, and then give it a negative value/weight (as you can see below), to basically push it a lot further down than other tags, comparatively.
Users
So in addition to using tags to sort through posts and organize by relevance, another very useful tool is to organize posts by which Forem users wrote them. In your dashboard, right below Following tags, there's an option to see who you're following, via Following users.
For me, this took a bit of a refocus, because unlike on many social media platforms, this is not a place where you follow just friends or anyone whom you know. Instead, this is a place where you can use the post author as a sorting function to ensure you're seeing posts that are highly relevant to your interests. Adding someone to your followed users means that any posts they write, whether or not they use a tag you're following, is something that you'll see sooner.
Experience Level
Finally, the last thing that you can do to customize posts for yourself as a reader is to set your own custom experience level. If you click on your picture in the upper-right, then go to Settings, click on Customization in the left navigation, then scroll down to Content, you'll see a setting of 1-5.
All Forem posts can be designated by the post writer as being more general or more for Novices all the way up to the higher values, for posts that are meant for more specialized audiences or subject-matter Experts. In your own settings as a reader of any Forem, you can set your own experience level, so that you are shown more posts at your current level. Of course, just like with all these settings, you can always go in and shift things as you go!
What Is Affected
Okay, so now you have some gorgeously customized, curated settings. But where are you actually going to see any changes? Well, it depends!
If you interact with your Forem(s) the most by going directly to the site, the most obvious place is going to be the default feed it opens on: Relevant. If you've gone through and 1) followed tags, 2) weighted those tags, 3) followed users, and 4) set your experience level... first off:
Secondly, you should be seeing those changes reflected in the Relevant feed. This should be distinguished from Latest, which shows reverse chronological order, and Top, which shows more popular, interacted-with posts first.
Prefer to be alerted to your Forem's (or Forems') posts via email? Then you may want to consider using the periodic tag digest -- this is an email notification option that you can turn on from going to Settings and then Notifications. This will send you an email listing posts from tags that you follow.
A caveat: this digest only is sent when a Forem reaches a minimum of three posts per day.
Thank you, everyone, and have fun customizing!
Top comments (8)
As a caveat to my caveat (it's caveats all the way down!): this recent conversation seems to imply that there may be room in the future for Forems to adjust that three-post-a-day minimum to trigger digests. So while that's true right now, it may change!
Thanks for this! Super helpful.
One point of confusion for me, and I consider myself a more advanced and technical user, is around the tag weighting
The supporting text on the Following Tags page in the Dashboard says:
"Adjust tag weight to modify your home feed. Higher values mean more appearances for that tag. [ Default 1.0 ]"
Your example here, uses negative numbers. What's the actual format / parameter range here? I've been guessing that 0 to 1.0 is the range, so I've been using fractions of 1 to adjust my tags - or so I thought / assumed. Is is actually a 1.0 to 10.0 range, a -2 to 100.0 range... why have a floating point if the number is not fractional, and why go negative, etc. This could be more clearly explained (beyond this blog post!).
Thank you!
edit... I've now re-read this, and the supporting markdown file, and realise that you do very explicitly call out that a negative value would be to effectively hide a tag's content from the feed rather than just to give it less weight... so is the value from 0 to 1, or does it go higher? π€
I've spent some time in the tag logic, and let me clarify based on my understanding. There is one very significant number:
0
. If your tag's "calculated points" drop below 0, that tag won't be in the "My Tags" list on the left. (See PR #16213 for even more gruesome discussion).Further, if your tag's "calculated points" are less than 0 it's relevance factor in the feed will be lower. And as the calculated score gets larger it will have a higher relevance factor. That relevance factor will be between 0 (exclusive) and 1 (inclusive) and multipled against other factors. (See Articles::Feeds::WeightedQueryStra... for implementation details).
But what's the "calculated points?" This is where things get a bit fuzzy for me as I haven't dived to deep. But the "calculated points" are derived from the explicit points that you set and adjusted based on what you're writing and perhaps commenting on.
That is if you follow only two tags (let's say Ruby and Emacs each at 2) and write more posts and comment on posts that have Emacs but not Ruby, then your "calculated points" for Ruby will be lower than Emacs, and Emacs will be higher than 2 and Ruby would be lower than 2. I don't think that there will be too much drift such that you might cross the magic 0 threshold for calculated points.
Explicit points: what the user sets, itβs an unbounded number (except by the database)
Points: These flutter around the explicit points based on your interactions.
Relevance Factor: We map the explicit points to a number between 0 and 1 then multiple that factor times the other factors of articles. That's based on the current configuration of the feed.
Relevance Score: between 0 and 1. 0 wonβt show in your relevant feed, closer to 1 means higher in the list.
This is all really useful to my understanding.
I guess the next question is whether this could be simplified or made more clear for end users. I wonder whether some form of slider control would be more or less helpful here.
Yes, this entire section can, and will, be made more simpler/clear for end users. It is not currently a place we are focusing our product development efforts but it is high on my list for our backlog. (one of our designers is already giving it a lot of unloving side eye).
Yay! Thank you @abby for sharing this really helpful tutorial for Forem members π
This is a seriously awesome and helpful post! Thanks so much for sharing this resource.