-8
\$\begingroup\$

is unquestionably a meta tag, and yet, we continue to allow it to exist on Code Review.

Despite communicating no information at all about the contents of the question, is the 7th most popular tag on the site.

Some claim that helps guide the type of answers we write. It does not guide the type of answers I write. Moreover, I can't even imagine how would guide your answer writing given how extraordinarily subjective the idea of being a beginner is...

To me, the is code for:

Go easy on me. Also, that complicated but unquestionably better approach you were going to suggest? Don't suggest that. Despite being objectively the only right approach, it's too complicated for me, so don't even bother putting it in your answer.

But I personally just ignore the tag.

We all should be reviewing every piece of code here as if we're about to commit it into our release branch and put it out to a customer.

I work with interns. These interns are arguably going to be "beginner" level. So since they're basically a walking-talking- tag, does that mean I should adjust my real-world review of the real code they're really about to submit into a release branch so as not to what, hurt their feelings? Or confuse them? No.

Don't get me wrong. Reviews shouldn't be mean. Reviews should just be about the facts, which can't really be nice or mean--just factual. And reviews should always take into account the asker. If the asker doesn't get your explanation, it's a waste of time. (But comments can be used to ask for clarification).

But... best case scenario, the tag communicates no information and wastes space in the top 10 tags. Worst case scenario, it irrationally encourages less in-depth answers at the discretion of the asker.

What's worse, isn't even a tag that anyone but the original asker can really fairly add or remove to or from any question.

\$\endgroup\$
  • 8
    \$\begingroup\$ Tags don't just categorize technology. I follow this tag because I like teaching beginners. I'm sure there are others who do the same. \$\endgroup\$ – RubberDuck Jul 19 '15 at 23:02
  • \$\begingroup\$ Do you answer [beginner][objective-c] questions? \$\endgroup\$ – nhgrif Jul 19 '15 at 23:02
  • 1
    \$\begingroup\$ possible duplicate of Should we do something about our meta tags? \$\endgroup\$ – rolfl Jul 19 '15 at 23:02
  • 7
    \$\begingroup\$ It should be noted that the tag does have 99 followers. \$\endgroup\$ – Simon Forsberg Jul 19 '15 at 23:02
  • \$\begingroup\$ No. But I answer [beginner][java] questions and I don't really Java. \$\endgroup\$ – RubberDuck Jul 19 '15 at 23:03
  • 4
    \$\begingroup\$ I don't agree that a focused discussion about a single tag should be marked as a duplicate of question about a laundry list of tags... \$\endgroup\$ – nhgrif Jul 19 '15 at 23:04
  • \$\begingroup\$ I don't either. this is the relevant answer from that question and it doesn't solely address [beginner]. A proper discussion is in order. \$\endgroup\$ – RubberDuck Jul 19 '15 at 23:07
  • 1
    \$\begingroup\$ Related: meta.codereview.stackexchange.com/q/3892/23788 \$\endgroup\$ – Mathieu Guindon Jul 20 '15 at 5:37
11
\$\begingroup\$

[beginner] is unquestionably a meta tag, and yet, we continue to allow it to exist on Code Review.

Yes. Indubitably, it is a meta tag and as a general rule, we don't allow meta tags. However, rules are meant to be broken and is special so we allow its continued existence here.

Why though? What makes this meta tag different? Mostly, it's because a critical mass of users here find it to be useful.

Many people - 99 actually, follow this tag... probably for just as many reasons. For a new reviewer, seeing a beginner tag in a language they know, can be a nice incentive to look at a question they wouldn't have otherwise, and perhaps even contribute an answer. ~ Mat's Mug

I, for one, follow this tag because I like teaching beginners. It wasn't always that way though. When I first joined the community, these were the only questions I answered because I didn't feel that I was good enough to answer other questions. From an answer of mine to a related meta.

I'm an intermediate level code monkey, so I find if easier to answer the beginner questions.

This tag is an entry gate to the community, for both askers, who must be incredibly brave to let strangers on the internet critique their code, and reviewers who may feel there's a high barrier to entry for writing answers here. It's a sign post saying "You're welcome here. It's okay that you don't know what you're doing. None of us do. We'll help each other figure it out."

There is another aspect to the tag. I do tend to write different kinds of answers when it's present (and sometimes even when it's not, but perhaps it should be). When I see a regular, or someone who obviously knows what they're doing, I will very literally leave a bulleted list of issues to be corrected. This kind of answer is absolutely worthless to a . Having the tag there is a signal to me that I will need to explain myself and do a bit of hand holding, a bit of teaching, in order for any answer to be, in any way, useful to the OP. Using this tag is a way for the asker to communicate to us that this is the kind of answer they would like/find most useful.

