Let's break apart the tracks of ambiguity and have questions tagged with and cleaned up.

There is an undercurrent of abusing and applying the latter tag to all things in the former when they are plainly about Rails specific topics and not Ruby plain and proper.

In the adventures of Do Rails questions have to have the Ruby tag? you'll note that there exists a split at what is at the core of the question.

Your appreciation is most welcome in this effort to carefully go through all questions tagged with both and and, while also editing for grammar, typos and formatting, remove the latter tag from all those concerning and exclusively about the former.

Shall we bring this call to arms?

For ideas on how we can teach users about applying the tags properly in future, your warm embrace awaits thee.


2 Answers 2


This is an old problem appearing in a new context. We've had this battle already with technologies like and . There are questions about the C# language that don't need to have the tag. Then there are questions about the .NET libraries that don't need to have the tag. Then there are questions about both that should probably have both tags. And then there are questions about VB.NET that don't require a tag, but people put it there anyway because the answers are likely to be the same and the tag is [at least perceived] to attract more users than the tag.

I can think of plenty of other examples with other languages, technologies, and frameworks.

Blah blah blah. I just don't get it. Too much headache for me. I follow these rules to keep me sane:

  • When asking a question, I tag it with the most descriptive combination of tags I can think of. You have 5 tag slots available, and there's little to be lost in using all of them. If it makes your question easier to find, apply the tag.

  • If you come across a question that appears to be mistagged, in that it has an inaccurate tag or is missing a critical tag, you should retag it as appropriate.

The rest of the time, you just have to find better things to spend your time worrying about. If people want to ask a question about Ruby on Rails, and tag it both and (because Ruby on Rails does, in fact, use the Ruby language), then that's their business. I struggle to understand how that is hurting anything. The question certainly isn't mistagged, and I don't see how it's an "abuse".

Yes, there is a subtle split. Yes, we can pontificate about it all day. But it all comes down to the fact that people just don't care, and for good reason. It's all too complicated. I just want to ask a question about a problem I'm having working in Ruby on Rails. I can figure out to use the tag, but I don't know if my problem is related solely to the Rails framework, or if it also has to do with the Ruby language. So therefore, and because Ruby on Rails is obviously related to Ruby (it's in the freakin' name), I go ahead and tag my question , too. I'm not abusing anything or anyone. It's not malicious. And it's not even that big of a deal.

For ideas on how we can teach users about applying the tags properly in future

In fact, this is precisely the problem. No one can come up with any ideas on how to do this. There is no good way to educate users about this, and most of them simply don't care about the finer points of distinction, where a language stops and a framework starts and vice versa. And why should they even have to?

That said, if you want to clean up the Ruby and Ruby on Rails questions, then there's nothing wrong with that. But the main focus of that clean-up effort should be "editing for grammar, typos and formatting", not just to retag all the things.

  • I disagree: mistagging makes for a bad signal-to-noise ratio if you're trying to filter on [ruby]. You can't just click the tag in this case, because of all the Rails questions that get in the way. And I think expecting programmers to understand the difference between a language and a framework is a perfectly reasonable expectation on a programming web site.
    – CodeGnome
    Commented May 21, 2012 at 10:51
  • 1
    I posted plenty of questions on RoR and sometimes tagged them both [ruby] and [ruby-on-rails]. I'm fairly confident that I know the difference between these two, but still I'm programming in Ruby. And who knows if a non-Rails programmer can help out? Why not? Plus, it's not like there are many users actively running around retagging Rails questions (like we do on SU for "Mac" and "OS X") or instructing SO users about proper tag usage, so I don't believe this is such a big deal. I'd say for most people it's not a problem of not understanding the difference.. @cod
    – slhck
    Commented May 21, 2012 at 22:14
  • @Code Questions about Ruby on Rails are still about Ruby, so there's nothing unexpected about them showing up when you search by the Ruby tag. If you want to filter out Ruby on Rails questions, then exclude questions with the ruby-on-rails tag from your search. And no, that's not a reasonable expectation. I have no idea if the problem I have is one that's related to the framework, the language, or something else entirely. People who ask questions are by definition not experts on what their problem is and where it is coming from. Commented May 21, 2012 at 22:17

How Superset Tags Lead to Absurdity

A lot of the discussion for this question, as well as related questions, seems to center on the idea that there's no ambiguity created by adding superset tags. If we extend this logic, then we should feel free to tag every question with [unix], [windows], or [osx] even if the question isn't platform-specific. After all, the programming language in question almost undoubtedly runs on one of those platforms, right? And it seems likely that someone who uses one of those three platforms might have an answer, wouldn't you think?

There are definitely times when a Rails question is about Ruby constructs. Most of the time, though, it is a framework-specific question and should not be tagged as Ruby. This avoids confusion, and helps both people following a tag as well as people searching for questions or answers unrelated to the subset. See this person's question for another great example of why this often matters to people.

A Practical Solution

To keep things both practical and actionable, as opposed to spinning everyone's wheels about whether superset tags are desirable in the abstract, the ruby and ruby-on-rails tag wikis have been updated to provide some guidance on what to tag, and to draw the distinction that Ruby is not a synonym for Ruby on Rails.

The core idea here is:

Questions about Ruby on Rails should not be tagged with [ruby] unless the question is about the Ruby language in general, its syntax and libraries, or other questions not specific to the Ruby on Rails MVC framework.

Perhaps the definition can be improved over time, but it's a reasonable place to start.

I agree that there's a lot of gray area, and room for opposing viewpoints, but I think a certain amount of rigor in tag definitions is of long-term benefit to the SO community. We shouldn't avoid addressing issues just because they are hard problems to solve.

  • Your argument at the top might be easier to accept if Ruby on Rails applications ran in some environment other than Ruby. Commented May 21, 2012 at 23:30

You must log in to answer this question.

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