34

I find myself wondering if us janitors should really be on a campaign to eradicate CW questions entitled 'hidden features of X.'

The subject matter is on topic. Some people seem to learn from them. They sure don't have a single acceptable answer, but, isn't that one of the less offensive uses of CW?

OK, the strict construction is that CW question should still ask a question with a single answer, just one where it might be a team effort to construct the answer. Has anyone ever seen this actually happen?

Sure, the meaningless votes become a popularity contest, but, well, where's the harm?

1

12 Answers 12

12

I believe these questions are firmly outside of what the Stack Overflow / Stack Exchange system was intended to support. I also believe that one of the most important features of the sites is that we don't have to shut down every question that falls outside of the rules. The filter is flexible and flawed by design, so that the community can easily to choose to make exceptions.

For the Hidden Features questions, I think it depends greatly on the quality of the question as asked and the quality of the answers, and so we should evaluate these on a case by case basis. I think that will be okay, as long as we do have a place like this we can point to when we close questions that clearly indicates they are outside of what is normally allowed.

Personally, I learned a lot from these questions. I started on this site in August of 2008 primarily as a Windows Forms VB.NET programmer (and not a very good one). Within a few months I held the top ASP.NET spot (recently yielded to Jon Skeet), became one of the top C# contributors, and for a short time was #5 overall by reputation. A lot of it was due to the amount of time I was able to put in to Stack Overflow just answering questions during that period, but that's not the whole story. The other side is the amount of new knowledge and skill I took away from Stack Overflow, just by using the site. I experienced incredible growth as a programmer during that period, and Hidden Features -like questions, as well as some other more general questions that today would be quickly closed, were instrumental in how I gained the depth of knowledge needed to contribute at that level. I would be loathe to deprive others of the same gems.

3
  • 5
    It seems to me that there are pitfalls with closing questions based on the good or bad answers that they accrete, but I'm having some trouble articulating my reasoning.
    – Rosinante
    Commented Jul 12, 2010 at 1:29
  • +1 Such a good answer. They are useful questions. Do the literal original rules Joel and Jeff came up with really matter? Aren't these sites "owned by the community" now?
    – MarkJ
    Commented Jul 16, 2010 at 14:56
  • Yes, the rules matter. Most of the time we should follow them. But it's nice that, now and then, we don't have to. Commented Feb 26, 2014 at 15:17
38

I personally don't see anything wrong with these questions as long as they're made CW. A lot of them contain a lot of really good content, which to me is one litmus test (along with being programming related) of whether a question should stay on Stack Overflow.

I was tempted to suggest that we close and lock the existing "Hidden Features of X" questions to preserve the content, but I just noticed (after it was flagged as inappropriately closed) that Hidden Features of Java is now closed (not anymore). With Java 7 on the horizon (okay, maybe perpetually just over the horizon) I think there will be new and valuable answers to this question.

If it were up to me, these questions would stay.

5
  • 5
    I agree with this. You won't prevent these questions to come anyway. If you delete them, someone will just ask them again. The best to do is to handle them, make the best possible for them to be clear... And after some time, when they exactly reach this point where new answers won't get noticed anyway, they should be closed and locked. As for you "Java 7" case, I would be rather for allowing the creation of a "hidden/new features of Java 7", rather than reopening. Reopening won't change the fact that new answers will be invisible and hardly useful to anyone.
    – Gnoupi
    Commented Jul 12, 2010 at 13:08
  • 1
    @Gnoupi: That sounds like a good compromise for the Java 7 problem. Commented Jul 12, 2010 at 13:12
  • @Gnoupi: At 103 answers, the Java question is already past that point. At 304 answers for the C# question, that point isn't even visible on the horizon anymore.
    – Gnome
    Commented Jul 13, 2010 at 1:44
  • Asking new, specific questions about Java 7 seems a much better avenue. Even "Hidden features of Java 7" (i.e. a new question) would be more useful than trying to lump everything anyone has ever found nifty about Java into the current question.
    – Gnome
    Commented Jul 13, 2010 at 1:48
  • 2
    I agree, version no should be included in question. Sometime new feature make hidden feature of last version less useful.
    – Sharique
    Commented Jul 13, 2010 at 6:10
29

I’m a bit fed up with these deletionists. Stack Overflow is rapidly devolving into Wikipedia in this regard.

With one key difference: the deletionists on Wikipedia actually have one argument in their favour: who’s going to maintain irrelevant articles?

In contrast, maintainability just isn’t an issue on Stack Overflow.

“just noise?” My *ss. Stack Overflow isn’t a text you read from start to finish. First and foremost, it’s a search engine for answers. How then can individual questions be noise, unless they clutter search results?

It’s out of the question that these discussions do provide valuable answers. The onus is on the deletionists to prove that they are detrimental to the usability of Stack Overflow.

Rules are guidelines, not dogmas, and neither Jeff nor Joel could foresee any potential use of Stack Overflow, so why use their rules to justify ridiculous actions?

To repeat, I am a bit completely fed up with the deletionists’ attitude. It’s creating a lot of work for the rest of us, to save valuable content from closing and deletion. A bit more of a live and let live attitude would help a lot.

I’m also dismayed by the quibbling some users indulge in: just because many of the answers are not technically “hidden” features is no argument against the questions.

3
  • 4
    Many of these questions are not in danger of deletion, and not even close, with 200 or more delete votes required.
    – Gnome
    Commented Jul 14, 2010 at 20:27
  • @Gnome: the anti-deletionists rant wasn’t exactly restricted to these questions (just have a look at the list of recently deleted questions, it’s ridiculous), nor to deletion per se – closing is also done much too often. Commented Jul 22, 2010 at 18:39
  • 1
    Whoa, that opinion sure is controversial. Well, I’m not apologizing. Commented Jul 22, 2010 at 18:40
17

As a matter of practice many of these devolve into "favorite feature" polls. Evidence for this comes firstly from the pure number of answers. "Hidden"? Really? That many things that aren't right out there in the open??

Specific evidence can be found by simply glancing at a bunch of the high scoring examples.

Top answers of Hidden Features of C#?:

  • System.IO.Path.Combine()
  • lambdas and type inference
  • the ?? operator

Top answers to Hidden Features of C++?:

  • Using the ?: operator as a lvalue (OK, that probably comes as a surprise to lot of people)
  • Sticking URL into the source unquoted because they parse as a label and a comment (a "feature"???)
  • RAII, exceptions, template meta-programming, functors, using templates for type invariance (hidden right there in the STL...),

Top answers in Hidden features of Python:

  • Chaining comparison operators
  • Using the debugger on regular expressions
  • Treating generators as objects

and so on...

This weed should never have been allowed to take hold. Now that we've got them we're stuck with them, but we should discourage them none-the-less. Close and lock the popular ones and close and delete the rest.


I should add that the large number of response suggest to me that people are adding answers because the want to be involved not because they have anything to say. I know that this is very popular and people get a kick out of it, but if we allow these questions "because they are fun" why not every other type of "fun" questions and then where can we draw the line.

6
  • 1
    You know, I've been downvoting the haters in this thread, but I find this argument actually persuasive, even though some of your evidence is suspect. I mean, the first thing folks get confused on in C# is lambdas, and far too many people don't use Path.Combine() for my sanity. Still, +1
    – Randolpho
    Commented Jul 12, 2010 at 16:12
  • 4
    Most of these work if you substitute "overlooked" for "hidden". Commented Jul 12, 2010 at 17:38
  • 10
    When everybody can post an answer and not be "wrong" then there's no real value in the question. Or the answers.
    – random
    Commented Jul 12, 2010 at 19:01
  • 7
    "Favourite" is much more accurate than "Hidden", but then it becomes obvious that these posts are simply trolling for badges.
    – Ether
    Commented Jul 12, 2010 at 19:02
  • 5
    The last point is so true and frustrating. It's herding behaviour, psych 101, round up a big enough line outside a club and everybody on the street will start lining up behind them. At first, the questions are popular because they're easy, but after a while they become more popular because they are already popular. Some people join to fit in, some feel comfortable hidden in the sea of existing answers, some think they're clever enough to come up with something nobody else has yet (without actually checking), but the net result is always the same: An ever-expanding, quivering mass of duh.
    – Aarobot
    Commented Jul 12, 2010 at 19:27
  • 6
    If you look at the comments on these "obvious" answers, you'll notice that people <i>are</i> learning from them. Whether it's obvious to you is irrelevant. Commented Jul 15, 2010 at 16:01
9

My problem isn't with the fact that they exist; it's the fact that they inspire copycats.

The questions are completely acceptable on their own merits. They're a relatively inoffensive use of Community Wiki (as long as they are wiki). They generally have some good answers. People learn things from them.

