Why did they even bother breaking stackoverflow into various similar-yet-different websites? Originally, a question only needed to be specified by the associated tags. Now, in order to post a question the user needs to also pick the appropriate website AND the correct tags. I don't think having multiple websites actually made anything simpler; they give more room for people to bark at each other about asking in the wrong place.
All that each website does is provide a filter so that when you want to browse through it, you see questions that are generally related by a certain topic. Wouldn't this have been better created with user-defined (or pre-populated default) tag filters and having remained contained in one website?
I agree with your argument on a logical, rational level. I can concede, however, that "branding" is important to people in ways they rarely care to admit. Having "a site" can feel different to people than carving out an area of interest with a search query, especially on a site with a "community." Communities form around sites and brands, not search queries.
That said, I still agree with you despite appreciating the nuances of bizarre human behavior ;-) Sites like MetaFilter, Reddit, and Hacker News (to a lesser extent) have managed to spread their brands into multiple topic areas (and multiple "sites" in Reddit's case) without diluting people's sense of being a Mefite or Redditor.
I agree with your argument on a logical, rational level. I can concede, however, that "branding" is important to people in ways they rarely care to admit
Bingo. One thing I remember from Jeff & Joel's podcasts when I listened to them was how much thought they put into facilitating a sense of a community on the site. Another is being surprised how technically competent Joel is, when it comes to technical CS stuffs (explaining the difference between the halting problem and NP problems, for example). He's also certainly no newbie when it comes to building a brand with a following.
While I agree that we need more people with deeper CS knowledge in the business, your particular example (halting problem and NP) is somewhat strange. Any CS student should have learned this in the 3rd semester or earlier, at least in my university. I wouldn't count that as an example of great technical competence.
The halting problem, logic, complexity classes, type systems, evaluation models etc are basic concepts. So I'd rather be surprised if anyone who's said to be competent could not explain those.
I'd be surprised if the average person who's been out of school and programming for at least a decade, let alone moved mostly on to managing programmers, could still remember the difference between an NP complete problem and the halting problem at an "can explain it to your grandmother" level.
I disagree, because the NP completeness and halting problem are very different concepts. Confusing those means not having understood them in the first place.
However, things would be different if it was about something like "NP hard" vs. "NP complete" vs. "NP". That kind of details are easily forgotten if one doesn't work in that field.
Well, BQP and FBQP are very different concepts, but I doubt anyone who hasn't actively studied complexity theory in the last few years could explain the difference. Same goes for NP-complete and Entscheidungsproblem; if you don't use it, you lose it.
I mean, anybody with a CS degree should know that the halting problem has something to do with predicting whether a given Turing machine will ever stop; but that's not "explain it to your grandmother" level.
The halting problem, logic, complexity classes, type systems, evaluation models etc are basic concepts. So I'd rather be surprised if anyone who's said to be competent could not explain those.
I haven't asked for it in interviews, but from my experience of about two dozen technical interviews and phone screens, I'd say only 1 or 2 people could tell you even a general definition of "halting problem" and "evaluation models".
So this is interesting - where are you located? Does your experience stem from interviewing in industry, or your coworkers at a Stanford research lab? ;)
Here in Germany I guess the rate (1 or 2 out of two dozen) is similar. But that's not because our universities don't do their job. It's because most software developers didn't (or failed to) study CS in the first place.
They either didn't even start it, or they dropped out, or they studied something else that doesn't deliver the theoretical basics (e.g. "IT systems engineerings" and other things with expressively long names).
However, there's such a big demand for software developers that they come quite far without any formal qualification.
And most of them do quite a good job! ... until things get more complicated.
(FTR: I'm a student at the Humboldt University of Berlin, but I think the other universities have similar standards. I'm also co-founder of a small software dev/hosting company.)
The problem is that topic nazis will jump all over you (i.e. close your question as off topic) if you dare ask a question that might be server administration based rather than a programming question.
Perfect example there where "server" + "administration", or heck even "server" alone, in the text is sufficient to classify the question. Add additional terms and classification gets more and more discrete.
Tags are necessary for photos. I don't see how text is the same problem at all.
I somewhat feel the same way about twitter's hashtags. All it does it eat up the limited space already allocated. Why are you not putting words related to the topic in your tweet already?
I always felt that the hashtags were a good idea, but that everybody was using them wrong.
If, for example, my tweet looks like this:
"I had a great time posting on Hacker News #hackernews, #great_time"
then I am doing it all wrong. I thought the smarter implementation would be to do something more like:
"I had a #great_time posting on #hackernews"
It doesn't eat up as much space, but the inclusion of the hash allows for content grouping and all the other nonsense it provides.
The first time I saw it used in the first way, I was kind of sad for the author, as I believe that the intent was for them to replace words, and the author just didn't get it... but I've seen it misused more than I haven't, so either the world at large is doing it wrong, or I am misunderstanding something.
This works best in (mostly) isolating languages like English. If your grammar forces you to modify words, you need some workarounds. Say, define certain tags as synonyms of each other.
What really saddens me is the necessary information is in the text already, especially when considering co-occurrences, to keep everything as one big happy family. The text separates the topics, we just have to be careful in calculating the differential weights.
It's a fair question. Watching Stack Overflow's balkanization is a little worrisome. It raises the complexity of the product, which adds friction to the task of getting a question answered. It's easier to go to the wrong place than it is to have content re-classified.
It is terribly annoying and often has hit me myself. Some programming related question about Xorg? -> moved to superuser. Some filesystem question about iPhone on superuser? -> closed because mobile phones are offtopic. Some question about OpenID on superuser -> moved to serverfault (actually, it has pointed out in the end that it was programming related...). Question about JVM performance -> closed as too argumentative. Question about Bash on stackoverflow -> moved to serverfault (because I didn't put the word "programmatically" into my question). Question about ACL in the MacOSX filesystem on stackoverflow -> moved to superuser.
Ok enough of this. The point was probably already clear in the original post.
I really wonder what we can do about it. I like Quora for being universal. And I like Stackoverflow because of the somewhat better management (despite all the different sites) and many details. And the killer argument for Stackoverflow: Everything is open, all content becomes cc-by-sa and I can download the full database. Sort of like Wikipedia. And I often get much more and better answers on SO (probably just because more people are using it).
So I mostly end up asking on SO (or related sites).
I am not sure if they ever will fix/change this mess. I hope that they do at some point but I actually doubt it.
Maybe another solution would be another, new and open solution which just works as SO but is just as general as possible (and some more simple way to filter for a bunch of tags). The database of SO could be imported there and some metasearch-engine could also be linked with it which automatically searches and links questions on other sites.
I would say that Yahoo Answers, answers.com, allexperts.com, wikianswer, askville, answerbag, yedda, and the hundreds of other generic "answer" sites have proven that this is a bad idea.
There is still a difference and that difference might be the key. Also, if you take all SO sites together, you still have the very wide common topic "technical".
If the topic becomes even wider, some clever tag-filtering/handling may be needed so a user could view the questions like they have been before. Also the reputation could be tagged base.
In any case, just because not-so-well-made and not so technical-centered sites with not anywhere near the features of SO have failed is not a proof that a general answer site is a bad idea.
Why? Those sites have done pretty well. I think it's a good idea. I really am annoyed by the variety of SO sites and the juggling you get when you encounter something that requires an overlapping of disciplines. It's pretty common for sysadmins to need to do a bit of programming and programmers to do a bit (or more) of sysadminning, and the questions aren't always immediately separated.
It should all be consolidated into SO and SO should be given "super-tags" or "categories" for server admin, programming, etc., and then you don't need a bunch of different sites/designs with fewer users. In short, take the reddit approach; allow users to subscribe to categorized channels that interest them and compile the front page based on that.
I use both StackOverflow and Quora every single day. I think StackOverflow's approach of staying on topic and building a community around a topic is great for bootstrapping. But in the long run I think the Quora approach is better.
I like seeing startup topics and then serendipitously seeing topics about motorcycles. I don't think I'll ever see a StackExchange topic on motorcycles.
Linux - 1. a free Unix-type operating system. 2. (technical) the kernel of that operating system. See also GNU+Linux, GNU/Linux, Stallman R., bikeshedding, pedantry
END-PACKET
Ubuntu is a distribution of the Linux OS, so there is likely to be a large overlap in the questions - e.g. "How do I do X in bash (BTW, I'm on Ubuntu Randy Racoon)?" Many users may not want to ask a question outside the home forum of the distro they installed; conversly, most questions will apply to more than one distro. Merging these makes sense, except for community effects.
Of course there's going to be an overlap, amplified even further because most (non-technical) people will ignore the difference between the two.
My point was that the two communities' lack of support for the merge is not really an application of "the narcissism of minor differences": the overlap exists, but it is not that important, at the moment. Perhaps in time, such a merge will be justified and users of those two sites might acknowledge that.
As a topic of questions? I think not. I believe that most people when thinking "site for questions about Linux" would include both kernel and Ubuntu questions within the scope.
And of course a lot more - gnu tools, "which distro?" questions, advocacy, apps-related questions, libs, configuring the X server...
I'm not going to argue semantics here; if you happen to have noticed, the Unix/Linux, Ubuntu and SuperUser sites all have overlapping areas of interest. Does that mean they should all be one? The StackExchange people seem to think not, and when it comes to justification on appropriate and on-topic questions, the meta sites and the opinions of the moderators are good enough for me.
Not sure who down voted you, you have a good point. I'm not a big StackOverflow follower, but if I had a generic kernel question I wouldn't ask it on a Ubuntu Q&A forum.
That's true, but feels very specific still for a whole site. Imagine if stackoverflow itself was on that specific a topic area. It would have never got big originally.
This whole post perplexes me. I had no idea that there was such a thing as a StackOverflow 'community'. What's important to me is that Google (or whatever) gets to crawl the questions/answers (and tags, I guess, since I hadn't really noticed them either).
The problem with forking is that while in the past I would quickly go for the 'StackOverflow' google links (since I've seen that the brand really stands for knowledgeable & helpful), now I've got to recognize more brands?
Don't get me wrong : StackOverflow is an excellent resource, and I would definitely be a contributor if when one tries to 'up vote' something it didn't force you to log in with an unfriendly message... Perhaps the UI could track my mods (and meta-mod them) and pop up a box that says : 'you look like you know stuff - please Join Us!'
I've got a strange feeling that they could leave the sites in one piece if they allowed users to completely remove some tags. Right now you can ignore some stuff, but that doesn't always help. As much as I'd like to ignore-but-not-remove some questions (like Ruby-related ones - I don't use it, but would be glad to keep an eye on what's happening there), I also want some of them to disappear completely. For example right now there are ~10 iphone / ipad / iwhatever / obj-c related questions. I don't have any interest in those technologies and they just get in the way. To lesser extent this applies also to flex, asp.net and java-ee for me.
I'm really surprised this option is not available and I think that for many people this would be sufficient to actually remove many off-topic questions from their view. No need to split the community, since people might actually see something random they know answer to, even if they're not interested in the area normally - for example many sysadmins could give quick answers to most of the "programming" bash questions.
Well... that actually removes one part of SO I like - sometimes I read a question that seems interesting in some way, even though it's not from my area of expertise. It makes it easier to find out new trends, sometimes discover some cool libraries / ideas I should look at, etc. I like the randomness of the frontpage. Or actually, I liked it before half of the page was grayed out.
All that each website does is provide a filter so that when you want to browse through it, you see questions that are generally related by a certain topic. Wouldn't this have been better created with user-defined (or pre-populated default) tag filters and having remained contained in one website?