We've noticed that a huge percentage of questions are tagged or .

This is a dangerous pattern for your community to fall into. Here's why:

  1. Version tags are redundant. The site is already called "drupal". We don't need to know that it's drupal-6, drupal-7, drupal-8, drupal-9 in every single tag on every single question. It's redundant.

  2. Version tags are a crutch. Because these tags dominate the site, and contain the name, they are the first thing users will turn to when tagging their questions. This means users will fail to tag questions with any other meaningful tags, since "I already tagged my question with !" This isn't hypothetical. We've seen this happen time and time again. Version tags are a mindless replacement for thinking about what your question is about. "Oh, this question is about . Done."

  3. Version tags make questions disposable. The entire point of Stack Exchange is for questions to be editable, timeless resources -- a version tag implies exactly the opposite and ties questions to specific moments in time, with no incentive to improve them to be relevant to future versions. This is extremely dangerous!

  4. Version tags encourage needless question duplication. Rather than "How do I do X?" which can cover both supported versions, now there has to be "How do I do X in Version 1?" and "How do I do X in Version 2?"

  5. Version tags aren't necessary for most new questions. New questions are very likely to be about the current version of the software -- so for all new questions, tagging with the current version is usually not helpful.

On top of that, how many versions (outside of freakish "I still use Windows 2000" edge conditions) will really matter at any given time? Two at best? And certainly any OSS project worth its salt will strongly urge people to regularly migrate to the latest version as soon as they can, so that the community can move forward to bigger and better things.

Thus, here is what I propose.

  • Eliminating the version tags on existing questions. We can do this in one click globally.

  • Treating version tags as the exception not the rule on new questions -- if you have a strong case to make that the question you are asking is ONLY relevant to one version and can NEVER EVER be relevant to any other version, then -- and only then -- add the version tag.

  • If you encounter an old question that is truly specific to a version, and cannot be edited to be version-agnostic, retag it with a version tag.

