Asking a good question is the first step to receiving a good answer. Here are some tips for what to ask and how to ask it.
Step 1: Is my question appropriate for the community
First, be sure the question is appropriate for the community:
Forums are a great place to discuss...
Forums are NOT a great place to discuss...
Step 2: Search before you ask
Has your question already been answered? Or maybe there's another article, idea, or blog addresses the topic.
- Use the Global Search (magnifying glass in the upper right corner)
- Use the Ask a Question search box to see what already exists.
- Try different keywords in case the question was asked slightly differently.
Step 3: How to ask it
Now that you know you have an appropriate and novel question, here are some tips for what to include in your question and how to ask it so other members are able to help.
- Include some basic information such as:
- Do you have an error or looking for design or configuration advice?
- What are you trying to do? What's your overall objective?
- How do you have it configured currently?
- What is happening (good, bad, or otherwise)?
- Include relevant details about the scenario or runtime environment. Are there notable constraints or assumptions you're working with?
- Be clear about your overall objective up front. "Progressive disclosure" of your scenario ("How to I do X?...thanks but what I REALLY want to do is Y...") can lead to unnecessary backtracking. Letting others know the ultimate goal can result in a better suggestion sooner.
- Do your homework first. What have you tried or found in researching the issue so far? Not only does this avoid receiving answers you've already dismissed but it builds goodwill with your peers.
- If you're asking about an error, include the full error message. Copy and paste the error text (full stacktrace when available) instead of a screen shot of an error message.
- Screen shots are a great way to describe process, shape, and component configuration. Take care to mask any sensitive details like host names, user names, email addresses, etc.
- Processes can get very large and complex sometimes. When possible try to isolate the problem first and create a simple representative test case. What's the minimal amount of configuration that still reproduces the behavior? In other words, avoid posting a screen shot of a process with 50 shapes and asking "what's wrong with my process?"
- For mapping issues provide samples/snippets of the input, actual output, and desired input data. Again take care to mask any sensitive data in examples.
- For complex nested/looping data, create a simplified "conceptual" example of the data that highlights the important logical relationships.
- For configuration and design-related questions, share your overall objective or requirement. Very often there are other ways to approach the problem and knowing what you're ultimately trying to accomplish is important.
Share these tips with new users to help improve questions across the community!
See also Creating Questions and Discussions for more information.