4

What core packages should a professional R developer have, and why? was closed and locked by a moderator with the remark "open a meta question on it and if we can reach agreement, it will be reopened"

I'd like to point out that this question had numerous up-votes and was actually flagged to be put as a community wiki, which is something completely different from being closed and locked. So I ask you very gently if you could please unlock and reopen that question, as:

31
  • 23
    The question is quite clearly a "poll"-style question, which is off-topic everywhere on the network. The presence of upvotes does not itself justify keeping a question around. People vote for lots of questions that are not a good fit for the site, and they've all been subsequently closed/locked/deleted.
    – Cody Gray
    Commented Aug 2, 2011 at 10:41
  • 4
    I don't think the question was set up as a polling question. The person is clearly seeking advice on the workflow for developing R code. See the third bullet point in SO FAQ: software tools commonly used by programmers Commented Aug 2, 2011 at 10:51
  • 11
    @roman er.. what? the question is clearly polling when it says "what are the good IDEs, unit testing and code coverage tools, debugging packages and maybe UML modeling tools for R?" ok.. so now define good. Commented Aug 2, 2011 at 11:05
  • 7
    @Cody It isn't an inflammatory poll, it isn't really a poll at all. The Q asks what are people using when developing code with R and why? This helps i) the asker and ii) anyone also looking for tools to develop with R make an informed choice from the available options without having to blunder in blind. If this was more of a which is better Vim or Emacs, I could understand the Mod reaction to close, but this isn't like that in the slightest (well perhaps excluding the ESS fanboys, of whom I am one ;-)) Commented Aug 2, 2011 at 11:06
  • 3
    @shanethehat, he's not asking for preferences, just for which options are available. At least that's how I see it. Commented Aug 2, 2011 at 11:13
  • 6
    @JohnnyCageWins Why don't we treat the users here like adults and clean up the mess if a debate/argument happens? Such things could be nipped in the bud early, but not before they begin. DO you see any semblance of argument or debate in the Answers to the Q? Commented Aug 2, 2011 at 11:16
  • 5
    @JohnnyCageWins Dictionary definition of constructive includes: "helping to improve; promoting further development or advancement". Can you point to something in the Q that will not improve the knowledge of tools within which people do R development? I think we can expect you to justify your comment, otherwise this entire Post will become just another infinite list of opinions. Commented Aug 2, 2011 at 11:23
  • 3
    @shanethehat OP noted that the question was flagged to become community-wiki, but it got closed instead. And here we are. Commented Aug 2, 2011 at 11:23
  • 7
    The problem here is that the SO policy is wrong. The question is useful, users want it, yet it goes against SO policy. Bad policy, change policy.
    – user139018
    Commented Aug 2, 2011 at 11:31
  • 5
    @user139018: Ah, you've hunted this dog before, haven't you? The policy isn't going to change; it's there for perfectly good reasons. Smart people will learn to work within its parameters, rather than constantly trying to buck the system.
    – Cody Gray
    Commented Aug 2, 2011 at 11:37
  • 8
    @Johnny If you want to use a title for me, then Dr. would be appropriate. I don't advertise myself as Mr or Dr because it is irrelevant, so why do you choose to refer to me as such? Gavin is fine. Commented Aug 2, 2011 at 11:40
  • 3
    @Gavin Simpson: it's supposed to be for opinions, but dissenting opinions are actually not welcome at all.
    – user139018
    Commented Aug 2, 2011 at 11:50
  • 5
    @Cody Gray : the sad thing is that smart people are actively looking for alternatives to SO and move the R community over there. Right now actually, and I don't deem that necessary. They do, as SO policy does not fit mature discussion about developing in the R language.
    – Joris Meys
    Commented Aug 2, 2011 at 11:54
  • 7
    Let's try to avoid having to moderate this question as well. Meta is wholly the right place to have this discussion, agreement or disagreement either way, but let's keep focused here.
    – Lasse V. Karlsen Mod
    Commented Aug 2, 2011 at 12:09
  • 3
    @Cody, no passive people will learn to work within its parameters, rather than constantly trying to buck the system. (and I don't agree that the SO policy is wrong on this, only apathy is wrong). Commented Aug 2, 2011 at 13:59

10 Answers 10

41

I'll chip in with my 2 cents here since I feel somewhat responsible for the whole bruaha.

When you read the rest of this answer, bear in mind that this is just my opinion. It is by no means solid policy.

This question, while arguable might not be a poll, is still of a poll-y style.

If you're asking this:

What animals exists

Then it is not a poll, however it is an answer that will be list-y in nature. With disciplined people writing answers, you might end up with one conclusive list. Good.

If you're asking this:

What animals do you have

Then it is no longer a question about facts, it is about opinion, because you're inviting people to justify why they have those animals. Also, almost everyone will have different animals, so you no longer have 1 list, you have many, none of them more right or wrong than the others, unless you can argue that by no means should you have a Boa, that's just plain nonsense.

So let me look at the answers to the question in question (no pun intended):

This answer - What core packages should a professional R developer have, and why? - lists lots of libraries and tools, by no means things you absolutely need. Can you say someone else is wrong if he does not use/need/like those same tools?

This answer - What core packages should a professional R developer have, and why? - lists emacs as the answer. I daresay R does not really need Emacs, and Emacs is the answer to most programming tool answers. Should I down-vote this answer because I don't like Emacs? Because frankly, people are writing R code without it.

This answer - What core packages should a professional R developer have, and why? - lists Eclipse instead. How should I vote on this? That I like both Eclipse and Emacs? then what information pertinent to the question do I convey here?

This answer - What core packages should a professional R developer have, and why? - lists TextMate (for Mac) and Emacs again.

What about Notepad, Ultraedit, Notepad++, Notepad2, Textedit (on Mac), and all those other text editors. Are they good answers to this question?

The problem with such questions is that there is no way to judge an answer by itself, you invariably end up voting on how much you like the answer in particular, not how much right or wrong it is in relation to that question, because quite frankly, those answers are neither right nor wrong, they just are.

Additionally, most answers will list multiple things, because the question either explicitly asks for a list, or invites list-based answers. What if I think one of the things on your list is wrong, the other is correct? If I leave a comment, obviously I'm in no position to complain because it's your list, for you it is right. Should I down-vote, or up-vote?

Let me summarize why I personally think this type of question fit the faq on what shouldn't be asked:

They're bikeshed questions.

Everybody and their uncle that uses R will have a different list, there's no end in sight. Invariably people will stop bothering to say something because it has all been said, but the answers doesn't tell me anything. If someone asked "What's the best library for R to manage documentation", I would assume that @roxygen as noted in one of the answers, and possibly some variants/alternatives, are good answers, but the question is too open-ended. Since the answers here involve text editors and operating systems, even Excel, there is no shortage of possible answers.

Finally, my main gut reaction is when I see people commenting that the question is interesting. I have only seen a handful of questions where people say that where the interest-ness part of it is not related to discussions. In other words, whenever I see "this is interesting", people want to discuss.

And again, discussions are not what SO is handling.

10
  • Most of the editors you mention don't have syntax highlighting or special R features. If someone Answered saying they used Notepad++ because it was a good text editor, I'd down-vote because it doesn't have specific R-related tools. Emacs is a general editor, but the reason it was mentioned is not because of that, but because of the ESS add-on, which is a totally fantastic R-related tool for coding and developing packages. If ESS didn't exist, the Emacs Answer would get a Down-vote from me. Commented Aug 2, 2011 at 11:32
  • 4
    Proving, of course, that the question and the answers it attracts are completely subjective...
    – Cody Gray
    Commented Aug 2, 2011 at 11:37
  • 1
    as @Gavin said. If you develop R, the list of packages (you call that libraries) given by Hadley is almost a necessity to develop efficient. Why the answer of Hadley got upvoted so much, is exactly because the list of packages he mentions, is an answer to "professional coding" : how to implement testing (testthat), what with documentation (roxygen), how to do profiling (profr), ... Apart from handcoding it yourself, there are no R-alternatives. Which is why people find it interesting : it gives very valuable information without discussions.
    – Joris Meys
    Commented Aug 2, 2011 at 11:43
  • 4
    The question is interesting because seasoned R package developers (Dirk and Hadley are two of the leading contributors to key, important, widely used R packages) are providing the benefit of their experiences. The two ToolChain Answers, are in retrospect, not that useful/interesting. Commented Aug 2, 2011 at 11:45
  • 5
    @Cody Gray : which proves that the answers given are R-related. Both StatET (you see Eclipse) and ESS (you see Emacs) are given as tools, none is subjectively downvoted. You know any other professional IDE with support for R? I don't, and questions like the one discussed here are exactly the kind of questions that can give me that information. I don't see the subjective part in that.
    – Joris Meys
    Commented Aug 2, 2011 at 11:45
  • 2
    One reason some questions aren't closed and others aren't is that contrary to popular belief, moderators don't go looking for trouble. If question X is not flagged, it might not pop up on the radar, and thus never be handled. However, bringing those questions up on the radar of moderator might have the opposite effect of what was wanted, they might be closed too. Let me rephrase my opinion here. It is better to work on making both welcome, rather than questioning why X is wanted, whereas Y is not. It might turn out that neither is wanted.
    – Lasse V. Karlsen Mod
    Commented Aug 2, 2011 at 11:58
  • 1
    @LasseV.Karlsen: I'd close it right now, except for the fact you (for some reason I don't understand right now) want to have this conversation. You're absolutely right--its a bikeshed question. And its localized; half the answers will be invalid in a year.
    – user1228
    Commented Aug 2, 2011 at 13:19
  • 1
    I don't want to have this discussion, at all, so I reopened it with the intent that it becomes edited to avoid the opinion-style, or I will decidedly close and delete it.
    – Lasse V. Karlsen Mod
    Commented Aug 2, 2011 at 13:20
  • 3
    @Won't Then you can close about 2/3 of the questions on SO. I'm sorry if I sound a bit cynical, but it's bloody frustrating to see how the very people that actually continue to write R are treated like little kids with arguments that go no further than it is / it isn't and show nothing else but a complete lack of knowledge about the specific issues with R. The mentioned packages are going around already for quite a bit longer than a year, the mentioned IDE aids (StatET and ESS) as well. I don't think they'll disappear that fast.
    – Joris Meys
    Commented Aug 2, 2011 at 14:05
  • 3
    @JorisMeys: I have closed the same type of question in my own personal language of choice. Perhaps that persecution complex comes more from the inside than the outside?
    – user1228
    Commented Aug 2, 2011 at 14:08