The problem is the lack of any clear boundaries. As I've asked before, is there anything you can't substitute for the "X" in "Hidden features of X?" Can I start:

  • Hidden features of Visual Basic 5.0?
  • Hidden features of Visual FoxPro?
  • Hidden features of MUMPS?
  • Hidden features of SNOBOL?
  • Hidden features of Motorola HC12 Assembler?
  • Hidden features of notepad?
  • Hidden features of RadTreeView (or some other commercial add-on component?)
  • Hidden features of XML?
  • Hidden features of PowerBuilder?
  • Hidden features of LOGO?

More often than not, the text of these questions is quite literally copied and pasted from one of the previous ones. Little to no effort goes into creating them, and yet they tend to pay off huge dividends in terms of views and badges. Users have every incentive to spam every HF question they can think of to collect badges.

I really think that the only truly effective solution to add badge immunity to the already-established rep immunity for CW posts. Not to be applied retroactively of course, just for future posts. That way, the only reason for somebody to start such a question is if they're actually genuinely interested and genuinely believe that there would be good answers. People are already used to the idea of a CW post being "worth less" than a regular post, so this really isn't as much of a leap as the devs probably think.

But until that happens, here's what I propose for hidden features questions (a lot of this is re-hashing what I've recommended before):

  1. Vote to close any new Hidden Features questions. If people complain, refer them to this meta question. If it gets reopened twice, leave it alone. The point of this step is just to weed out the HF topics that are too obscure to be useful in the long term. If 10 people have voted to reopen, it means that at least a few people care.

  2. If the question is not wiki, flag it for moderator attention and request immediate wikification to stem the tide of stupid answers submitted for cheap rep.

  3. If the topic seems particularly silly (i.e. not genuine, just rep/badge whoring), downvote it as well. It's CW, downvotes are free anyway, and remember that every downvote counts against the ill-conceived deletion immunity.

  4. Auto-lock any question with more than 100 answers. I've made this point dozens of times and even most of the mods seem to agree. Once a question has more than 100 answers, the likelihood of a new answerer actually having read all of the previous answers is slim to nil. Go ahead and open up any question with 300 answers - you'll see that half of them are dupes or noise.

    I'm not implying that 100 is some magic number after which people stop using their brains - the real number is probably closer to 50 or even 20-25 - the number 100 is simply chosen as a number that's well beyond the point at which it's reasonable to expect anyone to read the entire thread before becoming trigger-happy.

  5. Since the auto-locking will probably never be implemented, no matter how good of an idea it probably is, flag the super-sized discussion questions for moderator attention and ask for them to be locked (but not deleted!). Best we can do is hope that they'll listen.

That's it. I think this is a very lenient strategy; it allows these questions to survive if the community thinks they're useful, but also draws that line in the sand between well-intentioned curiosity and obnoxious spew.