The bottom line is that version tags have to be treated as the exception, not the rule. It is important to fix this now while your community is young? Otherwise you are creating some deep problems in your community that will be very hard to fix 1 or 2 or 3 years from now.

  • It's not clear to me why tags for the Drupal version are dangerous for Drupal Answers, but they are allowed on Stack Overflow.
    – apaderno Mod
    May 22, 2011 at 5:51
  • 1
    @kia if a single tag was on 50% of Stack Overflow questions I would be lobbying for its removal as well. See blog.stackoverflow.com/2010/08/the-death-of-meta-tags and stuff like the [subjective] tag which was a top 20 tag as I recall. If a tag applies to everything -- or half of everything -- it applies to nothing. May 22, 2011 at 6:25
  • @Jeff Atwood What would happen if half of the questions would be about Views? Would the tag be removed on that basis?
    – apaderno Mod
    May 22, 2011 at 6:39
  • 2
    @kia that's no more dangerous than the C# or Java tags on Stack Overflow. Note that we discourage language version tags for similar reasons. A string is a string is a string, in C# 1.0 to C# 4.0. The exception is when you talk about a new string function introduced later; this is rare, as you would expect. May 22, 2011 at 6:49
  • @Jeff Atwood Just a last question: Should those tags be added as blocked tags, or should they made synonyms of pseudo-tags that are then removed? In other words, who needs to do something, the moderators or you Stack Exchange?
    – apaderno Mod
    May 22, 2011 at 7:10
  • 2
    This site is now infinitely more useless without the Drupal 6/7 tags. Anyone who has used more than one version of Drupal knows this. May 23, 2011 at 4:14
  • 1
    @tim so you prefer drupal6.stackexchange.com and drupal7.stackexchange.com? Apparently each version of drupal has nothing in common with the previous one, they rewrite it from scratch on new technology? May 23, 2011 at 4:26
  • @Jeff Atwood No, each Drupal version is not rewritten from scratch; the old version development snapshot is patched to get the new version, in the same way it is happening now for Drupal 8. The reason Drupal users don't understand what reported here is that we are used to report the Drupal version in any issue report done. Clearly, a Q&A site is different, and I can understand why version tags are not welcome.
    – apaderno Mod
    May 23, 2011 at 7:03
  • 1
    I think removing the version tags without alternative will not help drupal.stackexchange. It will do the opposit.
    – nonsenz
    May 23, 2011 at 9:18
  • 6
    I'm not going to waste my time attempting to figure out which version of Drupal a question is referring to in order to answer it properly, and I would never use a technique I found on a website that did not specify the Drupal version. It looks like @Jeff Atwood is going to be rigid in his viewpoint and has just destroyed this site with this rule. We use Ubuntu, we use Wordpress, we use Java, and we are trying to say that Drupal is different when it comes to versions. We have to tag everything with the version number, even our lunch conversations.
    – Jody
    May 23, 2011 at 19:48
  • 3
    @jody everyone thinks they are different and special, then they end up repeating the same mistakes as everyone before them. I cannot in good conscience let any community repeat these bad decisions. The correct way to handle this is for askers to specify the version (if necessary) in the body text. Having a policy of "everything must be tagged X to start" is toxic and inappropriate. May 23, 2011 at 21:29
  • @Jody The problem is when the OP tags a question with "drupal-6" when the question is not specific for Drupal 6; it happens that the OP tags a question with "drupal-6" because that is the Drupal version used from their site, but the question asked is not specific for Drupal 6. In that case, supposing that you want to answer to questions only for Drupal 7, what would you do? You would not read the question because it has been tagged "drupal-6."
    – apaderno Mod
    May 25, 2011 at 8:23
  • @Jody The problem is also for who is looking for a question with the answer for a problem he has; if the questions would be tagged with "drupal-6," he would not read the question because he is using Drupal 7, and the question is for a different Drupal version. The version tags should have been used only when strictly necessary, for example when asking for features that are specific for Drupal 7. The problem is that such features don't exist in Drupal; a feature that is introduced in Drupal 7 is also present in the next versions.
    – apaderno Mod
    May 25, 2011 at 8:31
  • 1
    To say "any OSS project worth its salt will strongly urge people to regularly migrate to the latest version as soon as they can, so that the community can move forward to bigger and better things" is completely unrealistic as a reason for not tagging answers with a version. How many clients can simply upgrade from 6 to 7 because the developer urges them to do so? I find that without these tags, this site is bordering on unusable.
    – keva
    Nov 5, 2011 at 22:19

6 Answers 6


This might all be true about many other versioned things, but in case of Drupal, the difference between 6 and 7 is huge and the answer depends in many cases on the version used.

Drupal 7 was in many areas a major redesign, many things just don't work like they did in 6. The same things will likely happen with Drupal 8. Drupal core isn't backwards compatible

  1. We already had a similar discussion if version-6 should be used instead of drupal-6. We went back to drupal-6/7 however, because these are the official terms (Nobody talks about Version 6, but always "Drupal 6") and some contributed modules also have different major versions where a differentiation might be useful.

  2. It is IMHO important that users choose one of these tags. Because a large amount of the questions that do not have this tag initially have a comment that asks which version they are using so that it can be answered properly.

  3. While this is true, this is not how Drupal works. Drupal versions and "ways of doing things" are not timeless, they often change together with new core versions. One example is the new entity/field concept which allows to add various types of "fields" to entities (nodes, users, comments, ...) while in Drupal 6, this was only possible for nodes and was not in Core but a contributed module. Many modules exist to work around that limitation in Drupal 6 which are simply not necessary anymore.

  4. As explained above, chances are pretty high that the answer to these two question is different based on the version used. Maybe at some point Drupal core will stabilize and such a differentation wouldn't be necessary anymore but it is also very possible that at the same point new frameworks/systems will appear and Drupal's rise will stop and it will eventually vanish.

  5. Just look at the numbers of how often those two tags (drupal-6, drupal-7) are used. We have 627 Drupal 6 questions vs. 543 Drupal 7 questions. (Drupal 7 was released in Januar 2011). So it's pretty equal and it would be wrong to assume that new questions are for Drupal 7. That again might be Drupal specific, but because of the vast amount of changes and the fact that contributed modules often lag behind a bit (and you usually use a lot of contributed modules on every site you build with Drupal), the shift to the next major version usually takes a bit of time (People still work on improving existing D6 sites, some new projects still might use Drupal 6 right now because an important module they're depending on might not yet be available for Drupal 7 and so on).