Hopefully that addresses the meta-ness of the tag and why we allow it here, even though we have put a lot of effort into removing other meta tags.

\$\endgroup\$
12
\$\begingroup\$

No

tag should stay.

It has the following benefits

  1. it allows question askers to categorize themselves in a way that is 'easy'. It is much easier (psychologically) to admit a lack of knowledge using a tag, than to say: "I know I am making a mess of things, but I am new here, and don't know what I am really doing".
  2. it allows reviewers to adjust their answering style to explain concepts that more experienced users would already know. Advice would also be adjusted to explain concepts in different ways with caveats: "you should do things this way, but when you have more experience you could try reading about that way"
  3. it allows inexperienced reviewers to easily find questions they will more easily be able to answer - because they have more experience than the asker too

Code Review is not only about 'right' or 'wrong' answers (though that is important). Code Review is about 1-step-better answers, and is a valuable tool for identifying what those steps may be, and who can take them.

\$\endgroup\$
  • \$\begingroup\$ It's a meta tag. This answer does nothing to explain why this meta tag gets special treatment over the other meta tags which have been burned. \$\endgroup\$ – nhgrif Jul 19 '15 at 23:28
  • 7
    \$\begingroup\$ It also allows other reviewers who don't like beginner-level questions to ignore the tag. \$\endgroup\$ – 200_success Jul 20 '15 at 3:19
9
\$\begingroup\$

Go easy on me. Also, that complicated but unquestionably better approach you were going to suggest? Don't suggest that. Despite being objectively the only right approach, it's too complicated for me, so don't even bother putting it in your answer.

I don't quite agree with this 'code'... if anything, an answer that can simplify a 'complicated but unquestionably better approach' is the right kind of answer we are seeking for on this site.

Therefore, I too agree that this tag should stay. My general approach for questions is to address a little more on OOP approaches and Java conventions (me being a Java person...), or in other words, a little more long-winded rather than cutting down on depth. It also encourages me, as an answerer, to understand the question from a more novice point-of-view, and sometimes it's refreshing to do so too.

\$\endgroup\$
8
\$\begingroup\$

Go easy on me. Also, that complicated but unquestionably better approach you were going to suggest? Don't suggest that. Despite being objectively the only right approach, it's too complicated for me, so don't even bother putting it in your answer.

Your definition and/or understanding of the tag is wrong. You have all rights to ignore it - it's indeed a meta-tag after all.

I don't understand everything that I might need to understand to make my code better. I'm eager to learn, but I appreciate not being overwhelmed with concepts I'm not familiar with, so please, if you're going to suggest something that's a number of steps ahead of the code you're seeing here, I'm willing to get there, but I may need to hold your hand on the way.

This isn't about being mean or harsh - it's about adjusting your answers to the asker's level.

My top-voted answer just so happens to be on a [beginner] question; I'm not claiming it's the best answer that was ever written, but you should get a feel of how I see a answer should be answered.

Many people - 99 actually, follow this tag... probably for just as many reasons. For a new reviewer, seeing a tag in a language they know, can be a nice incentive to look at a question they wouldn't have otherwise, and perhaps even contribute an answer.


What's worse, isn't even a tag that anyone but the original asker can really fairly add or remove to or from any question.

That is simply not true. Look at that question again. Closer. Revision 2 introduced the tag. And I'm the one that put it in. How dare did I stamp that question with that tag? Look at the code in the post. Are we talking about advanced programming concepts here? Of course not. I don't think it was an "arbitrary" tag addition. The code was obviously beginner code, and I tagged it as such.

best case scenario, the tag communicates no information and wastes space in the top 10 tags.

Going again with that example, because I find it's a good one. Could I have left the post alone and not tagged it with ? Of course! What does the tag bring to the table then? How is the post better served by the addition of that tag? How is the site in any better shape with that tag added to that post?

The tag exists, is followed, and has a purpose that's described in its wiki page. By adding that tag to that post, I added a "signpost" telling new users "hey, if you're looking for something accessible to write your first answer on, there's a good post here" - and it seems a new user found it and posted their first CR answer there shortly after. Was it because of the tag? No one knows. But there's at least circumstantial evidence that a tag got a new reviewer on board, especially given that their 2nd answer was also on a question.

I don't see how "wasting a space in the top 10 tags" is any relevant to this debate - if anything, the fact that we're talking about a top-10 tag isn't exactly playing in favor of its burnination.

Worst case scenario, it irrationally encourages less in-depth answers at the discretion of the asker.

Not true. It's simply a matter of adjusting your answer to the asker's level. You can go in-depth all you want - you simply need to explain things in greater lengths, based on your own assessment of OP's level, given the code they put up for review.

\$\endgroup\$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .