I spend a lot of time here on DevForums. Over the years I’ve read many posts, both good and bad. This page is my attempt at writing down what makes a good one. Hopefully some of you will find it useful.
Before you read this, read the official Apple Developer > Support > Developer Forums page.
If you have questions or feedback about any of the points raised here, start a new thread with the Forums Feedback tag.
Share and Enjoy
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"
Quinn’s Top Ten DevForums Tips
Here are my top ten DevForums tips:
- Is DevForums right for you?
- Search before you ask
- Keep your expectations realistic
- Tag your thread properly
- Craft a quality post
- Prefer text over images
- Include details with your questions
- Crash reports
- Cross posting courtesy
- Resize screen shots
- Include a Spinal Tap reference
- Close your threads
- Think about your title
- Post URLs in the clear
Many of these boil down to one word: Empathy. Think about the person who’s reading your post. Can they read it? Will they understand it? Will it help them?
1. Is DevForums right for you?
To quote Apple Developer > Support > Developer Forums, Apple Developer Forums (aka DevForums) is:
a great place to post questions, exchange knowledge, and connect with fellow developers and Apple engineers on a variety of development topics.
DevForums is focused on developer issues. That includes the APIs in Apple’s platform SDKs, Apple tools, developer-oriented Apple services like App Store Connect, and accessory development. If you have a user-level question, you’ll have more luck over in Apple Support Communities, run by Apple Support.
DevForums is focused on Apple technologies. If you’re using a third-party tool or library, feel free to ask questions about it here, but you’re more likely to find folks with relevant expertise in that technology’s dedicated support channel.
If you want to file a bug report, do that using Feedback Assistant. If you want to discuss a bug you’ve already filed, DevForums is a great place for that. Make sure to include your bug number in your post. For more hints and tips on the bug reporting process, see Bug Reporting: How and Why?.
2. Search before you ask
DevForums has a history stretching back to 2015. Many questions have been asked and answered here. Before you start a thread, search the forums for similar threads.
For details about the search syntax, see Apple Developer > Support > Developer Forums. For a quick summary, hover over the help (?) button next to the search field.
Remember that DevForums is world readable and thus indexed by Internet search engines.
3. Keep your expectations realistic
DevForums is an informal support channel; no one is being paid to answer DevForums questions full time. Keep that in mind when you post.
Apple provides a number of formal support channels. To request formal support, go to the Apple Developer > Contact Us page.
One of those support channels is the code-level support provided by Apple Developer Technical Support (DTS). For more information about DTS, see Apple Developer > Support > Requesting Technical Support.
Asking about Apple’s unannounced plans is unlikely to yield useful results. Apple folks can’t discuss The Future™, and non-Apple folks can only speculate.
Apple folks can’t discuss Apple’s internal business practices. For example, we can’t answer why question — “Why did Apple do this?” or “Why hasn’t Apple done that?” — unless there’s existing documentation that offers an explanation. If you think Apple should do something differently, file a bug that explains what you’d like to see change and the rationale for that.
Not everyone works the same hours as you do. DevForums is a worldwide community, so there are time zones to consider, but there’s also just individual preferences. This is especially relevant around weekends, where your reply on Friday may not be seen by other folks until Monday.
Different folks use DevForums in different ways. Some folks lean in to the notification system, whereas others allocate certain times of the day, or the week, to help out.
4. Tag your thread properly
DevForums uses a tag-based model. Folks willing to offer help often monitor a set of tags and only see threads with those tags. To increase your odds of getting a response, tag your thread properly.
For a list of tags, go to Developer Forums Tags. That’s a lot of tags!
If you’re creating a new thread and see a very short list of tags, switch Post Visibility to Public. To learn more about this, see Public and Private Tags.
With that many tags there are inevitably cases where a tag doesn’t mean what you think it means. For example, the ExceptionHandling tag is about the rarely used ExceptionHandling framework, not about exception handling in general. Before using a tag, read its description. That’ll tell you whether the tag is actually appropriate for your thread.
5. Craft a quality post
When replying, use a reply rather than a comment. Comments are best reserved for short messages, like “Thanks!” or “See this other thread.”
IMPORTANT If you reply in the comments, other folks on the thread may not be notified of your reply.
DevForums supports Markdown formatting, similar to that used on GitHub and by DocC. The editor UI has buttons for the most common things, like Bold and Italic, but don’t feel the need to limit yourself to that.
Correct formatting is particularly important for preformatted text:
Use the Inline Code button, which inserts single backquote delimiters, for inline text in code style: identifiers and so on.
Use the Code Block button, which inserts triple backquote delimiters, for blocks of text in code style: code snippets, logs, and so on.
After submitting your post, look it over to make sure that it reads well. If not, you have a short window where you can edit the post to fix things.
6. Prefer text over images
Don’t use screen shots for data that’s essentially textual, like code snippets and logs. For example, if you want to post a log message, include that as text rather than adding a screen shot. That makes it much easier for your readers to work with the text.
Use the Code Block button, which inserts triple backquote delimiters, to format blocks of text in code style.
Reserve screen shots for situations where the issue is visual, for example:
When discussing view layout problems
When posting instructions to achieve some task in a GUI app, like Xcode
7. Include details with your questions
When starting a thread, try to include all the relevant details in your post. If you skimp on these details, folks will have to reply asking for them, and that slows things down.
Specifically, anticipate the following questions:
What platform are you targeting? And what version of that platform?
What version of Xcode are you using?
What version of the OS are you testing on?
What specific API are you using?
What are the exact steps you took?
If something failed, what are the symptoms of that failure? If an API returned an error, what was that error?
If nothing failed, what results did you see? And what were you expecting?
If you filed a bug, what was the bug number?
What else have you tried?
8. Crash reports
If you post a crash report, follow the instructions in Posting a Crash Report.
9. Cross posting courtesy
Don’t start multiple threads for the same issue. That just wastes everyones time.
Sometimes this happens by accident. If that’s the case, add a comment to one of the threads redirecting folks to the other one.
If you find a bunch of old threads that might be related to your issue, don’t post full replies to all of them. Pick a lead thread and post your full reply there, then reply on the other threads with a link to the lead thread. Alternatively, start a new thread and reply on all the old threads with a link to that. That’ll help focus the discussion on your specific issue.
If you post your question to another support channel, provide a link to that in your DevForums question, and vice versa. That avoids folks working on a question that’s already been answered.
10. Resize screen shots
If your post includes an image, make sure it renders well. Screen shots from Retina displays are often ridiculously large. Use Preview to crop the screen shot and, if necessary, downsample it by 50% (using Tools > Adjust Size).
11. Include a Spinal Tap reference
To be clear, this is a joke. While the occasional Spinal Tap reference is allowed, please don’t add one to all your posts (-:
12. Close your threads
If someone replies with the answer you need, mark that as correct. That gives them some credit and helps other folks with similar questions find that answer.
If you find the answer by yourself, please post a short summary of what you did. Feel free to mark that correct.
If you accidentally post two copies of the same question, choose one as the primary and, in the other one, add a comment that links to it.
13. Think about your title
When creating a thread, think carefully about your title. Your title is your thread’s ‘marketing statement’, a way to entice folks to read your post. Try to summarise your issue in 15 words or less.
Adding tags to your title makes it harder to read. Instead, add your tags with the tagging UI. See tip 4 for more on tags.
14. Post URLs in the clear
DevForums has a list of websites you can link to at will. For example, it places no restrictions on links to Swift Forums.
To link to a site that’s not on the allowlist, skip the Markdown link syntax and post your link in the clear. So, this won’t work:
Apple is based in [Cupertino](https://www.cupertino.org).
but this will:
Apple is based in Cupertino. https://www.cupertino.org
2023-11-16 Added a link to Public and Private Tags.
2023-02-22 Expanded tip 3.
2023-01-09 Added a note about tags to tip 13.
2022-12-09 Expanded tip 12.
2022-08-22 Expanded tip 5 to explain why you shouldn’t reply in the comments.
2022-08-11 Expanded tip 9.
2022-06-17 Added tip 14. Updated the preamble to include a link to the main DevForums page.
2022-06-04 Added a discussion of unannounced plans to tip 3 (thanks to Scott).
2022-06-03 Added tip 13.
2022-05-24 Added tips suggested by Claude31 and Scott.
2022-05-23 First posted.