20

The "Not Constructive" close reason has a long and illustrious history.

In the early days of Stack Overflow, almost anything even remotely programming-related was on-topic. Then the Great Community Wiki wars began, and the creation of the "Not Programming Related" proposal on Area 51 (now known as Programmers.SE) was an attempt to preserve these very popular questions elsewhere so that the main site could stay "pure."

In short, this is not a new issue.

There are many problems with "Not Constructive" questions, and it has taken a long time just to understand them all. But I think it boils down to two distinct principles:

  1. Bikeshedding, and
  2. er...Bikeshedding.

Bikeshedding occurs in the questions because, once you ask a question like "Tools for Professional R developers," you open the door for a nearly limitless supply of "Tools for Professional [your favorite technology] developers."

Bikeshedding occurs in the answers because, well, everyone has an opinion.

People like asking these kinds of questions because they are reputation magnets. There's nothing wrong with earning reputation, but reputation should be earned from concrete knowledge, not opinions; otherwise, it becomes a meaningless number. Reputation is supposed to be (more or less) a rough measure of your knowledge and your level of contribution to Stack Overflow, not your ability to solicit or provide opinions.

To put it another way, were the Wall Street Journal to operate on the principle of popularity, it would no longer be the Wall Street Journal; it would be the National Enquirer.

