Choosing between this site and StackOverflow for posting a question


#1

There’s clearly some question about what should be posted here versus at StackOverflow. Since this has been generating some discussion throughout the site (here most recently), I thought I would try to consolidate the discussion to a single thread. Obviously, the admins/RStudio will have the final say for where the line is between here and SO, but it still seems worthwhile for us to put our thoughts out there.

There isn’t any “official” guidance yet, but a few RStudio comments set out the basic idea. Hadley’s introduction on the RStudio blog:

More recently, Garrett commented on a question/answer here:

Like Hadley partially defines this site by what it isn’t, it’s constructive to look at what StackOverflow says you shouldn’t ask:

From elsewhere on SO:

Also complicating the issue is that various RStudio mailing list/Google Groups users for the have been directed here, and as @ron mentioned here, they have historically handled some Q&A that would also be suited for SO.

It’s pretty clear that, at the very least, recommendation-type questions are a solid question for this site. I was originally also going to suggest that this is a good place to ask “subjective” questions, but SO’s definition of “good” questions of that type includes some of the examples that I was thinking belonged here. Of their list of “bad” subjective questions, some of them seem okay for here (“What’s your favorite ______?”, “I use ______ for ______, what do you use?”), but the others seem likely to be noise here as well. We wouldn’t want this site to become the site where you ask questions that are too pointless for SO.

What do the rest of you think? Where should the line be drawn?


Passing named list to mutate (and probably other dplyr verbs)
#2

I don’t think it’s necessarily a line-in-the-sand type thing. I think it’s possible to have a question here that would make for a good SO question, and then move it over there (new thought for me, as I just posted re. clarifying @garrett yesterday) …

Why not just ask there to begin with?
SO can be intimidating…like, really intimidating. Don’t get me wrong, I love it, but sometimes there are questions that you’re not sure whether or not it’s a repeat/duplicate (especially when you’re new to programming and/or R).

My little visual example below (wherein :tada: indicates, “hooray that’s my error message” :joy:):


#3

Agree completely. I feel that SO can be intimidating especially for R newcomers. I think the more welcoming and empathetic nature of RStudio community is a better chance to ask a question without feeling so intimidated.


#4

I think it’s been helpful for suggestions/requests made to the Rstudio staff (such as R & Python together in RStudio) and it is also turning out to be a really cool place to ask for general guidance (like on the first line of an R script). I personally think it works great for these things (I recently wondered aloud if anyone was planning a Shiny book, for example). As for coding problems, reprexes on SO is a better idea. This site seems great for general RStudio-related chat, if I could put it like that, more friendly and relaxed than SO, and more directed towards mildly wandering discussions (all the better!).


#5

Perhaps a way to bridge the gap is to provide resources/threads/support here in the community on how to navigate SO in such a way as to remove some of the intimidation and help set someone up for success on SO.


#6

Good idea! Maybe some kind of ‘Making SO R questions’ tutorial for those who’ve never done it. I know I’ve had my share of complaints on SO, I probably could have done with something like that :smile:


#7

That guidance doesn’t really need to be too complex. Really, you’ve just got to

  • read how to make a reprex, which for the R tag on SO usually gets you sent to

https://stackoverflow.com/a/5963610/4497050

and

  • search a little bit to make sure your question hasn’t been answered many times already.

Beyond that, just don’t take it personally if your question gets closed as a duplicate (think of it as people sending you—and whoever runs across your question—to a useful answer). In the unlikely event your question gets closed despite having a reprex and not being a duplicate, look at why.

I think one of @rdpeng’s Coursera courses had a nice primer, but I can’t find it at this point.

The other maybe-useful piece of advice is that it can be really hard to get those first 50 points so you can comment freely, but there are some simple tasks that can do to help, like suggesting edits to improve formatting.

Another resource is the SO R Public chat room [2], which serves as a place new users can get advice on asking questions or otherwise converse without the structure of SO. For a while Bhargav Rao was making sure new users got connected with someone who could help, but he’s an SO moderator now and has a lot of bigger responsibilities, so currently it’s a bit more a matter of who happens to be around.


#8

I agree, however-- when you’re new to something, this is much easier said than done! Trust me, I’m with you 100% on wanting those same things in code-related questions, it’s just that there’s definitely a curse of knowledge component.

Heck, just the other day I giffed how to save a figure from ggplot (or just R in general) to someone who’d been taking photos :camera: of their computer, and their reaction was basically “Slow down there, tiger! I’m going one step at a time.”

Long of the short: reprex is the :honeybee:s knees, SO questions aren’t necessarily hard, but they’re intimidating…and, I have no conclusion
¯\(°_O)/¯


#9

That would be a good place to use a wiki post (maybe linking to a thread like this one), so we could all edit/maintain it.

Unfortunately, we need staff or “Regulars” to create such posts at the moment. Maybe they can initialize some questions in the FAQ and leave it up to the community to fill them in.

