Welcome to Codidact Meta!
Codidact Meta is the meta-discussion site for the Codidact community network and the Codidact software. Whether you have bug reports or feature requests, support questions or rule discussions that touch the whole network – this is the site for you.
Should we show tags before the body, to provide context for reading the question?
Today I saw the following question on Software Dev (this is the beginning):
(rest of post...)
The title, "connect with SLOT/SIGNAL:QPushButton clicked signal not received by main window" sounds like it could be about one of several languages. From the web context I was guessing Javascript. As I read further I eventually saw MainWindow.cpp
, which told me it's actually C++.
Down at the bottom I saw the tags:
On the one hand, you could argue that if I don't know enough to recognize the library (and thus know its language) then I shouldn't be answering the question. And that's true! I had no intention of answering the question. I read the question and its answers to learn something, and wondered if I should have better context for what I would be learning.
Would it make more sense to display the tags under the title, something like this?
2 answers
I think that questions should be able to stand on their own without the use of tags, and so tags should be unnecessary to display at all. Not to say they have no use - it's helpful if you want to know some information about a question at a glance, such as when looking at the feed - but if you need to read the tags to understand the question content itself (in your example it sounds like they didn't specify the library in their post), then something is wrong with the question; that information should be edited in. (Of course, even then, you might not understand it, but that's just a lack of knowledge.)
I don't see much point in moving the tags to the top, but that's just because I don't think it should matter either way.
On a slight tangent, but I thought I'd address this:
On the one hand, you could argue that if I don't know enough to recognize the library (and thus know its language) then I shouldn't be answering the question. And that's true! I had no intention of answering the question. I read the question and its answers to learn something, and wondered if I should have better context for what I would be learning.
Randomly poking into a question without having any background knowledge is gonna be confusing, no matter where the tags are placed. If you can't tell what language the question is, then you probably won't learn much from the question or the answer. Sure, you might now know how to fix a click signal not being received by the main window using the QT library, but you still don't know what any of that means.
Basically, if you didn't understand the question without tags, then you aren't going to understand the question much better with them. That's just going to be how it is.
The real problem was that the question didn't provide it's own context well enough. Tags aren't content. They are only for filtering questions to what you want to view, in a search, etc. It is a misuse of tags to rely on them to provide important context to the question.
Putting tags at the top of a question will lead to even more misuse of tags than we already have.
The better way to address the problem you encountered is to enforce or encourage better questions. There needs to be more responsibility on question writers to make their questions more accessible.
Questions aren't there only to get answers. They are also for providing interesting content in general. Given that most questions only get a few answers and that there are way more users than that, most question readers aren't those who can answer them. Questions should be written with this perspective in mind.
If you think questions are only for soliciting answers, then consider SE's Hot Network Questions. People obviously read those for interest, not because they are likely to answer them.
Of course, any specific topic has its jargon. As examples, we can't expect an electronics question to define a PCB (printed circuit board), a photography question explaining f-stops before referencing them, a cooking question defining what a wok is, etc. However, if something is more niche, then it should be defined or other context provided.
In the case you cited, the question should have mentioned it was using C++ and the QT library right up front. If this sort of thing happens too often, it is an indication that the overall site topic is too broad. I think that's exactly the case for the Software Development site.
1 comment thread