Ultimately, it's far less work for everyone if we just categorically disallow these kinds of questions.

23
  • 4
    The reputation magnet is exactly the reason why it was flagged as "this should be a community wiki", and that led to its closing. Although I understand the reasoning, it has been repeated over and over that this kind of question over R is not bikeshedding, as there is only a limited set of tools. I see most resemblance with the case of Latex, where the continuous closing of -in their regards- valid questions led to tex.stackexchange. It's only a matter of time before this happens for R as well, and it might be in the best interest of everybody actually.
    – Joris Meys
    Commented Aug 2, 2011 at 15:48
  • 3
    @Joris: Community Wiki is a red herring, for many complicated reasons that I won't go into here; you may have noticed that at least two moderators have looked at this question already, and have not made it CW. Making a new site will not fix the problem; "poll questions" are off-topic throughout the SE network.
    – user102937
    Commented Aug 2, 2011 at 15:51
  • 2
    Isn't it so that the closing of these questions will ultimately be done by a mod of that SE site? If there's an R-SE site, the mod will be a member of the R community and will hence understand why this is actually not really a poll question, let alone a possible bikeshedder. Do not understand me wrong, I do appreciate the work the mods do here. It's just an ongoing frustration that the R community on SO moderates its own tag mostly, but once in a while sees a complete stranger to them wreck havoc among their questions for no reason obvious to them.
    – Joris Meys
    Commented Aug 2, 2011 at 15:54
  • 2
    @Joris: I'm not clear why the R community deserves special treatment. All of the other tag communities have to follow these guidelines.
    – user102937
    Commented Aug 2, 2011 at 16:01
  • I realized from the commotion here that it's indeed not feasible within the SO framework. I don't ask special treatment. I just hope to have a place where the mods actually have an idea about what R is. Hence the proposal for a new site. R is very different from your average programming language, as it is used in the first place as a statistical calculator by non-programmers mostly. See also meta.stackexchange.com/questions/100541/…
    – Joris Meys
    Commented Aug 2, 2011 at 16:05
  • 1
    If these questions are well moderated (ie. only answers with good argumentation are allowed), they are very useful to a beginner in the field. Simply asking "what tools can a R developer use" is not as useful as "what tools should a developer use", because the opinion of experts is very useful for a newcomer. Allowing these questions would make the site more useful, not less.
    – user139018
    Commented Aug 2, 2011 at 16:05
  • 2
    I really don't think reputation is a good explanation as to why people love these questions so much. They love them because they are useful. Also, with the duplicate detection system, we only need one of these in each category.
    – user139018
    Commented Aug 2, 2011 at 16:07
  • 3
    The moderation principle at work here is that it is a request for a list. I don't think you need any specific technical expertise to moderate using this principle, nor should you have to.
    – user102937
    Commented Aug 2, 2011 at 16:13
  • 1
    +1 Thanks! This helps put things in context. For precisely such not-constructive closures (perhaps there are multiple types of closures?), I recommend a link to a general summary with this kind of perspective. So, what is the appropriate resolution? I don't grasp why CW wouldn't work - it doesn't allow reputation hoarding, does it? I also don't get what is wrong with asking for a list. Should there be 1 item per answer and the OP aggregates them? That could work...
    – Iterator
    Commented Aug 2, 2011 at 16:45
  • @Iterator: The close reason serves as the general summary: This question is not a good fit to our Q&A format. We expect answers to generally involve facts, references, or specific expertise; this question will likely solicit opinion, debate, arguments, polling, or extended discussion.
    – user102937
    Commented Aug 2, 2011 at 16:49
  • @Iterator: CW is not a free pass for "poll" questions, although the community at one time co-opted it as such. CW was originally created to allow easier editing by low-rep users, not to provide a safety valve for subjective questions. The question needs to stand on its own merit, without the help of Community Wiki.
    – user102937
    Commented Aug 2, 2011 at 16:51
  • 1
    @Iterator: Disallowing list questions is a fundamental principle of the SE platform. The Q&A format that underlies SE is designed to encourage quality questions and answers. List questions inevitably undermine that quality, although you do get the occasional rare gem.
    – user102937
    Commented Aug 2, 2011 at 16:53
  • 2
    @Robert, thanks regarding list questions, but now I'm trying to understand whether Joel Spolsky knows this (does he still work on SO?). On the SO blog, he supported a question like: “What things should I check when a web server running at home is not visible on the Internet?”
    – Iterator
    Commented Aug 2, 2011 at 16:57
  • That sounds like a list to me. I'm not trying to inflame things, but just trying to see how to understand you (as a Moderator) and Joel (as Joel?) see eye to eye on this topic, so that I can also see things the same way.
    – Iterator
    Commented Aug 2, 2011 at 16:58
  • 1
    @Iterator: There's limited system support for canonical questions. How do you keep them from getting closed, for example (if they are of the list variety that Joel talks about)? But they are a perfect example of a proper use of Community Wiki.
    – user102937
    Commented Aug 2, 2011 at 17:07