(On the substance, I second everything @alistaire suggested.)


#10

Overall, allowing questions that don’t quite meet SO standards here would be the friendly and helpful way of doing things. The problem is that, if this site starts getting flooded with lower-quality questions, it’s going to be much more difficult to have the high-quality not-SO-appropriate discussions that we’ve been having thus far.

It’s a matter of scaling – I actually prefer answering code questions here, because the focus means that it’s often something I know, and the number of users means that my (semi-)carefully-written answer is less likely to be obsolete by the time I complete it. Consequently, I’m more willing to answer a question that is missing a good reprex or might need some clarification. But I know that isn’t sustainable long-term.


#11

Wholly agreed; when you’re just starting something, it’s intimidating to put your code out there for everyone to see, particularly when you know it doesn’t work [yet]. Personally, that’s what limited me to just reading SO for years before I ever signed up, and ironically, is exactly why I didn’t ask a Scala question on SO yesterday, so I definitely don’t have the answer.

At some point though, we’ve each got to work up the courage to ask the community to :dancer:. How people get to that point varies a lot, and I haven’t yet seen much useful advice on how to get there for those of use who are really self-conscious.


#12

to couple this with @alistaire’s comment, perhaps the purpose isn’t to ask the question here in hopes of getting an answer, but instead:

Here is my SO question - how can I better format this in order to get a useful response?

At which point the community can point out ways to format, walk people through reprexes, etc.


#13

I like the idea, but if it’s an easy question, I suspect they probably will get an answer here, though, in which case it probably won’t get migrated unless migration is as direct as it is for moving from SO to CrossValidated or another SE site. Despite Jeff Atwood’s involvement in Discourse, I’m not sure how possible that is.

It would be an awesome Area 51 site if Meta.SO can be convinced and a suitable architecture created, though those are high bars.


#14

I’m not sure I buy the “crowding out” argument. We can have a tag for programming questions (or preparing those questions, as @jessemaegan suggested); and those who aren’t interested can ignore the tag in its “tracking” settings.

For those who are only casually interested in it, browsing the tag to see the number of views and color-coded number of replies in recent threads should be an easy way to catch what’s hot/interesting within it.


#15

We could encourage people to post to SO first. If they don’t get any response, they could ask for help here on improving the question. If it’s answered here, then the person answering could potentially post the answer in both places and edit the original question if needed.

The biggest downside with that idea that I see is that, if the question isn’t answered here but is improved on, it would almost have to be reposted on SO rather than edited, as I don’t think that questions fixed a day or two after posting tend to get a lot of visibility.


#16

If “regulars” can edit tags, then this is likely true. Otherwise, counting on users with low-quality questions to tag posts or RStudio staff to catch and do that for them still has scaling problems. I prefer trying to encourage people to post high-quality questions in the first place, though – whether the right place for them is here or SO.


#17

I agree. Where potential obstacles to this might be are in helping newer users understand what comprises a high-quality question to begin with.


#18

This approach implies people have already gotten past the SO intimidation factor.

SO is designed to react to questions, even if it is just to close them. Questions that don’t get any reaction are usually ones that require a lot of work to answer, which may be because the reprex is not minimal, in which case that approach would work. Shiny questions are often a lot of work, so this site is a really valuable resource for those cases. (If you’re really hard up for some imaginary internet points, it’s also a good SO tag to follow.)

Reposting a question is discouraged, though, and can get your question closed. There are plenty of people here who could vote to reopen an improved question, though.

All of these are structural questions. Both sites were carefully designed so as to encourage a certain sort of dialogue—for SO, a very restricted one; here, more free-form. My point, I guess: People are going to do everything unless you restrict their options. Given the free-form nature of Discourse, we’ll likely see questions in every state of answerability. The good news is that the flexibility allows the community to react appropriately, whether coaxing a reprex or suggesting moving it to SO. Unless the site structure is going to be changed, I’m not sure it’s worth fighting the tide.


#19

I definitely think there’s a place for some questions here that are a bit meta-SO; e.g. that screenshot I posted earlier was actually from my not having -fopenmp (the annotations weren’t my questions, bunch of other homebrew formulae that no longer exist involved), but it’s the type of thing where I asked a human (well, an internet human friend) and got it sorted bc I had sub-questions before I could ask a full question.

I never did post it to SO, but, had it not been a whole stack of betas involved, I might have in the end to be helpful to others…


#20

When emailing others, I’ve articulated the difference like this:

  • community.rstudio.com is about general issues. Post here if you are looking for a range of opinions or some insightful back and forth discussion.

  • StackOverflow is about specific code problems (often a specific instance of a general issue). Post here if you want concrete solutions that make a concrete piece of code work.

But this is only my personal conception (not necessarily RStudio’s). And it doesn’t consider something that I learned from this thread: that many new R users feel that SO does not meet their needs, even for its stated purpose. That surprised me. I’m eager to see what sort of balance the community finds between these two sites.