Please read: make it easier to help you

Welcome to the Julia Discourse! We are enthusiastic about helping Julia programmers, both beginner and experienced. This public service announcement (PSA) outlines best practices when asking for help. Following these points makes it easier for us to help you and more likely you’ll get a prompt, useful answer.

Keywords are highlighted to make it easier to refer to specific points.

  1. Choose a descriptive title that captures the key part of your question, eg “plots with multiple axes” instead of something generic like “help me with plotting”. Make use of tags and categories (you can edit those and the title after posting). These will make it more likely that your question will be seen by the people who can potentially help.

  2. Post quoted code by enclosing code blocks in triple-backticks ```:

    ```julia
    function f(x, y)
        x + y
    end
    ```
    

    This will highlight syntax and use a monospace font.

    Don’t post your code as a screenshot; it is difficult to read and impossible to copy-paste.

  3. Indent your code to reflect its structure (your editor should help you with this). Indented code is easier to understand and troubleshoot. Use the preview window to verify code is properly formatted before posting.

  4. Do your best to make your example self-contained (“minimal working example”, MWE), so that it runs (or gets to the error that you want help with) as is. This means including package loading (e.g. using ThatPackage) and any data that the code operates on. If your data is large or proprietary, generate example data if possible and include that. This StackOverflow answer explains how a DataFrame can be turned into a string representation that can be copy/pasted.

  5. Simplify your code to the smallest piece of code that still shows your problem. This step takes the most effort but is the most important for fixing your problem. Short, simple examples tend to get answers quickly.

  6. Include code instead of REPL output, except when the latter is relevant. (REPL is “read-evaluate-print loop”, the julia> command line.)

  7. Include full stacktraces (that is all of the stuff that comes along with an error message). They often contain valuable information, even if they seem cryptic. Please quote the stacktrace as well (see point 2).

  8. Please use the latest stable version of Julia and released packages (you can ensure the latter with pkg> up). If you cannot do so, make sure you note the relevant versions by including the quoted output of versioninfo() and pkg> st --manifest SomePackage.

  9. If you have a plotting (style) question, include a plot with the desired output (possibly generated with other software).

  10. You may not get a response here for packages with a very narrow audience. In that case, you may want to consider opening an issue on Github (or Gitlab, etc) for the package repository, just to ask a question. Most packages are OK with this.

  11. If an answer solves your problem, mark it as solved by clicking the “:white_check_mark: Solution” button. This makes it easier for future help-seekers to find the correct answer, especially in a long discussion.

  12. Avoid extending the original question that has already been answered with many new questions. It is better to start a new thread.

254 Likes