10

it is completely in line with a lot of other questions, as pointed out in the comments

And therein lies a bigger problem. Not that all these answers about the dangers and general uselessness of list questions are wrong, mind you. But even if you ignore them, you have to admit that the usefulness of a question on the pros and cons of various editing tools are reduced when there are five of them.

If you click through those links, you'll see I've done a bit of house-cleaning for you...

Back to the question at hand. The top-voted answer is focused primarily on packages. The author has done an excellent job of explaining why he uses the tools he lists - this immediately makes it a much more valuable resource than most of the answers posted here. So let's go with that - I've closed the older question as a duplicate of the newer, and revised the newer question to reflect its new status.

If you (as a community) can come together and make recommendations based on experience while sharing the knowledge that makes the recommendation valid, you may produce a resource of value to other users. If this devolves into a bare list of links and opinions anyway... Well, read the other answers here. It will be killed with fire, no apologies necessary.

16
  • Thank you for that. We'll see to clean up the others answers as well.
    – Joris Meys
    Commented Aug 2, 2011 at 17:07
  • 1
    "If you (as a community) can come together and make recommendations based on experience while sharing the knowledge that makes the recommendation valid, you may produce a resource of value to other users." --> the problem as I see it is that even that is not allowed by SO policy, and so it may be removed and even deleted.
    – user139018
    Commented Aug 2, 2011 at 17:10
  • @user: policy is somewhat flexible when the results are useful. The FAQ is geared to disallow thoughtless, time-wasting questions above all else - make it clear that's not what's going on, and you'll have better luck. Ultimately though, the quality of the answers is the determining factor - it's fairly trivial for someone to go in and edit a question to bring it inline with the policy; hacking through a jungle of list answers isn't a job anyone wants.
    – Shog9 Mod
    Commented Aug 2, 2011 at 17:19
  • 1
    Unfortunately, some mods and high-rep users with mod powers aren't as tolerant as you. It's pretty raging to see your question closed or deleted when it was accumulating quality answers. This case is a good example: it required a lot of work and arguing from the members of the R community to get their question accepted. Not everybody has the time or the will to do this...
    – user139018
    Commented Aug 2, 2011 at 17:29
  • Unfortunately, we aren't being allowed much time to do that revising. There are already 3 close votes since you and Robert Harvey did your editing and reopened. I have started some moderation, commenting on one Answer to solicit an improvement or deletion in light of this discussion. Commented Aug 2, 2011 at 17:40
  • @user: ideally, the folks who are closest to the topic will be the ones to jump in, edit and defend a question. Or point out previous questions that cover the same subject matter, allowing the question to be refined or closed. After all, they are the ones who will benefit the most from it. Keep in mind, the same rules would apply on a dedicated R site - if you think of the tag you're most active in as your own little community, this activity makes a lot of sense.
    – Shog9 Mod
    Commented Aug 2, 2011 at 17:40
  • @Gavin: unfortunately, that's part of posting here on Meta - you get a lot more attention, whether you want it or not. Don't let it distract you from creating the best Q&A you can.
    – Shog9 Mod
    Commented Aug 2, 2011 at 17:42
  • I think this is an example of limited expertise affecting moderation. As an R user, these are very different questions. One is for developers, one is for users. Frequently used packages by users include things a developer wouldn't bother with, such as MASS, ggplot, caret, iplots, and a lot of others. For a developer, there are packages like Rprof that they would use. A user couldn't (and shouldn't) care about such tools.
    – Iterator
    Commented Aug 2, 2011 at 17:55
  • (Continuing) This distinction isn't clear to a lot of developers without R & data experience, because, as I keep repeating, a lot of developers are focused on solving a particular problem in a particular language. In the case of R, people are using R to solve an external problem (e.g. economists, weather forecasters, biostatisticians, teachers, etc.) and R isn't their interest. However, there are others, like Hadley, who are building that infrastructure for others to use in solving their problems.
    – Iterator
    Commented Aug 2, 2011 at 17:57
  • (Continuing) In other words, people who are not developers are programming in R to solve other problems. Others are developing tools within R (or outside of R, but linked to it, such as RApache or Rcpp) to assist in general solutions. The latter folks are a bit more akin to typical SO users, but the former folks are their target audience.
    – Iterator
    Commented Aug 2, 2011 at 18:00
  • @Iterator: "frequently used packages" is very much a list/poll/gtky question and disallowed as described in the FAQ. Note that I made no attempt to merge it with anything... Readers are much better served by specific, individual questions (ex: "What package can I use to forecast?") than by a huge list they must sort through to find what they're looking for (else we might as well just kick them to CRAN, eh?). If you feel the older question can contribute nothing to the newer, I can simply delete it...
    – Shog9 Mod
    Commented Aug 2, 2011 at 18:05
  • @Shog9: You're wielding a single hammer. You have other tools at your disposal, such as edits. Without getting into semantics, the gist of the older question could have been phrased as "For common data analysis sessions, what are some of the most utilized packages or most overlooked packages?" This could lead to more discussion. But, to be fair, that question was from 3 years ago.
    – Iterator
    Commented Aug 2, 2011 at 18:12
  • (Continuing) So, it would be better for someone to post a newer question on a more precise but related topic rather than to mark it as a duplicate of an orthogonal question.
    – Iterator
    Commented Aug 2, 2011 at 18:14
  • 1
    @Iterator: "What x do you use?" is unlikely to ever go anywhere. Think about solving individual problems, or, if there exist a class of problems that will tend to have the same / similar solutions, a canonical Q&A can work. If you search for, "R packages for graphing X" you'd want to see a result titled "What R packages do I need for graphing X?" or failing that, "What R packages do I need for graphing?" - "Popular R packages" is a poor substitute indeed.
    – Shog9 Mod
    Commented Aug 2, 2011 at 18:22
  • 1
    @Shog9 Thanks for your efforts yesterday with this Q. Unfortunately, several members of the SO community have decided not to allow any further time for us to improve this Q and A and it has been closed. I think we'll let this lie now and work on an R proposal for SE, which will now be better informed following the constructive parts of this Q&A. Ironically, most of the users who voted to close have participated in several such discussion/subjective Qs in the past and I trust that they will be voting to close those in short order. Commented Aug 3, 2011 at 8:36
6

Every answer has "I" or "my".

It is the very definition of subjective, where everyone is encouraged to provide their personal point of view, all points of view are equally valid, repitition is common, and there's no single answer that deserves to be marked as the accepted, objectively correct, answer.

Further, this is not a single question - perhaps if you were asking, "Which R compiler allows me to access SSE3 instructions in an intel Core 2 processor?" then it would be a single question, with perhaps a few answers.

This one has, "List some R IDEs. List some R debuggers. List some R refactoring tools. List some R analysis tools. List some R..."

Stack Overflow is not designed to host such Katamari Damacy questions.

Feel free to write a blog post on R toolchains, but do not expect such a question to remain open on Stack Overflow.

2
  • And yet these questions will pop up every few days on SO for as long as a mechanism to handle them is not implemented, because people want to ask them and people want to answer them, and because they serve a useful purpose.
    – user139018
    Commented Aug 2, 2011 at 16:09
  • 2
    What is wrong with making person reference? This SE Blog on the topic blog.stackoverflow.com/2010/09/good-subjective-bad-subjective specifically praises the idea that one's Answer that might be opinion should be backed up by personal evidence. "I" or "My", in and of themselves do not make a bad subjective Q or A. We learn from the experience of others. Commented Aug 2, 2011 at 18:28
5

It can probably be rephrased and reopened as a "Hidden Features of X" question.

It's indeed a special class of question, and like the Highlander "there can be only one (per language)" but historically it has been supported.

See:

Reading this question more closely, I don't think it fits the Hidden Features model; it's more of an Infinite List of X. I support leaving this question closed, re-opening the existing hidden features of R question and directing people to that instead.

17
  • 4
    I can't help but notice that Hidden Features Of R? has also been locked and closed. Not to mention, exceptions like this are a common source of confusion and fodder for "why was my question closed if this other one was allowed" Meta questions. I personally find the distinction difficult to explain.
    – Cody Gray
    Commented Aug 2, 2011 at 10:55
  • updated to reflect that info Commented Aug 2, 2011 at 10:59
  • 5
    Sorry to disagree, but this is clearly a misinterpretation of that question. Developing tools for R goes far beyond "hidden features". It has to do with the workflow programming add-on packages for R, and is for any R developer very valid information.
    – Joris Meys
    Commented Aug 2, 2011 at 11:23
  • 1
    @Joris: Why couch this issue in terms of R, specifically? What makes this question different when asked in terms of the R programming language, as opposed to the same question asked about any programming language? And then ask yourself if that's really what you want SO to become: "laundry list" questions of "best practices", "development tools", "hidden features", "recommended workflows", etc. for all of the popular and not-so-popular programming languages.
    – Cody Gray
    Commented Aug 2, 2011 at 11:33
  • 5
    -1 The original Q has nothing to do with "Hidden features of R". Commented Aug 2, 2011 at 11:34
  • 1
    @Cody because R has some language-specific features (tight interplay with LaTeX), specific workflows for testing, packaging code etc. SO isn't full of these things and will never become full of these. Once a question like this is posed for a given tag/language, it would become the single place for reasoned, non-argumentative Answers. Anyone else tries to ask something similar, they'll get the down-vote, vote to close combo smackdown. The [r] tag has close to 6000 Qs. A handful at best are of this sort. I don't expect any other language/tag to be any different. Commented Aug 2, 2011 at 11:38
  • 2
    @Gavin: That appears to be an extremely biased response from someone who is knowledgeable about R. C# has some really neat language-specific features, and some specific workflows for testing and packaging code. I don't understand why R is any different here. I'm not contesting whether or not these things exist for R, I'm asking why they're unique. And no, SO isn't full of them now, but that's because we've consistently closed such questions as off-topic. You're asking for an exception to be created to that policy, and I'm asking why that exception should be limited only to R.
    – Cody Gray
    Commented Aug 2, 2011 at 11:39
  • 1
    @Cody Gray : Developing R is different from developing in Java or Python. I see no counterpart of any of the packages Hadley mentioned in other languages I know. What attracts me to SO, is the fact that I can ask programming-related questions about R and exchange ideas with R experts, including members of the R core development team and authors of some of the most important packages (Dirk Eddelbeutel, Hadley Wickham, Joshua Ulrich, Gavin Simpson, ...). Which tools they use for developing those most important packages, is valid information for me. Which is now locked and closed...
    – Joris Meys
    Commented Aug 2, 2011 at 11:48
  • 1
    @Cody I didn't say it should be limited to [r]. If you don't want them on SO, why aren't they deleted instead of being left for posterity closed? The very fact that developing for R has some very specific requirements necessitates this sort of Q so that developers can see what is available, why people use them and select from the range of tools that suits them. I'm sure every other language has similar needs. Why aren't these Qs interesting? Commented Aug 2, 2011 at 11:49
  • 7
    But the questions are interesting, that's why we're here. The problem is that they don't invite answers, they invite opinions.
    – Lasse V. Karlsen Mod
    Commented Aug 2, 2011 at 12:02
  • 2
    @Lasse I disagree that these aren't Answers. Every Answer is subjective and ones own opinion about how to best Answer the Q posed. The entire SO site is like that - most Qs don't get as much traction because if a workable Answer is provided, Users don't tend to pile in with other Answers when there are newer Qs to tackle. Commented Aug 2, 2011 at 12:27
  • 1
    I agree on that score, but usually one can verify that the answer is also correct. If I ask you how to calculate something specific, there are plenty of ways to do that, and you will of course post your favorite method. However, I can still verify that your method does in fact calculate what I asked for. If I ask you what tools you use, I cannot do that, I can't judge the correctness of your answer. Now, I agree that some parts can be judged, but not everything, and the "list of X" questions are according to existing policy, not welcome.
    – Lasse V. Karlsen Mod
    Commented Aug 2, 2011 at 12:30
  • 1
    @Lasse The Q did mention what tools are available. That can be answered and verified. We could have edited that Q to remove the subjective elements people seem to have objected to, and we should have. But to my mind that wouldn't have altered the spirit in which the Q was asked and Answered by most people. The Answers supplied were generally statements of fact that could be verified. Commented Aug 2, 2011 at 12:50
  • 2
    So how about this. I remove the lock, and reopen the question, and it is edited to remove the "what kinds of things for R development do you like" style? In other words, make the question sound more like the first sentence - What tools should a professional R developer have? instead of the last sentence - I am also interested in knowing the tools that exist for other languages but are missing for R development.? I'm not saying that a list of such tools are not going to help, but get rid of the "what do you like" nature of the whole thing.
    – Lasse V. Karlsen Mod
    Commented Aug 2, 2011 at 12:59
  • I have edited the Q. Is this now acceptable or have I shot wide? Commented Aug 2, 2011 at 13:36
5

I'm looking at this whole brouhaha as a user new to SO, and scratching my head. I see that there are cultural limitations here on how to address different classes of poll questions (yes, there are different classes of poll questions). However, the text for closure states We expect answers to generally involve facts, references, or specific expertise, and I think I can address each of these items. I'd also like to consider the handling of the question versus handling of the answers.

Regarding facts: Because R is evolving and not as complete as other environments, it is honestly the case that for some activities that typical developers may undertake, there is really only one option in R. Naturally, there are many editors. So, scratch those answers. When it comes to profiling R code, Rprof is pretty much the primary tool. When it comes to checking for certain qualities before R code can be publicly released (very, very few elite R developers release to anything but CRAN, by the way), then there are CRAN or R-forge specific checks. (Again, this differs from, say, C or Java, where there isn't one standard repository - R is intensely open-source and communal - at the moment.) The list could go on, but I'm not an elite R developer. I just have enough experience scratching my head and looking for "how do I do in R what I've done in language X", and find that there are either 0 or 1 solutions.

Regarding references, CRAN is pretty much the main repository for R stuff. There are a couple of other sites, like R-Forge (on CRAN) and BioConductor, but these really don't frame things. So, if there are tools, then users are looking for them on CRAN. Much of the community's documentation also exists on CRAN.

Regarding expertise, there is no more elite (or at least no more recognized) R developer than Hadley Wickham (apologies to Chambers, Ihaka, and Gentleman). If you look at R associated tags and questions on SO, many of the top ones relate to packages developed by Hadley. Hadley isn't the foundation of R, but he's a top developer of packages within the community. He's been down the development road so many times that he is even working on smoothing it for others.

Now, back to the handling of the questions and answers. Regarding answers: I believe that SO users and elite users (those people who downvote answers, delete answers, and other wickedness inflicted on us mere newbies) can properly handle the answers. The community will likely upvote and the author will likely select Hadley's answer, and it will be good.

Regarding the question: is it right to hammer a user for asking a question and do that in the face of all users? Given the balance of time and consideration that many users have made for this question, isn't it better to ask for a rewording? That can take just a few minutes by the author or by more experienced users. Just a few minutes by a few people is reasonable in order to avoid many "man-hours" of time wasted on meta discussions.

Personally, I've been most delighted when more experienced folks revised my questions. It guided me on basics, like code formatting, and more important matters, like focusing the question so that answers can be fairly adjudicated.

The original question can be revised, without affecting the answers. I believe elites (moderators and such) can behave more like mentors and guides rather than functionaries. That improves everything and everyone. Spending so much time on critiques of questions misses discussion of how one nudge things in the right direction.

4
  • 3
    There was a comment by a moderator quite early on that it was a poll question likely to be closed as non constructive. 9 Hours later, the question was still in its bad form, and thus closed, due to flags and a moderator reacting to those flags.
    – Lasse V. Karlsen Mod
    Commented Aug 2, 2011 at 15:06
  • 2
    +1 for the distinction between "mentors and guides" and "functionaries."
    – whuber
    Commented Aug 2, 2011 at 15:08
  • Here's some food for thought. Joel Spolsky has some thoughts on canonical answers for Stack Overflow and how to work collaboratively to produce better answers and questions. blog.stackoverflow.com/2011/01/…
    – Iterator
    Commented Aug 2, 2011 at 15:42
  • @Lasse, thanks for the info. I think we're all learning that there can be good advice given to questioners for tag user populations that are not as familiar with customs that have evolved elsewhere on SO or far enough back in SO history.
    – Iterator
    Commented Aug 2, 2011 at 16:50
5

"poll questions are off-topic throughout the SE network"

This has been said many times, and will be many more, and yet poll or list-of questions continue to be posted again and again throughout the network. Clearly, polls and lists are of value to the community, however, just as clearly, polls and lists do not fit in the Q&A style of SE. They break the model. Square peg, round hole.

Blog posts and chat also break the Q&A model and are excluded, however we have found a way to include them in the community resource pool by having them adjacent to the questions and answers. I think we need to do the same for polls and lists.

10
  • 3
    Your answer is insightful, yet you miss a crucial distinction between chat, blogs, and polls: the former two, while often wastelands of inane chatter, can and do serve a valid purpose; the latter rarely ever produces anything of value. Remember: these can never produce statistically-valid results. You don't buy products on Amazon based on score without reading the reviews, do you? The value, if there's value to be had, comes from the shared experiences of other users.
    – Shog9 Mod
    Commented Aug 2, 2011 at 17:25
  • 1
    @shog9, there must be something of value, else the whack-a-mole game wouldn't be happening at this scale or frequency. Or be generating this very discussion. The trick is discovering how to extract the value while leaving the chaff behind. Aside from the idea of putting out corn for the birds in the next paddock, so they leave this one alone, I've no ideas about how to do that. This place is full of people much smarter than me though, so I have hope. ;-) Commented Aug 2, 2011 at 17:37
  • 1
    @Shog9 I sure have enjoyed a lot of movies on IMDb and Netflix that I watched simply based on a score. "Statistically-valid results" is a meaningless term. What you seem to have meant is that internet polls will never create valid population inferences. As an SO user, I don't care what the general population thinks about something. The fact that members of a community that I trust think highly of something is enough for me to take a look. Moreover your Amazon example proves the point. If anything the question that spurred this discussion was intended to produce content, not votes. Commented Aug 2, 2011 at 17:39
  • @gsk3: and if it hadn't produced content, we wouldn't be having this discussion. The original question was terribly unfocused, and asked for (among other things) answers that were already readily available on existing questions. It got a couple of good answers however, and obviously struck a chord somewhere - therefore, it's worth trying to save.
    – Shog9 Mod
    Commented Aug 2, 2011 at 17:47
  • @matt: the prevailing theory here is simple: don't invite people to post chaff. There's currently one (up-voted) answer that consists solely of a list of tools that make up one person's development environment, with no explanation or justification for any of them. These sorts of responses could easily swamp more valuable answers... If we can discourage them, good... But the original question didn't even try.
    – Shog9 Mod
    Commented Aug 2, 2011 at 17:49
  • 1
    @Shog9 It's not my favorite question on the topic either. But it's pretty clear from the responses here that even a perfect question wouldn't be allowed. Commented Aug 2, 2011 at 17:53
  • @gsk3: if there's one thing you should take away from this, it's that these questions are strongly discouraged. They are easy to ask, and hard to answer well - hence the proliferation of duplicates with lousy answers. There are rules and guidelines for asking and answering them, but almost no one reads them - therefore, the knee-jerk reaction is simply, close+delete.
    – Shog9 Mod
    Commented Aug 2, 2011 at 17:59
  • 1
    @Shog9: Deleting a cogent, useful, focused answer from one of the giants of our community would be a bit of a tragedy. Commented Aug 2, 2011 at 18:16
  • @gsk3: again, that's why we're having this discussion. If the question had nothing but lousy answers, who would care?
    – Shog9 Mod
    Commented Aug 2, 2011 at 18:25
  • 2
    I smiled when I read "[polls] can never produce statistically valid results". I might disagree, but it's true! Paraphrasing the NRA: Polls don't produce statistically valid results, statisticians produce statistically valid results. :)
    – Iterator
    Commented Aug 2, 2011 at 22:30
