It's hard to even begin to answer a question like this because so much of the history of this community is steeped in the "anything goes" philosophy that it originated with.
Many of you may view me as being pro-moderation, but I want to remind those people that I argued against the merging of proposals like testing and architecture and software law into Programmers.SE because it was diametrically opposed to the community's collective mindset, not to mention the proposal's original stated purpose. I was in favour of it remaining as a free-for-all. Nevertheless, that merge happened, primarily because the team was not satisfied with this being a water cooler, and so here we are.
I don't want to try to define in this answer what the site's scope should be. My aim here is merely to highlight the identity crisis that this community still hasn't quite put behind itself, which must be resolved before it can successfully put anything into policy.
Let's start with what's in the FAQ today:
- Software engineering
- Developer testing
- Developer tools and techniques
- Practical algorithms and data structures
- Design patterns
- Architecture
- Development methodologies
- Quality assurance
- Software law
- Code golf & programming puzzles
- Freelancing and business concerns
This reads like the description of a site for professionals. Indeed, I'm sure that many of us (although certainly not all of us) want it to have a professional, if quirky, tone.
Now let's look at the top 15 questions:
- Will high reputation in Stack Overflow help to get a good job?
- Does giving a developer a slower development machine result in faster/more efficient code?
- What is the good/bad decision you made in your mid 20's about your career
- Make a big deal out of == true?
- Stuff every programmer needs while working
- What's your favourite quote about programming?
- What's the most absurd myth about programming issues?
- What's your experience with female programmers?
- Will programmers be around in a few years?
- Why are so many programmers arrogant?
- What are the worst false economies in software development?
- Do people in non-English-speaking countries code in English?
- What is the (craziest, stupidest, silliest) thing a client/boss asked you to do?
- I've stopped coding for fun, is this a bad sign?
- How can a new programmer impress the software engineer (boss)?
Two of these are closed; if you go further down the list (I won't, in order to keep this long-winded post as short as possible) you'll see that fewer than 1/10 questions are actually closed; #9 and #10 are outliers in that respect.
So let's now ask the question: Which of the top 15 (or indeed, top 25 or even top 100) questions actually fit into any of the sub-topics outlined in the FAQ?
- Could maybe be lumped in under "Freelancing and business concerns"
- Nope.
- Definitely not.
- Nope.
- Double nope.
- Nope.
- No...
- Eh...
- Er...
- Dear lord no.
- Also maybe "business concerns".
- Nope.
- Triple nope.
- Nah.
- No.
To be clear, I am not saying that these questions are all off-topic or don't belong here - only that they don't match any of the topics listed, and that is bound to lead to confusion over what's actually on topic here.
Perhaps what's actually needed are a few more topics in the list, such as:
- Coding style (#4)
- Software Career Development (#1, #3, possibly #8 and #14, #15)
- Software Project Management (#2, #5 with major edits, possibly #8)
Other questions in the list do seem to be "programmer" specific (to varying degrees) but can only really be classified as "general interest", "poll", or even "rant".
So there's a definite impedance mismatch here. Officially, you guys are saying that this site is for the professional working programmer, the senior developers and maybe a few of the juniors, people who are looking to broaden their software skill set beyond just coding. Ostensibly, it's a Q&A site for developers truly committed to creating better software.
But the questions and votes tell another story. Even if we rule out the rants and jokes in the questions and answers - the ultimate removal of which is an unenviable task that is nowhere near complete - the site appears to cater to the casual programmer or even the aspiring programmer. People who are just getting into software and are frustrated or confused. People who want to reach out and exchange stories and water-cooler chat with other programmers and maybe learn a little bit in the process. It's like the "Programmers' Pub". I'll take the Language Holy War with a side of Pointless Bitching, please. And do you have Cartoons on tap? No matter, a bottle is fine.
Again, I don't want to be prescriptive here. If that is to be the scope of the site, that's okay. It's also okay for people to occasionally argue about whether or not a specific question reasonably fits in scope. However, it's very unhealthy for the community to be split down the middle on what the site is supposed to be about. Programmers.SE is a confused adolescent, just about to graduate with no idea what to do next. Will it be an exciting but hollow affair with Mrs. Robinson, or an uncertain, awkward bus ride into the horizon with Elaine?
I'm sorry to be so dramatic, but Programmers.SE seems to have effectively become center stage for the epic and probably never-ending battle between inclusionists and deletionists. Stack Overflow isn't about to dump its problems on you, it already has dumped its problems on you. And because you no longer have the trusty metaphorical lanterns of code and objectivity to help you navigate through the proverbial fog, I don't think you can continue to play both sides the way that Stack Overflow did. A few migrated questions are not going to make a lick of a difference when most of the frivolous questions are already originating here; you guys have to decide what you're going to be when you grow up, and you have to decide fast.
I would love to write out a long list of examples of questions that should be closed or redirected to an Area 51 proposal. But right now, I have no idea which of the Area 51 proposals you've listed are actually supposed to be off topic here. There are already so many questions here about career advice, project management, interviewing, freelancing, brain power, etc., almost none of which are closed, that you can't start applying a bunch of arbitrary scope rules to new questions and expect them not to end in kicking and screaming.
If you want a broader scope than what's spelled out in the FAQ, then you need to broaden the scope. You need to come up with a definition that actually encompasses all of the subjects that are being talked about here today and currently considered on topic. You need to revise the FAQ. Normally this all would have been settled in Area 51, but Programmers.SE did a 180 halfway through, which makes matters more difficult.
And if you actually want the scope to be what you currently have prescribed, then you need to start enforcing it on existing questions before you can even talk about what you're going to do with new questions. Start by closing the most massively-upvoted off-topic questions. Then observe patterns and see if it makes sense to point people to new or existing Area 51 proposals. Then consider deleting the off-topic questions so that they're not sitting in the top 50, confusing the hell out of everyone.
Either way is fine. I have no personal axe to grind here, no serious investment in this site one way or the other. Serious questions, fun questions, professional questions, newbie questions, I don't care. But I don't think you can do this piecemeal; you need to take a holistic look at what this site is / should be, because otherwise you will have people bickering over every single closure and migration (sort of like... right now).
I admire your efforts to develop a policy here but just don't think that the community is ready for it. Maybe Tim is right and you should just wait and see how things play out, although, speaking as a relative outsider, it doesn't look like that's been a very effective strategy so far.
Evidently, based on some of the comments in here, part of the community does not even agree that there should be rules. If you want to talk about restricting the scope, then you've got your work cut out for you; before anything else, you're going to need to address this sub-community directly and come up with some sort of compromise (or just lay down the law, whatever works).
My personal suggestion is to start with the hopelessly vague elevator pitch. "Sharing wisdom" communicates precisely nothing about who you are. If somebody's able to come up with a meaningful pitch that gets decent support, then maybe you'll have your answer as to what the scope should be.
That's my absurdly long-winded two cents. Take or leave it. Thanks for reading, if you got this far.