Star High Quality Questions

I think that it would be really handy to be able to ‘star’ or otherwise mark particularly high quality questions that foster a lot of discussion that helps build understanding on a topic.

I know that we can ‘heart’ any comment, to include the initial comment on a thread, but that does not seem to be externally viewable or sortable from a forum/subforum view.

I think that some sort of feature like this is in line with FCC’s philosophy of positivity and fostering high quality content.

This is an example of a thread I would like to be able to ‘star’ as particularly high quality:

Note: I wrote this while having a coffee break, and it’s a topic I have lots of opinions about. I don’t represent freeCodeCamp officially - this is just me rambling. It’s an interesting topic, and I’m particularly interested in anything the community can suggest that adds value to the forum.


It’s an interesting idea, both as a philosophical consideration and a technical one.

The technical aspect is this: the forum is built with Discourse, so features are primarily developed by them. They do have the ability to create plugins - maybe you could see if you can find an existing plugin that does what you are thinking? The other technical issue is then making higher rated topics rise to the top - I’ve no idea how the search results algorithm currently works…

Philosophically…It’s not something I’d personally want to see (it’s not up to me, though).

As I see it, rating ‘high quality’ questions / topics is pretty subjective. Is a high quality question one that has been well framed? One that hasn’t been asked before? One that is particularly interesting?

High quality suggests the existence of low quality. So what constitutes a low quality question? Something others deem to easy to have been asked? Something that was written in broken English? Something poorly formatted?

If we start down the path of rating questions, my fear is that we’d become more like StackOverflow. Don’t get me wrong, StackOverflow is an incredible resource for beginner and seasoned developers alike. But asking a question as a beginner is very problematic. There is a base assumption that all questions pass a rigorous quality test before they will be deemed worthy of an answer. That works fine for SO, but for our community, it presents one more barrier for people learning to code. Coding is hard enough, asking for help shouldn’t be one of the hard parts.

I know that’s not what you’re advocating in your post - it’s just a possible philosophical fork in the road our community could head down if not careful.

The other issue I have with it is that it introduces a more obvious sense of gamification - which again can be problematic. Discourse has its badges, topics and replies have likes, and there is a leaderboard (I dislike the leaderboard!), but apart from that there is little publicly visible to suggest that some community members are more highly valued or qualified than others. It’s a small issue, but I feel like any time you put a number next to something, human nature kicks in and people try to make that number go higher.

The last thing I’d add about alterations to the current search results algorithm is that some of the ‘higher quality’ posts we currently have on the forum are from users that no longer visit.

As far as forums go, we have a reasonably high churn rate. I attribute this to how successful freeCodeCamp is in achieving its goals. We want people to go out and get that dev job they’ve been dreaming about. The trouble is, once they get it, they are suddenly way too busy to stay active on the forum! I say that as someone that was at one time the most active member, and then took a year long hiatus when I landed a job!

If historical posts keep resurfacing because they are good, it can be disappointing for people trying to interact with the OP, only to find they are no longer here.

The way things currently work, unless a spammer necro-posts, most of the posts are from active members of the community and the discussions are well suited to helping people where they are at right now. Also, the shifting nature of the tech landscape means that a high quality JS post from 2016 is now quite heavily outdated with new language features and frameworks introducing new patterns.

All that is to say - personally, it’s not my bag, but this also isn’t my house, so it doesn’t have to play by my rules or align with my preferences.

Any discussion of ways to make our community more valuable and vibrant is excellent, IMO.

3 Likes

I think you have some great points.

I agree that we don’t want to be anywhere near the direction of SO. It’s a mess of old and current data and the vibe there can be pretty terrible.

Given the speed at which web tech develops, I suppose I’d expect information could get old fast. I suppose my thought is not to focus on exemplar answers so much as highlight good examples of technical communication in the questions.

I think that communicating problems and thought processes is something that new developers struggle with, and it’s not something that the FCC curriculum can really test. Maybe I’m looking for a way to help coach technical communication on the forum by highlighting good communication?

Communication is hard, it’s something employers are looking for, and it’s something that can help people troubleshoot code and find answers.

My reaction when reading that post above was “This is fantastic communication. I wish I could help some of the other newbies on the forum get to this point.” Even if some sort of ‘star’ mechanism isn’t the way to go, it’d be nice to have some way to help new devs get closer to that sort of place.

2 Likes

Yes, I agree that’s an important thing to try to encourage in topics, and as a skill to impart more generally.

We’ve had a blog post in the past that uses to do the rounds, titled something like ‘how to ask good questions’. That is to get pasted into particularly unclear questions ages ago.

Nowadays the pattern tends more towards asking what people mean more directly - but it’s a tedious method, especially in an asynchronous medium like a forum.