4

Much of the objection stems from what is meant by "poll", "constructive" etc., which are the reasons behind the Question being closed. Viewed from a particular point of view, I can see that this Question, and others like it, look like polls. I would argue however, that such a wide interpretation of the term "poll" could apply to a range of Questions/Answers where you could Answer the Question using packages or approaches A, B, C etc.

I don' see this Question and similar ones as being polls, because they can interpreted as asking for statements of fact. What tools are available for development in R? That is a clear question, with clear answers. Yes, this Question will garner more Answers than a big standard question, but number of Answers in an of itself should not be a criterion for considering closing a question.

Could the question to hand have been improved to remove some of the more subjective elements and to focus the Question? Yes, and myself and the other active members of the [r] tag community here could and should have been a bit more proactive in responding to the comments by the likes of Robert Harvey who pointed out the problem. Instead we my have got bogged down in the comment discussion. However, the Question has been closed and so we can't address this now. Could the Question be reopened to attempt to remove the more subjective elements?

As for the "constructive" element, I fully understand why we don't want flame wars and extended debates about whose language/editor etc is biggest. But it seems overly restrictive to assume that the more open-ended questions will descend to such depths and propagate unconstructive Answers and comments. By the very nature of people voting, commenting and defending the Question, I feel we have demonstrated that the Question is constructive and interesting and we've tried to outline in comments here why it is so. I feel we have answered the "constructive" part of the argument.