9
  • 2
    Locking those questions is fun.
    – random
    Commented Jul 12, 2010 at 14:10
  • 1
    You make a lot of good points. I disagree with proposal #1. I don't think you should vote to close "Hidden Features of X" automatically based on "Hidden Features" in the title, but based on "X". If the question is "Hidden Features of Bare Metal" then obviously it should be closed. If it's on a topic that actually may have hidden features, then I wouldn't want to slow down the answering process by artificially closing it. I moderately-to-strongly agree with your other proposals. Commented Jul 12, 2010 at 14:10
  • 5
    @Bill: Regardless of what X is, it's still a discussion/poll question. Closing it early is saying to the author, "we discourage these questions, but if you can get enough support for yours, then we'll leave you alone." In a way, I think it's better to slow down the answering process for these types of questions; typically with a popular HF question, the early answers are generally uneducational 1-liners (or 1-worders). I'd rather slow it down and have people write thoughtful answers than risk an unstoppable torrent of cheap answers and votes. That's my two cents, anyway.
    – Aarobot
    Commented Jul 12, 2010 at 14:35
  • 5
    @Aarobot: You're not addressing the real problem. If you don't like uneducational 1-line or 1-word answers, downvote those, don't close the question. Give people a chance to provide thoughtful answers. I don't think closing should be the default response to any HF question, but the exceptional case for bad ones. (That last point might be moot, since we've likely already seen most of the good HF questions.) Commented Jul 12, 2010 at 15:19
  • 1
    @Bill: If it weren't for this deletion immunity, I'd probably agree. But I've been around long enough to realize how the majority votes and thinks; the more answers, the more upvotes, and the more upvotes, the more entrenched the question becomes. One or two or five answer downvotes from me aren't going to make a difference; a close vote will. I do understand where you're coming from, but... we'll just have to agree to disagree here. If people only want to follow steps 2 through 5 here, I'm fine with that too (it's better than doing nothing).
    – Aarobot
    Commented Jul 12, 2010 at 15:23
  • 3
    Also, a fact that many people overlook is that people get attached to their answers. Somebody who otherwise wouldn't make much of a fuss over a question closing will become enraged when one of their answers has a few upvotes. In an ideal world, reopen votes would be totally objective, based purely on the merits of the question; in this less-than-perfect real world, reopen votes frequently come from people who answered, and questions which aren't closed quick enough stand little chance of staying closed (no matter how frivolous they are).
    – Aarobot
    Commented Jul 12, 2010 at 15:27
  • @Aarobot: I meant that you should downvote a bad answer to discourage the answer itself, not to lower the deletion threshold on the question. That's just a side-effect. If bad answers are discouraged, then there's less reason to want to close/delete the question. Commented Jul 12, 2010 at 15:32
  • @Bill: I understand, and in an ideal world I would agree. Practically, it takes many downvoters to provide an adequate deterrent (especially on CW questions); on the other hand, it only takes 5 close votes to stop them in their tracks. Yes, I know, it's a bit like sand blasting a soup cracker - but given the current system and the current community, I'm willing to make that trade-off myself.
    – Aarobot
    Commented Jul 12, 2010 at 16:12
  • 4
    It would be quite interesting running a badge recalc on the DB after excluding CW posts from eligibility. It would at least be a more accurate gauge of a user's "contribution" and "worth" to the community. (Is there enough information in the data dump to do this?)
    – Ether
    Commented Jul 12, 2010 at 16:14
7

Most of my points have already been covered by previous posters. I just have one more thing to say, to reiterate from a comment someone left on one of these posts: "A feature is not hidden if it is documented."