That said, I totally see what you are saying and that it might/will be a problem in 1/2/3 years. But not using version tags right now is just not possible/doable.

Maybe we can find a different way to specify the used version and/or if a question/answer is version specific or not.

  • 3
    for #2 there is no reason this needs to be captured in a tag. Saying to someone "you gotta pick a version tag!" is the same as saying to them "you gotta tell us what version!" -- enforcing this in tags is a bad idea. May 21, 2011 at 21:46
  • 1
    @Jeff Atwood Is then just a matter of not using those tags? In that case, I don't see how the absence of a version tag makes the question not disposable.
    – apaderno Mod
    May 21, 2011 at 23:20
  • 2
    @Jeff Atwood I see the problem you mention, but I don't think that simply not using version tags would help (by simply adding the version information into the text, it is still version-based, just harder to see). In Drupal, we have a saying that goes like this "The drop is always moving". This means that with every new core version, major backwards-incompatible changes happen. And Drupal is not a programming language or an API, it is a whole ecosystem.
    – Berdir
    May 22, 2011 at 8:26
  • 1
    @berdir if this is so, it sounds like you guys need drupal6.stackexchange.com and drupal7.stackexchange.com and this site should be forcibly terminated... since the two versions have absolutely nothing in common. May 22, 2011 at 8:30
  • Not everything is different :). And for example questions that involve coding, the differences might be minor (but important!). I'm sure many drupal-x wouldn't need that tag. The problem, as kiamlaluno already mentioned is that the person who is asking the question often does not know that, only the person who answers does (maybe they only know that their answer works on D6 but are not sure if it works for D7 or not). I am not opposed to remove the version tags if there is another way to deal with this problem, I just think simply removing them without any kind of replacement doesn't work.
    – Berdir
    May 22, 2011 at 9:29
  • 1
    @Jeff Atwood Saying that they have nothing in common is quite wrong. Drupal 7 has not been written from scratch; there are parts of the core code that has been modified and there are core modules that have been added since the previous version. What I think it's difficult to understand (at least for me) is why "drupal-7" is allowed on Stack Overflow, and not here; if version tags are bad, then they are bad on Stack Overflow too. Saying that on SO the tag is not the most used one is pointless, in someway, as the topic for the questions on SO is not so narrow as on DA.
    – apaderno Mod
    May 22, 2011 at 10:14
  • 1
    @kia please go re-read my original post on this at the top of the page. Then go look at the /tags page on both sites and tell me what percent they cover. If everything is tagged the same thing (or the same 2 things) then nothing is tagged. It is the institutionalization of a "must have a required version tag" philosophy that is at odds with the network here. May 22, 2011 at 10:29
  • 1
    @Jeff What I mean with that is not "SO has it too, so we are allowed to do it" but "SO has the same problem". And if there would be a site about visual studio, those version tags would be among the most used of the whole site. So what can we do about it instead of simply removing that?
    – Berdir
    May 22, 2011 at 10:56
  • 1
    @berdir no, they wouldn't -- most questions would be about the current version of Visual Studio. And we would insist that only questions which can never apply to any other version of Visual Studio for the rest of recorded human history have version tags. VERSION TAGS SHOULD ONLY BE ADDED WHEN THEY MUST BE. Any site which institutionalizes version tags will not last long on our network; after seeing this same pattern play out on Wordpress and Ask Ubuntu, I can tell you that everyone thinks they are "exceptional" and "these mistakes don't apply to us, we are special and different." May 22, 2011 at 10:58
  • 1
    @Jeff Just wondering, are there other sites that are specific to a Software that is updated on regular basis that did not show this pattern? Because it is obvious to me that questions about cooking, mathematics, .. and so on don't need versioning and are much more timeless than a software. Evolution is much quicker here.
    – Berdir
    May 22, 2011 at 11:20
  • 1
    @berdir you need to come to terms with this if you want to stay on our network. The other alternative is I can set up drupal6.stackexchange.com and drupal7.stackexchange.com for you. Make your choice. May 22, 2011 at 11:21
  • 1
    No, I don't think multiple sites would make sense. Drupal 7 started only few month ago, it is obvious to me that the shift is slowly. In a year, there will probably be much less questions about Drupal 6 and in 2-3, Drupal 8 will come out, what then? Yet another site? I am not trying to defend "us" or something, just trying to find an alternative to version tags (and point out that the same pattern exists on SO, look at visual-studio-2008 and visual-studio-2010 tags, both still active...). If you do not want version tags, they have to go. You're the boss ;)
    – Berdir
    May 22, 2011 at 11:32
  • 1
    @berdir the argument is ridiculous; because there are 10k [visual-studio-2008] questions out of 1.65 million on Stack Overflow -- that's a whopping ZERO POINT SIX PERCENT, you think that makes it somehow OK for this site to have 1100/1360 or 80% of all its questions covered by two tags? Heck even the most populous tag on Stack Overflow, [c#], is only 177k out of 1.65 MILLION questions, just over 10%. I hope you are not ever put in charge of environmental pollution level standards. :) May 22, 2011 at 11:41
  • 1
    @berdir and I am not against the version tags existing, I am against them covering 80% of the site, becoming institutionalized, and causing the severe cultural problems I mentioned in my question. May 22, 2011 at 11:45
  • 1
    Yes, those VS version tags are only a minor part of the whole SO site. That is argument 2 of your post. But there are more VS-2008 questions than VS questions, so argument 3-5 IMHO applies to those as well. Single questions tagged with one of those version tags are just as time-specific as ours. That is what I meant. Anyway, not relevant. You want those tags gone (or better, only used for specific purposes), so how do we do it? Delete? Block? Both would completely remove them and might remove relevant information of existing questions which might not mention the version in the text.
    – Berdir
    May 22, 2011 at 11:57

Trying to give some examples for questions that would be answered more or less differently based on the core version. This is too long for a comment, so I'm doing it as a new answer.

Maybe this can help to explain what I and kiamlaluno mean...

Q1: How can I relate two nodes together?

D6 A: With the CCK project, you can add fields to nodes. Make sure to enable the Node reference module and then add a Node reference field to the node type you want to connect to another.

D7 A: The ability to add fields to nodes (and other things) has been added to Drupal 7 core. However, the node reference module did not make it into core and is now part of the References project. There is also a new project called Relations which aims to provide a generic solution to relate entity X (node, comment, user, ...) to entity Y. Additionally, that module makes the relation between two entities also an entity so you can add information/fields directly to the relationship between two things.

Explanation: The answer is similar, but you need different modules in D6/D7 and even within a core version, new contributed modules/ideas are developed which can change how things are usually done.

Q2: How do I load a user with a specific name?

D6 A:

$account = user_load(array('name' => 'user name'));

D7 A:

$account = user_load_by_name('user name');

Explanation: user_load_by_name() is a new helper function, see http://api.drupal.org/api/drupal/modules--user--user.module/function/user_load_by_name/7, that does not exist in D6 and uses the new function user_load_multiple() that did not exist in D6. Using either code in the other version would not work.

Q3: How do I load a user based on the user id?


$account = user_load($id);