It does seem somewhat heavy-handed to close questions before they descend into argument/debate. In other areas, the SO site/community expect people to behave appropriately, leave comments when down-voting etc. And the sentiments expressed on Meta appear to be that the community doesn't want to micro-manage everything and dictate how people use the site in every respect. There is a bit of a disconnect between the way we expect people to use the site and the way moderation is performed with respect to the FAQ. Some might call it dogmatic at times.

What I would argue for would be to give posts the benefit of the doubt in such circumstances when moderating. Perhaps see how things pan out first before making a decision and deciding to close. Much like Robert Harvey's comment on the Question. We were perhaps naive in not addressing the issues Robert raised, but that naivety was more than likely due to our collective failure to realise exactly why this question might be viewed as being overly subjective. I don't think we will make that mistake again.

7
  • Why exactly are you against writing out the word "question"? You don't seem to have an issue with the word "answer". Commented Aug 2, 2011 at 13:03
  • 1
    As per my suggestion in a comment, and your suggestion in this answer, I'm going to reopen the question with the intent that it is edited to be less "what do you like" and more "what is there of" in nature.
    – Lasse V. Karlsen Mod
    Commented Aug 2, 2011 at 13:14
  • 1
    @Charles, Sorry - totally correct. Not totally against however - there is one Question there ;-) Will edit... Commented Aug 2, 2011 at 13:21
  • 1
    The failure to spell out "Question" disturbs me highly, kthxbai
    – user1228
    Commented Aug 2, 2011 at 13:21
  • @Won't Really? Simply an oversight, nothing nefarious. Commented Aug 2, 2011 at 13:26
  • 1
    @Lasse Thank you, and sorry your comment and my answer overlapped. I will rally the R people and see if we can reword the Q to be less subjective. Commented Aug 2, 2011 at 13:30
  • 3
    @GavinSimpson: And now I want to figure out what R is so that I can spell it out. I blame U entirel... OH NO! IT SPREADS!
    – user1228
    Commented Aug 2, 2011 at 13:54
