I have been following a rule when I decide where to ask a question. I think the process is like this:
If I think the problem has a definitive answer, and is based on something that has been definitely achieved then I will ask on SO because the answer is likely to be succinct and helpful for others. E.g. How to count missing in a vector.
If the question is more exploratory, like how do I do machine learning? Then Discourse is better.
Interested in others thoughts to flesh this out.
The community that has formed around Julia is one of its best features and it seems to be most active here on discourse, so if I have a question or discussion topic at all related to Julia, I always come here.
i have to add, in Julia’s slack, there is a bot that adds every SO question with the Julia tag, so we are aware of new questions
Is there a channel where these questions appear?
in slack, #stackoverflow-feed
I like the discourse community feel a lot more than I like the feel of StackOverflow, but SO is more familiar to many newcomers and is often more ‘googleable’, so I try to at least answer questions in StackOverflow and occasionally crosspost questions from Discourse and Slack to SO.
Interesting question. I definitely have a rule, but I never stopped to consider what that rule is.
I think it is something along the lines of “how generally applicable is this issue?”. If it is something a lot of people might encounter, then it goes on SO. If it is potentially specific to me, then I come here. But for sure there is a grey area in the middle there…
I don’t really have any good reason for why this is my rule though… perhaps it just reflects that more people, and especially more newbies, are likely to turn up on SO.
I would prefer here on Discourse (on SO I find sometimes people closing legit questions for a questionable attempt to keep a good “quality standard” of the QA platform).
But then, if we all post here, Julia will drop in the next (biased) statistic of programming language usage based on SO… biased and not even consistent… better the community, less the rank of the language :-/
I’ve never posted a question on Stack Overflow because I don’t have time to write a formal analysis of the problem that is required to avoid being heckled.
I would like to see this Discourse archived and optimized for search engine, like
- old discussions should be closed
- old discusions which should stay open (e.g. because it is still of general interrest and discussion is ongoing or should be ongoing) should be made sticky (visible on top or in sticky thread)
- closed discussions should be moved to a searchable archive, which is optimized for search engines
- discussions with solution could be made available on SO automatically? Possible? With backreference?
Just some ideas.
I have the impression that the preferred style of questions on StackOverflow is about problems which are very concrete, pragmatic, and well-defined. Which is fine — those criteria can help focus discussions.
But at the same time, Julia is a language that is breaking new ground and exploring novel ideas and concepts all the time. While the “core” language is more or less settled now (for 1.x), best practices are still evolving, new ideas are experimented with, and hypothetical discussion or speculative requests for advice are always welcome on this forum.
Also, a lot of contributors here have a pedagogical approach and pay attention to writing clean code, being ready to explain why something was done in a particular way. Even reading discussions here I don’t directly participate in is very educational.
Moreover, since there are a lot of domain experts hanging around, it is not unusual to receive great advice on linear algebra, statistics and probability, differential equations, optimization, and a lot of other topics which are not strictly about the language or its libraries, and would be very likely to be marked off-topic on SO. Amazingly, this while a lot of this is off-topic it is mostly self-regulated by polite people so it does not get out of hand.
So after doing some research (to avoid asking trivial questions if possible), I always just ask questions here and don’t even consider SO.
A (somewhat nasty) trick in SO is just to add the Julia tag, as adding other tags attracts moderators from other communities with the SO mentality. i have seen a lot of somewhat valid SO questions get closed because they tagged #mac and a mac moderator came and declared the thread offtopic, where there is high posibility that an SO question with a julia tag would be answered by people of this community, Discourse style if it is needed.
I don’t know if its doable at the level of Julia’s Discourse of it requires modifications of the Discourse Software itself. but there are good ideas. For example, there what an attempt to port some questions from Discourse to SO( i know there is a template somewhere)
I tend to go to Discourse or Slack for questions that might be a bit specific for the specific problem I’m working on or if I’m not sure that a “best” answer would exist. However, I’ve tried to put questions that should have a simple or consensus answer on Stack Overflow.
A few reasons for posting on Stack Overflow:
- Search engine discoverability of Discourse is poor, Slack is non-existent and ephemeral.
- Many beginners go to SO for help/reference.
It’s extra mental overhead for someone trying to grapple with the language (or programming in general) to realize in the first place that there’s a different place to even ask questions.
- Sometimes you don’t want a tangential discussion of edge-cases, design opinions, etc that Discourse discussions often go into. You just want to know how to do X.
Even though I consider myself relatively inexperienced, I know I’ve come a long way from trying my first programming tutorial. For me, Discourse and Slack might be better but I still think of when a question I have now might have helped me from several years ago. That’s when I tend to prefer posting on Stack Overflow.