Available on Free, Basic, Business
Improve your chances of getting an answer by following these tips. Search, research, and keep track of what you find. Even if you don't find a useful answer elsewhere on the site, including links to related questions that haven't helped can help others in understanding how your question is different from the rest.
Summarize the problem as a title.
The title is the first thing potential answers will see, and if your title isn't interesting, they won't read the rest. So make it count:
Try to sum up your entire question in one sentence: what details can you include that will help someone identify and solve your problem? Include any error messages, key APIs, or unusual circumstances that make your question different from similar questions already on the site.
Spelling, grammar, and punctuation are essential! Remember, this is the first part of your question others will see.
If you're having trouble summarizing the problem, write the title last - sometimes writing the rest of the question first can make it easier to describe the problem.
Explain the problem.
Before you provide any code, start by expanding on the summary you put in the title. Explain how you encountered the problem you're trying to solve, and any difficulties that have prevented you from solving it yourself. The first paragraph in your question is the second thing most readers will see, so make it as engaging and informative as possible.
Help others reproduce the problem.
Not all questions benefit from including code. But if your problem is with the code you've written, you should include some. But don't just copy in your entire program! It likely includes a lot of irrelevant details that readers will need to ignore when trying to reproduce the problem. Include just enough code to allow others to reproduce the problem.
Include all relevant tags.
Try to include a tag for the language, library, and specific API your question relates to. If you start typing in the tags field, the system will suggest tags that match what you've typed - be sure and read the descriptions given for them to make sure they're relevant to the question you're asking! Read more about using tags.
Proofread before posting.
Now that you're ready to ask your question, take a deep breath and read through it from start to finish. Pretend you're seeing it for the first time: does it make sense? Try reproducing the problem yourself, in a fresh environment and make sure you can do so using only the information included in your question. Add any details you missed and read through it again. Now is an excellent time to make sure that your title still describes the problem!
Respond to feedback.
After you post, leave the question open in your browser for a bit, and see if anyone comments. If you missed an obvious piece of information, be ready to respond by editing your question to include it. If someone posts an answer, be prepared to try it out and provide feedback.
As the author of the post, you will also receive notifications for all new activity to your question. These notifications will appear in your inbox on-site, but you can also receive notifications via email.
Accept an answer.
One of the most important parts of asking a question is to make sure that the correct answer is accepted and pinned to the top of the others. Not only does this give the author of the answer a small reputation boost, but it also gives a clear indication of what solved your problem and that your problem is solved.
Questions with an accepted answer appear differently in lists of questions to give others a quick indication that the problem is resolved.
Did you know? Just because a user is deactivated doesn't mean the accepted answer can never be changed for that question. Admins can accept answers on behalf of deactivated users.
Learning to ask a good question is a worthy pursuit, and not one you'll master overnight. Here are some additional resources that you may find useful: