What is meta? ×
Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 130 Stack Exchange communities.

Yesterday John Saunders added a new tag, c#-language, to 7 questions. There are quite many C# questions on Stack Overflow, but these 7 questions have high voted answers from Eric Lippert, who already received the new c#-language badge for them.

  1. Should there be a different tag for these question? Should we differentiate C#-Language questions from questions where C# is a tool, and is this the way?
  2. Is it acceptable to retag questions that way? It does look a little like an exploit, which was undone in the past.
share|improve this question
4  
Smells like a pseudonym which should be banned, imho. –  Time Traveling Bobby Aug 28 '10 at 21:20
2  
@Kobi: thanks for letting me know –  John Saunders Aug 29 '10 at 3:19
    
@John Saunders - you are right. I missed that basic courtesy, which is unfair. I am a brute :P –  Kobi Aug 29 '10 at 4:21
    
I don't understand how this is retagging. I added a tag. I have no idea how anyone could consider this an exploit, either. Someone kindly explain. –  John Saunders Aug 29 '10 at 17:41
7  
@John, the exploit works as follows: Eric joined the site and started answering questions, then created you as a sockpuppet complete with back story, MVP awards, all so he could use you to garner the coveted [c#-language] badge. The amount of time and effort involved must be staggering, but he would have gotten away with it if not for these meddling kids! –  Shog9 Aug 29 '10 at 18:06
5  
Ah, humor. I've heard of that. –  John Saunders Aug 29 '10 at 18:23
    
@Kobi: I think it might be useful to define "retag" in this context. I did not remove any tags; I added one. This is not "retagging" in the sense of the many retag requests here on meta. –  John Saunders Aug 30 '10 at 1:19
1  
@John Saunders - I think the common definition of "retag" on SO is simply to edit tags. I posted this question because it seemed inconsistent (though not at all a bad idea), and I thought a discussion is in place. I think people, including Jeff, react so strongly simply because there weren't a discussion prior to that action - which would have led to the opposite result, in my opinion. Here's a related post which I think makes this whole question a duplicate: meta.stackexchange.com/questions/35774/… –  Kobi Aug 30 '10 at 4:30
    
there's now a chat room for discussing this question –  balpha Aug 30 '10 at 15:10

3 Answers 3

up vote 18 down vote accepted

IMHO, [c#-language] doesn't appear to signify anything that [c#] doesn't already indicate. I certainly don't see anything common to the questions currently tagged that would appear to require a separate tag - indeed, this one would appear to require the consideration of a specific implementation...

That said, there is a [ecma262] tag for questions on the ECMAScript standard itself or questions on its implementation that are potentially orthogonal to JavaScript use or any specific implementation of it. So I could see a similar tag ([c#-specification] or [ecma334] say...) used for questions on the C# standard that aren't directly concerned with the use of language or its common implementations. Assuming there are actually questions that would benefit from such a thing...

share|improve this answer
1  
I think this post was more about the C#-language badge than the tag itself, which I think we all agree shouldn't have been created. –  Andreas Bonini Aug 28 '10 at 22:48
7  
@Kop: um... The badge follows from the tag. If the tag was valid, so is the badge. That tagging can be abused to generate badges is well-known - Kobi links to a lengthy discussion of it in the question. I'm primarily answering question #1, but I think the answer to #2 follows from it. –  Shog9 Aug 28 '10 at 23:02
    
+1 for the idea of a [c#-specification] tag. That's a much better and clearer idea IMHO. It'd be nice to see one created. –  Justin Morgan May 9 '11 at 19:32

Having bruted through the [language] tag long ago, I can see the use for having a tag to identify questions about the features or elements of a specific language, or any such general questions about the language rather than using the language. We have a fair enough number of them.

However, I think we are better suited to using a tag like [language-features] or [language-design] in concert with the [c#] tag to illustrate this goal than to create a new tag exclusively for C#.

"Aren't tags that depend on other tags bad?" you might ask, but I would envision this about the same as a tag like [strings]. We still have that as a tag, and it's just as dependent on the language as a general language features tag would be. Nevermind that a string is one such feature/design element anyway. It clearly indicates what the question is about, so it works well as a tag. And we won't have to setup a unique one for every language, to boot!

share|improve this answer
    
IMO you could ask a language-agnostic question about strings with just the tag [strings]. –  Jeff Atwood Aug 30 '10 at 2:47
    
If we had "nested" or "hierarchical" tags, I'd be fine with c#:language. Since we don't, I felt I'd try c#-language and see if anyone else agreed (by using the tag themselves). –  John Saunders Aug 30 '10 at 2:54
4  
The 2nd paragraph is the solution, IMO. –  Jon Seigel Aug 30 '10 at 2:58
    
+1 for [language-features] –  wds Aug 30 '10 at 15:03

I created that tag in order to differentiate between questions about the C# programming langauge itself, and questions about everything else, but where the questioner happens to be using the C# programming language.

In my opinion, the c# tag has become meaningless, as a tag. It does not categorize the question, it simply indicates the programming language used by the questioner. I began using the c#-language tag to indicate questions that are specifically about the programming language.

Think about it. Is there really no difference between problem with using alias name in query in ms access (the question doesn't even contain any C# code), and Limitations of the dynamic type in C#?

Think about it another way. Should all questions tagged c# also be tagged .net? After all, the questioner is likely using .net in his C# program. How about tagging them visual-studio since Visual Studio was probably used to write the program? Or oxygen since that's probably what the questioner was breathing at the time?


Yet another way to think about the distinction: in front of me is the book "Essential C# 4.0" by Mark Michaelis. An excellent book. The first 13 chapters of this book fall firmly into the area for which I intended the c#-language tag. Only when you get to Chapter 14, "Collection Interfaces with Standard Query Operators" would I say you've entered the gray area. Subsequent chapters, "LINQ with Query Expressions", "Building Custom Collections", "Reflection, Attributes, and Dynamic Programming", up to Chapter 21, "The Common Language Infrastructure", move further and further away from what I had in mind. I probably wouldn't remove a c#-language tag placed on questions about most of these, but I would not add one.

Contrast this with another great book I have here, "Windows Forms 2.0 Programming", by Chris Sells and Michael Weinhardt. Even though the examples are all written in C#, I would say that none of the chapters of this book are about c#-language.


Now, I happened to start off with Eric Lippert answers simply as a quick way of finding questions that were likely to be about the language itself. It never crossed my mind that tagging these particular questions would lead to Eric winning the badge for the tag.

OTOH, he can now write the tag wiki for it.


I just reread the original blog post on suspensions: "A Day in the Penalty Box". The reasons for suspension are stated as:

There’s only one rule of behavior that really matters, whether on Stack Overflow, or anywhere else:

don’t be a jerk.

How do you know you’re being a jerk?

  • Other users react negatively to your posts, posting negative responses and generally causing a commotion.
  • There is a broad sense of community resentment over your behavior, and you are frequently cited in discussion about the community.
  • The moderators get regular email complaints about your behavior.
  • You make snide or rude comments “behind people’s backs”, in public places.

Considering that there has been no attempt to inform me of what my bad behavior was, I have to go by the above. Was I being a jerk? In what way?

I know it's the weekend, and look forward to answers during the week.

share|improve this answer
11  
You should have really asked the community first here on meta. Anyways, I don't agree. The fact that it indicates the programming language means that it does categorize it. –  Andreas Bonini Aug 29 '10 at 3:30
    
@kop: it doesn't categorize the question in any useful way. Can you say that C#-langauge does not categorize questions about the language? –  John Saunders Aug 29 '10 at 3:31
4  
'problem is, now you're just gonna get questions tagged [c#] [c++] [c#-language]... To the extent that this is a problem, it's a problem for everything: WinAPI questions tend to get tagged [c++], DOM questions get tagged [javascript], Django questions get tagged [python], etc. etc... There's probably a case to be made for "pure language question" tags, but... tagging all [c#] questions with [.net] has been suggested, so I'm not sure the distinction is clear enough between language and platform (especially for the major .NET languages) that this is actually practical. –  Shog9 Aug 29 '10 at 4:22
8  
please discuss this on meta first in the future. Because you are a long time user, I'll forgo the usual temporary suspension I'd normally impose in unwanted retagging scenarions like this –  Jeff Atwood Aug 29 '10 at 4:56
3  
@Jeff: I haven't retagged anything. I've added a new tag. I didn't see where that would be a problem. –  John Saunders Aug 29 '10 at 17:39
    
@john regardless, if it happens again without discussion on meta, there will be a timed suspension –  Jeff Atwood Aug 29 '10 at 19:35
9  
@Jeff: just to be clear, what's the fault here: creating a new tag, or adding it to very popular questions? –  Shog9 Aug 29 '10 at 19:42
15  
@Jeff: seriously. What part of what I did got people upset? I actually don't understand. If I had added the tag to new questions, as they came in, would that have been a problem? –  John Saunders Aug 29 '10 at 21:05
16  
I find it ridiculous that a suspension could come from this. Now if you have evidences of an attempt to game the system that would be a different story. –  ChaosPandion Aug 29 '10 at 22:00
    
Hundreds of people create stupid tags every day, it must have to do with the badge. Otherwise a good portion of our users would be suspended. =p –  Andreas Bonini Aug 30 '10 at 2:13
1  
+1, this seems like a decent explanation for why he thought adding a new tag was useful. Does anyone really suspect him of being an Eric Lippert sock puppet? –  Benjol Aug 30 '10 at 7:08
1  
If [c#-language] is intended to be used as a supplement to the c# tag, then why not just use the existing [language] tag? Ultimately, this should be a question of community standard. Either each language gets its own [xxxx-language], or all use the shared [language] tag. I favor [language]. IMO, each one should do the minimum of categorization. Only when you put several together would you get true context. Someone working a c# project would start at c#, but someone may want to look across the language tags as well. –  Jim Leonardo Aug 30 '10 at 20:35
    
@Jim: I wasn't sure what the community consensus was on using "hierarchical" tags. –  John Saunders Aug 30 '10 at 22:38
1  
@Jeff: any news on reasons for my suspension? I think that question should be answered. –  John Saunders Aug 31 '10 at 16:38
2  
@Jim I would really prefer [language-features] or [language-design], as proposed in my answer. [language] is highly ambiguous between whether you're talking about programming languages or spoken languages (which comes up a lot in internationalization and encoding). Comparatively, those two tags with qualifiers can be very easily applied to only programming, as features/design of spoken languages would be off-topic. –  Grace Note Sep 1 '10 at 12:42

You must log in to answer this question.

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