Explanation: This time, the answer is the same and does not depend on the used version (But it could theoretically change in Drupal 8 or 9, who knows). Also, in Drupal 6, it was also possible to pass an array to user_load() like this: user_load(array('uid' => $id)), this does not work anymore in Drupal 7.

So, how would one know that the answer for Q1 and 2 is a bit different, but not for Q3?

The question now is, how to de expose that information without misusing the tagging system? I honestly have no idea...

  • 3
    this seems fine to me; unless I see otherwise, I will assume the technique works for both versions. And having solutions for both versions in the question is far more efficient for visitors arriving via Google -- it is also instructional in that it illustrates what changed, and why. May 22, 2011 at 11:03
  • 3
    @Jeff: I'm not sure if Berdir meant this as a proposal how to answer questions. Didn't he just mean to illustrate that D6 solutions often differ from D7 solutions? Anyway, while covering all versions in a single answer would be great for Google results and documentation purposes, I think it would really harm the number of answers. When I see a question about D6 and I know the solution, I can write an answer in no time. When it's not tagged with a version and I know I'm supposed to cover all versions in my answer, I will probably not write an answer at all. May 23, 2011 at 9:18
  • 3
    @marc the point is that questions here are editable like wikipedia articles. You can answer with the part you know, and others can contribute "yes, and.." answers of their own (and get votes), or click edit even as an anonymous user to contribute an edit. May 23, 2011 at 21:27

I'm not going to pretend I have some rebuttal to the issues you have with version tags; they're perfectly reasonable general arguments for why version tags aren't the ideal given your experience with other Stack Exchange sites. Instead, I'm going to talk a little about the Drupal culture.

The Drupal project, and its community, has been running for over 10 years now. It's had a long time to think about some of the pain points that affect its development. For example, it was decided early on that Drupal would not be backwards compatible, as it would give developers freedom to explore new ways of approaching a problem without the hassle of having to maintain a long chain of hacks to support outdated APIs.

At the same time, it takes several months (and in some cases, a number of years) to release a new major version, especially given the idea that any new version opens up the possibility to replace, wholesale, large sections of the core code for something better. Due to the time between releases, entire ecosystems are built up around a major version. One might invest a lot of time, effort, and resources into building dozens of websites or large-scale project on a specific major version.

Because of this, Drupal has built up a culture of simultaneously supporting two, mostly-incompatible versions: the current released version and the previous version. People are free to choose between which version they want to use for the entire lifecyle of that version's support.

So even though Drupal 7 was released in January, Drupal 6 will continue to enjoy a healthy ecosystem for at least another year (if not two years).

This is all to explain that one of the major support pain points the Drupal community has identified over the last decade has been identifying and encapsulating the major version someone's working on. There are a few cases where a specific task is handled exactly the same way between major versions, but any backwards compatibility is purely coincidental.

So someone wanting to help another person out with their problem is always (and I mean that in the literal sense, not the hyperbolic) going to want to know what major version they're running.

As someone interested in providing help, I may be an expert in Drupal 6, but haven't had time to get my hands deep in Drupal 7 yet to provide a useful (and ultimately correct) answer. Or, I may have moved past Drupal 6 and don't really have the time or inclination to provide Drupal 6 help.

Moreover, good solutions require some thought. A solution for a particularly tricky problem might take a couple hundred words to flesh out, and to require every answer to provide information on both versions is an onerous requirement for people who were willing enough to put in the time to provide an answer for the version they're an expert in.

Tagging by version helped with this pain point: it allowed everyone to know up front what solution the asker was looking for, it allowed people to seek different solutions for different major versions, and, perhaps most importantly, it allowed people to segment the questions based on what version they were interested in.

By removing (and banning them via the tag) those version tags, you've brought back a huge pain point in Drupal support. I know I'm dreading having to play the "what version are you using?" game on every question, or even have to sort through the questions to find the ones interesting to read/answer, because there's no systematic way to express that metadata.

I know your response to what I'm describing is that maybe Drupal.SE doesn't make sense: that if it's so important we segment by version, there should be a Drupal6.SE or a Drupal7.SE, and I understand that: truthfully, if we had to decide between no version tags and separate sites for each major version, the latter would surely be more preferable.

But that's not really how the Drupal community works. Major versions share the same general vision and the same high-level concepts, so they share the same community. It's that all the interesting questions, the ones that people need help with, are implementation questions, which change from major version to major version.

The value Stack Exchange provided to the Drupal community was a set of organizational tools to help increase the signal to noise ratio for people volunteering their time to help the community. With those tools now being restricted in the manner they've been restricted, that value proposition is diminished.

So the question then becomes, how is this site, in a real and substantive way, helping people get answers better than the variety of support options Drupal users have available to them? Are we really doing the Drupal community (and the internet) a solid by having yet another silo of questions that makes Drupal experts queasy when trying to sort out the best way to help people?

  • 1
    I had to planned to not comment here anymore, but you did a great job at explaining it :) I think the ultimate solution would be to have, instead of mis-using tags, a list of checkboxes for each active Drupal version for questions and answers to tick off for which version(s) something is relevant. But I assume custom features like that aren't going to happen for a SE site. But's something that we might be able to integrate into our own Q&A support site on d.o, if that is ever going to happen :)
    – Berdir
    May 25, 2011 at 20:06

Jeff, you and kiamlaluno are making such a mess of this site. Please stop making rash changes like banning tags…

You may have different ideas, but everywhere in the documentation on Drupal.org, it's tagged with what version it pertains to. If that causes problems with the StackExchange software, perhaps it's the software we need to fix?

If we were to build a QnA site in Drupal, we would just have the version as a separate attribute instead of tags, but since that's not possible with SE, tags will have to do. Versioning info is so important that the QnA is useless without it.

Examples are fairly easily translated from one version to another, but you need to know what version the example code is, to realise that you should expect an object instead of an array or whatnot.

  • 2
    The version, if relevant, should be mentioned in the body (or even the title). Requiring it as a tag is part of the problem for all the reasons in the body of my question. May 24, 2011 at 17:06
  1. I agree that using tags containing the word drupal is not helpful, as the site is about Drupal. Others reported that "Drupal 7" is the way a Drupal version is reported, but that has nothing to do with how a tag should be named. If the problem were users keeping to use instead of , the first could be made a synonym of the latter; in that way, no tag used in questions would contain "drupal."

  2. It seems it is already happening, as some of the recent questions just contain the tag for the Drupal version:

  3. I don't think that questions for Drupal 5, for example, are restricted in time; it is still possible to download Drupal 5 and, for what it matters, Drupal 4.7. The fact they are not supported anymore means only that bugs will not be fixed anymore, in the same way there are things in Drupal 7 that are not changed anymore; it does't mean Drupal 5 could not be used for a website.

  4. It is possible that the same question is asked for Drupal 6 and Drupal 7, in the same way similar questions are asked about Perl 5 and Perl 6. Supposing there is already a question about Perl 5, what should a user who is interested to know the answer for the same question for Perl 6 do? There are many things that are changed in Perl 6; for example, in Perl 6 is not possible to use __PACKAGE__ anymore; where Perl 5 uses foreach my $x (@whatever) { … }, Perl 6 uses for @whatever -> $x { … }; where Perl 5 uses $str =~ m/^\d{2,5}\s/i, Perl 6 uses $str ~~ m:P5:i/^\d{2,5}\s/.
    The difference between a programming language, and a CMS is the time between new releases. How long did we had to wait before to pass from PHP 4 to PHP 5? How much time will pass between the first release of Perl 5 and the first release of Perl 6?

  5. Considering that the current Drupal version (as defined in drupal.org) is Drupal 7, taking the assumption that new questions are about Drupal 7 is a wrong assumption. There are 627 questions tagged , 573 questions tagged , and 5 questions tagged . All those questions have been asked when Drupal 7 already had an official release (which means any release that is not a development snapshot).

To make a summary, I am not against removing the Drupal version tags, but that will not stop questions for which the user is interested in how to do something using a specific Drupal version, in the same way nothing has stopped users to ask a question about the regular expression to use to resolve a specific task, instead of making the question as much generic as possible.
If we are going to remove those tags, then they should be blocked; questions about Drupal on Stack Overflow are using those version tags, and we would need to avoid the tags are imported into Drupal Answers.

  • 3
    we have to teach users that version tags should only be added when they have actual evidence that what they are asking about will only be relevant to that one version, for the rest of recorded human history. I'm not against them existing, I am against a culture of indoctrinating users that every question has to have a version tag -- and that is kind of what is happening right now on this site. May 22, 2011 at 4:01
  • 2
    @Jeff Atwood The problem is that such evidence could not be provided by who asks the question, who is not supposed to know the differences existing between a Drupal version and the other. There are many questions for which to know the Drupal version is necessary to give an answer that doesn't say "if you are using Drupal 5, then […]; if you are using Drupal 6, then […]; if you are using Drupal 7, then […]." Drupal is not C++; with C++ you would not ask for which version of C++ the question is being asked, but with Drupal the version is a necessary information, if the question is not generic.
    – apaderno Mod
    May 22, 2011 at 5:20
  • For example, I could ask if it is possible to do X with Drupal, and in that case, an answer that would report that it is possible in Drupal 6 (and how) and in Drupal 7 (and how) is perfectly fine. In the case somebody is trying to resolve a problem, or to achieve a task on their site, they are interested to know the answer for their site, which is using a specific Drupal version. You cannot use two Drupal versions to run a site.
    – apaderno Mod
    May 22, 2011 at 5:28
  • 1
    this implies there needs to be drupal6.stackexchange.com and drupal7.stackexchange.com because the two are so radically different. I am moving to close this site if that is true. May 22, 2011 at 8:29
  • @Jeff Atwood I don't think the situation for Drupal is different from the situation for WordPress. I am sure there are features, functions, settings that are available starting from version X. I fail to believe that the user interface of WordPress 2.x is the same used by WordPress 3.x.
    – apaderno Mod
    May 22, 2011 at 9:39

Version tags are redundant. The site is already called "drupal". We don't need to know that it's drupal-6, drupal-7, drupal-8, drupal-9 in every single tag on every single question. It's redundant.

This is not true. To answer a question properly we need to know what version of Drupal is involved. Drupal 4, 5, 6 and 7 are vastly different. Any answer beyond the most basic given to Drupal 4 or 5 would be completely useless for a Drupal 7 site. What you are saying is like saying We don't need to know what programming language is used, all we need to know is that it's about programming for the SO site. I know it's not exactly the same thing, but what I'm saying is that Drupal versions are vastly different and an answer for one version could be outright wrong for another one.

Version tags are a crutch. Because these tags dominate the site, and contain the name, they are the first thing users will turn to when tagging their questions. This means users will fail to tag questions with any other meaningful tags, since "I already tagged my question with drupal-6!" This isn't hypothetical. We've seen this happen time and time again. Version tags are a mindless replacement for thinking about what your question is about. "Oh, this question is about drupal-7. Done."

I can see how this can be a problem

Version tags make questions disposable. The entire point of Stack Exchange is for questions to be editable, timeless resources -- a version tag implies exactly the opposite and ties questions to specific moments in time, with no incentive to improve them to be relevant to future versions. This is extremely dangerous!

You cannot make timeless answers for Drupal for many reasons. The API changes a lot, the modules used changes as well, and standard ways of solve certain problems is created. My guess is that about 90% or more of the answers created thus far is completely irrelevant in 4 years, since Drupal will have evolved. Not tagging questions can fix this, you would have to stop the development of Drupal core.

Version tags encourage needless question duplication. Rather than "How do I do X?" which can cover both supported versions, now there has to be "How do I do X in Version 1?" and "How do I do X in Version 2?"

