On what community questions board should I put I question?
This does seem like a huge human organization question. For example, there is the systems administration tool, Puppet, which uses a configuration language to build one machine or synchronize an entire data center. That is, there is a systems administration tool (SuperUser, 3 questions), Puppet, which uses a configuration language (StackOverflow, 90 questions) to build one machine or synchronize an entire data center (ServerFault, 65 questions).
There may be no one place for these questions to live, and places where they should most likely live. While communities may have different emphasis, everyone wants to know how to get past a problem of 'it doesn't work'.
Today, there seems to be a Million Monkeys of effort: Items get posted randomly, and give people some mechanism for duplicating the question and its answer stream onto another server. Of course, notifications and changes get lost. And things get out of date. And its a mess. And maybe we need more people, right?
Alternately, we have an opportunity for real community building that links the knowledge to the community.
Smart Tags: Add some special abilities to Tags. One could mark tags as primarily associated with one site and suggest that the asker move to that site. Entering a question with the flag Puppet should suggest that Puppet questions be put on ServerFault, and link to a ServerFault page that would keep the data entered so far. Further, we could avoid the human effort by computing weights on different communities and suggesting based on the weight difference between the current community and the highest weighted community.
One weighting algorithm:
weight = % of questions on the board with that tag.
and for multiple items:
weight = product for each tag of (% of questions with that tag)
Just 'puppet' gives a normalized score of .06 for StackOverflow, .03 for SuperUser, and 1.0 for ServerFault (play with a spreadsheet). New Puppet questions would be suggested towards to Segment Fault.
You might get multiple suggestions per question, if you are asking a "Python control of Puppet, should I set Uid or not?". You might just sum up all the tags weightings for each board. If the result is reasonably close, don't make a suggestion. But asking about "Puppet" and "Apache" together would suggest ServerFault with a score of 1.0 versus StackOverflow with a score 0.008.
Unified Search: To get the 'one true search' effect across all community, we just note that the tag searched might be better searched on another community and provide a link to do that search on the appropriate community. This allows users to more effectively sort themselves into the correct community. It also redirects the effort of humans trying to persuade people to switch communities.
The amount effort seems reasonable: the tags are computed occasionally and a feed of the tag weights is made available. A site would pick a list of sites from which to pull tag data, which keeps "Python" for fighting between Stack Overflow and Pet Lovers. Some UI changes occur.
I would like comments and enhancements. I guess the next step after comments is to for me to code it and submit a patch somewhere?
To summarize, I suggest these code changes:
- Tags are assigned a score reflecting the frequency and relevance to that community. These scores are computed occasionally, and those scores are available to other communities.
- A community may choose to react when questions or searches use tags that are more relevant on a related community. When asking a question, the user may be prompted that another community is more relevant and provided help to move the question to the other community. When searching, the search results may suggest that another community will provide more relevant answers.