It would be much better if these posts (since they're certainly not questions) were titled "Best Features of X" or "Tips and Tricks with X".

5
  • 2
    I think that person was me, in a typical cynical parenthetical. I recall saying that people probably used the word hidden because they knew they wouldn't get away with favorite.
    – Aarobot
    Commented Jul 12, 2010 at 16:15
  • 2
    Substitute "overlooked" for "hidden" and we'd have a better question title. Commented Jul 12, 2010 at 17:37
  • 1
    @Joel: "overlooked" is very subjective though, and in these answers it would often not apply. e.g. as cited in some other answers in this thread, lots of answers to these questions are for very common language features. The only thing they have in common is they aren't "beginner" features, but then one might as well simply copy every feature out of the manual.
    – Ether
    Commented Jul 12, 2010 at 19:02
  • 4
    The only thing hidden in these questions is the answers when they paginate. So much noise generating from those questions. That can't be good.
    – random
    Commented Jul 12, 2010 at 19:08
  • 3
    So you plead for renaming the questions. Well, as far as I’m concerned, go ahead. I just want it be understood that this isn’t an argument for closing the questions. Commented Jul 13, 2010 at 8:44
5

Along with the blog entry: https://blog.stackoverflow.com/2010/01/stack-overflow-where-we-hate-fun/

These questions, definitely fit this criteria:

  • Does this question match the criteria provided in the Stack Overflow FAQ?

Yeap, hidden features are not subjective ( the hiddenability might be - in which case it would receive a downvote - but the feature is not)

  • Is this question accepted by the community, as reflected in upvotes, favorites, views, and answers?

Definitely

  • Does this question teach me anything that could make me better at my job? Can I learn something from it?

I learn a couple of new things in the process. Either to avoid them, like corner cases, or to use better the language.

They should stay.

4

I think we need a new site. Maybe I'll propose it: "Rejects from Stack Overflow".

Those who like these questions can have their cake, and we can be glad of their absence. I'd be willing to include a link from the old (deleted) questions to the new location.

Just get rid of them. They're an "attractive nuisance".

3
  • They can buddy up with the folks at Area 51: area51.stackexchange.com/proposals/3352/not-programming-related
    – random
    Commented Jul 13, 2010 at 5:08
  • 3
    How are they a nuisance? Quite the opposite, they are helpful. Commented Jul 13, 2010 at 8:45
  • 3
    @Konrad: "attractive nuisance" is a term of art from the legal profession. It means that the feature in question brings people to a location where they subsequently cause trouble. All the really "fun" things on SO bear some risk of acting that way because people may get the impression that those (highly voted none-the-less) oddities are what we do here... Commented Jul 16, 2010 at 15:40
2

I would vote to keep these questions. They definitely ask a specific question about programming which can be answered. The only difference is that the answer is likely to span across many posts.

As for those "What is your favorite X" questions, they are somewhat less clear, but I would vote to keep those as well as there can be good information found on these threads.

Perhaps it would be helpful to create some new tags to label these sorts of open-ended questions so that those of us who wish to avoid them can avoid them.

3
  • They definitely ask a generic question a programming language features which cannot be definitively answered – there is no specific question about programming in sight.
    – Gnome
    Commented Jul 13, 2010 at 1:52
  • They may not be "specific", but they are questions about programming that have definite answers that are useful. Commented Jul 13, 2010 at 2:49
  • 1
    They do not have definite answers when the answers rarely respond to the question as it is asked.
    – Gnome
    Commented Jul 14, 2010 at 20:30
0

Your use of the word "Afraid" in the title is a bit condasending and is inviting an argument.

I fall on the side of getting rid of them, for multiple reasons:

  1. They're a gateway drug to "Favourite [x]" questions
  2. They're not a technical question that needs answering
  3. There's no "right" answer (and CW is not a free pass for this)
  4. Ultimately they're just noise
  5. When there's already 258 answers, any new posts are never going to be read, they just bump the question to the top of the page
  6. Go to 5

My rule of thumb is, if my client came up to me and asked me what I was spending their money on, would I get in trouble? If I was billing $150/hour for "Discussing the hidden features of [X]" I expect they wouldn't be happy. But if I was billing $150/hour for solving "How do I avoid recursion with [X]" they wouldn't mind. One is productive. One isn't.

(This is also why I don't think sites like gaming should make it to a fully fledged Stack Exchange site, but that's just me)

9
  • 11
    I've learned quite a few tricks from the hidden features threads on various languages/frameworks, I'd really argue against labeling them as "just noise." Commented Jul 12, 2010 at 0:31
  • 1
    If you've got time to read through the entire thread to learn something new, then maybe. But if you're on the hunt for "How do I do [y]" and the answer happens to be inside "Hidden features of [x]" you're probably not even going to dip your toe into that pool. Commented Jul 12, 2010 at 0:33
  • 2
    You should sign up with the SE betas and join in on shutting down these questions. It's fun. To a point. Then you just want insta-close powers.
    – random
    Commented Jul 12, 2010 at 0:33
  • I'm in a few of them. Haven't seen too many so far... I'm holding out on my commit's until the one I really want to be involved in goes live. Commented Jul 12, 2010 at 0:35
  • 2
    @Far, I'm parodying 'Whose Afraid of Virginia Woolf?' Honi Soit Qui Mal Y Pense.
    – Rosinante
    Commented Jul 12, 2010 at 1:28
  • @Ros, forgive my ignorance. I've heard of neither Virginia Woolf or that latin phrase... Is it latin? Looks more like vietnamese... Commented Jul 12, 2010 at 3:00
  • 2
    -1 for They're just noise Commented Jul 12, 2010 at 13:17
  • @Farseeker - it's French.
    – Gnoupi
    Commented Jul 12, 2010 at 14:51
  • @Far, no problem. That old french is the motto of the Order of the Garter, and I must confess that it's a bit snarky in context. My apologies.
    – Rosinante
    Commented Jul 12, 2010 at 15:13
-1

There are a LOT of questions with multiple acceptable answers. While technically, yes, one could compile a list of ALL hidden features of X, I doubt anyone will reasonably do so. Letting the community fill in the answers and also voting them according to usefulness, I find very useful and indeed have learned from them. Sometimes a community wiki having multiple answers is more useful than an alphabetical list of stuff. While it's true sometimes the least-voted answer is what I occasionally need, more often than not the natural ranking of things is preferable, welcome, and functional.

-2

Please please please don't delete questions that have valuable content, even if it's subjective.

I understand the need to keep SO "pure", but a lot of these questions are extremely valuable to a lot of people; if they need to be moved out of the main content, we as a community should look at alternative solutions for dealing with them that don't involve "disappearing" them.

You must log in to answer this question.

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