This is both true and false. It's true that you would have to create the same question for Drupal 6 and 7, the alternative is to create an answer for each version with some answers. IMO this is much more problematic. You can't tag answers so you have no other way than writing it in the text field that an answer is related to this and this version. Over time such a question would have many different types of answers, some to one version or the other, some to multiple versions. The number of upvotes can be related to which version was used most at the time etc. So when a user is redirected from Google, how should he be able to figure out which answer is useful. He need a Drupal-9 solution, but since there is no way to filter the question or answer he would have to read through all the answers making the voting system useless.

Version tags aren't necessary for most new questions. New questions are very likely to be about the current version of the software -- so for all new questions, tagging with the current version is usually not helpful.

This is true maybe 1/2 of the time. Drupal have a very long period where two vesions are used equally, since a lot modules which is used all the time, need to be ported to the new version, which last time took about a year or so.

I understand some of the dangers and problems that can arise by using version tags, but it seems to me that not using them will create a lot of problems as well, only different ones. For this site to succeed, we need a way to be able to filter on version. It would make more sense to "tag" an answer with a version tag and not the question. This would be a great feature to allow tagging answers with a small selection of tags, but this is not possible atm. So we only have one thing to do, and that is tagging the question. The alternative is to write the Drupal version in the title of the body, or figure it out by asking in comments, which would slow down the whole answering process.

  • 3
    The version, if relevant, should be mentioned in the body (or even the title). Requiring it as a tag is part of the problem for all the reasons in the body of my question. May 24, 2011 at 17:06
  • @Jeff So you would considder it an improvement to have most questions called "Drupal-x: How..." instead of using the tag? This doesn't change anything for point 3-5, it will simply move the info away as an tag and into the title instead. As for #2, how many questions do we have only tagged drupal-x ?
    – googletorp
    May 24, 2011 at 17:25
  • 2
    @google [drupal-7] is a meta tag, by these rules. blog.stackoverflow.com/2010/08/the-death-of-meta-tags Ask yourself this: could a question be tagged only [drupal-7]? No, it cannot. Therefore this tag is a meta-tag. I support this tag being used ONLY WHEN THE QUESTION IS IRREVOCABLY TIED TO A SPECIFIC VERSION and obviously in combination with other tags. May 24, 2011 at 17:56
  • @jeff Actually I don't agree with the above comment. If I want to answer the question, the most helpful information I could get is the major version of Drupal involved. Also it's not a meta tag as it describes the content of the question. Fx, the node_load function in the code text, which API is used? This is explained via the version tag.
    – googletorp
    May 25, 2011 at 9:09
  • 2
    Another thing that strikes me as strange is that if we migrate the Drupal site with a bunch of other site like SO, it would be fine to use the version tag for all Drupal questions, but in it's own site this is bad behavior. So on SO you would tag questions drupal and drupal-X. This is done for maybe 50% of all new drupal questions on SO, which you deem perfectly fine.
    – googletorp
    May 25, 2011 at 9:14
  • 1
    @google correct, on the wordpress site nothing needs to be tagged [wordpress], on the apple site nothing needs to be tagged [apple], on the GIS site nothing needs to be tagged [gis], on the math site nothing needs to be tagged [math]. You are here because .. wait for it.. you expect ALL questions to be about Drupal. The tag is unnecessary. And in fact harmful. Questions need to contain enough information to be answerable without relying on meta-tags. May 25, 2011 at 9:18
  • 1
    @Jeff putting it into the title or depending on users remembering to write it in the body text is even worse. StackExchange really needs a system for this kind of metadata. If you can’t provide that, we’re forced to do nasty hacks, be it abusing the tags or the title. We don’t want to ask “What version of Drupal are you using?” every time a new question is posted. The high and almighty Stack Exchange Inc. have decided that meta tags are bad. You can’t come up with a better alternative, but it's your ball, so you can just take it and go home…
    – mikl
    May 25, 2011 at 11:15

You must log in to answer this question.

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