-3

Like many in the R tag community, I'd strongly support this being re-opened. As not the sole proof but a compelling argument in favor of it's worth, I'd note that the leading answer mainly answers with R packages, functions, and techniques to be used.

As the close note states, "We expect answers to generally involve facts, references, or specific expertise." The answers have primarily involved all three.


Moreover, I would argue that R is different from programming languages, even though part of R is a language that can be programmed:

  • Its users are different (fewer programmers, a lot more statisticians and applied stats folks)
  • Its applications are different. Traditional programmers write programs once, then release them upon the world, where they must work in a variety of circumstances. Statistical programmers are often the only users of their program.
  • Partly as a result of the above two points, the questions R users have are different. On other parts of SO, basic programming knowledge is taken for granted. That's really not the case for many R question-askers.
  • There's a lot of emphasis on visualization. Questions about graphic often feel more like "how do I use this piece of software?" than "how do I program this?"
  • Many legitimate R questions need statistical or other background knowledge to help answer. A prime example of this is the gene parsing questions that keep coming up--they can be answered with strict programming knowledge, but topic-specific knowledge helps immensely. Another typical example is regression questions. These questions span the divide between CrossValidated and StackOverflow R tags at the moment.
  • Because the emphasis is often not on producing programs but on producing answers to a particular problem, R programming often involves a very different workflow. Therefore, "What development tools are there for C?" may be no different than, "What development tools are there for Q?" but "What development tools are there for R?" is very different and necessary.
