I've had some time to think about my suggestion more and have refined my opinion a bit.
Solar wrote:
I'm a big fan of StackOverflow, but if you look at the difference between stackoverflow.com and superuser.com, you'll see how much of the "drive" behind SO depends on the sheer number of users. (Which they actually state on the SE site: "A Stack Exchange Q&A site only works when it has critical mass: enough people have to go there every hour so that questions get answered.")
Point taken. I've been listening to the StackOverflow podcast this week, and it seems the founders of SO also recognize this, which is why they're moving StackExchange to a more controlled community-building process. Sites without critical mass won't work. I don't think there are enough OS developers with the same kind of focused interest to create a new StackExchange community.
But, what about StackOverflow itself? Hear me out...
IMO the reason we keep having this debate about newcomers to the site is because the site (forums + wiki) are not fulfilling all of its users' needs. OS developers need:
- Good reference material where they can dig deeper into subjects like memory management, hardware details, general OS architecture, etc.
- A community of like-minded people that they can socialize with and have more general discussions.
- A site where they can get their specific questions answered.
The wiki is designed to fulfill #1. Right now, the forum is trying to fulfill #2 and #3, and that's where our problems are coming from. The RTFM'ers are interested in #2 and not so much in #3. This happens to all communities over time as the knowledgeable members start to get bored and resent having to answer the same questions all the time from beginners.
My proposal is this: Let's continue to keep the wiki and forums around, but start using StackOverflow for #3 instead of the forum. Whenever somebody comes in with a specific question, we repost it on StackOverflow tagged with [osdev], along with the answer (or ask the questioner to post on StackOverflow and tag it with [osdev]). When someone has a more general, subjective question ("What qualifies as a microkernel?" is a common example), we can keep it on the forum and use the ensuing discussion to beef up the wiki.
StackOverflow works really well, even for technically advanced narrow topics like OSDev. It's high time we make use of this valuable (and free) resource and put OSDev Q&A where it belongs instead of continuing this pointless and destructive conflict between old & new forum members.
In light of this modified proposal, here are my responses to Solar's specific concerns:
Solar wrote:
I also don't believe in hosting our knowledge on a third-party system, and one in beta phase to boot:
Agreed about StackExchange. However, StackOverflow is not in beta and all content is available under the Creative Commons license.
Solar wrote:
One, there would be much work involved in transferring our existing knowledge over.
There's no need to transfer everything over. Nobody would have the time or patience anyway. I suggest just moving basic, objective Q&A over there one question at a time, as they come in. The incremental effort to re-post the question and answer on StackOverflow is a lot less than the energy people waste flaming and RTFM'ing each other. If we link to StackOverflow in a very obvious way on the main forum page and make using it a standard practice, eventually people will stop using the forums for Q&A and go there instead.
Solar wrote:
Two, I don't think SE caters to the kind of tutorial / descriptive / technical documentation we have here.
I totally agree, in the context of SO too. That's why it's important we keep the forum and wiki, but use them for what they're good at (general subjective discussion and reference, respectively).
Solar wrote:
Three, and here I actually agree with brine32, if we got a weak point, it's the OSDev / General Programming forum - the Q&A thing that spoon-feeds people custom solutions. Which is exactly what SE caters for: Not going for FAQ links, but to give individual answers in hopes that they get upvoted. (You remember the opposition against voting systems in this forum?)
If I understand correctly, you're worried about the incentives leading beginners toward copying & pasting tutorial code rather than learning the concepts themselves, right? I have mixed feelings about this, but here are a couple things to consider:
- On StackOverflow, you can vote on questions too. "Gimme some code!" questions should be ruthlessly down-voted and largely ignored; Same with duplicates.
- If people want to waste their time copying & pasting code on SO, I say let them. As long as it's not happening on the forums, it's not bringing down the quality of discussion here.
Solar wrote:
Four, something like SE doesn't cater for information presentation (as in the "Expanded View" of the Wiki) or interlinking of information. Yes, you can link, but you don't get something like BackLinks or WantedPages, the strong points of a Wiki.
Agreed. That's why we need to keep the wiki and expand on it. I see StackOverflow as complementary to the forums + wiki, rather than a replacement for it.
Solar wrote:
Five, and here I disagree with brine32, I think we need the forum, as JackScott said, for the socializing and peer review of ideas. SE doesn't cater for that either.
Agreed.
Solar wrote:
Six, hosting our knowledge on a third-party service makes us dependent on that service. We could back up the current Wiki / Forum and rebuild elsewhere with comparatively little effort, something I don't see with SE.
When I mentioned SE, I didn't realize at the time that they were moving away from just selling the software directly to running the sites themselves. However, if we use StackOverflow instead, we will have access to a
full public data dump.
Another benefit of putting our Q&A on StackOverflow is that it dramatically increases the number of people available to help newcomers with their general programming questions that are prerequisites for OSDev (C questions, questions about GCC compiler switches, etc.).
I've been following StackOverflow since its inception and thinking about how it could fit with the OSDev community. I really think this would improve things for everybody and is worth a shot. If you want an idea of what this could look like, I submitted an OSDev question there back in 2008:
http://stackoverflow.com/questions/3290 ... ity-v0-forI was really happy with the responses.