3
  • 9
    as stated, it is an infinite list of opinions, though. Some people prefer chocolate, others vanilla. Which is better? You should be lobbying for stackoverflow.com/questions/1682874/hidden-features-of-r instead. Commented Aug 2, 2011 at 11:00
  • 6
    @Jeff It is often said that in R and many other languages, there are many ways to skin a cat. Clearly neither the Q in question nor "How do I do foo with language bar?" type questions have an infinite list of options (there aren't an infinite list of tools with which to develop for any language). Many Qs in the [r] tag are generating response that do things via the 3 or 4 different base R options for the Split-Apply-Combine type operation, plus reshape and plyr options. Which is best is also an opinion. Do we close those as well? What is the limit on the number of possible answers? Commented Aug 2, 2011 at 11:11
  • 5
    @Jeff He's not asking for preferences, so chocolate vs. vanilla does not apply. Gavin's point is extremely pertinent here. Commented Aug 2, 2011 at 11:41
-8

It belongs on Programmers, since it's not a technical programming question.

2
  • 5
    Not quite. Programmers will close it as a "poll" question also.
    – user102937
    Commented Aug 2, 2011 at 15:18
  • 2
    Programmers requires that objective questions follow some criteria. The text reported for its "closed as not constructive" reports: "This question does not meet enough of our six guidelines for constructive subjective questions. All questions should be practical, answerable, and of some educational value to the greater community. Chatty, open-ended discussion questions diminish the usefulness of our site and push other questions off the front page."
    – avpaderno
    Commented Aug 2, 2011 at 17:55

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