Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save orklann/2ed035051a000d1559434c0e43d2ec5e to your computer and use it in GitHub Desktop.
Save orklann/2ed035051a000d1559434c0e43d2ec5e to your computer and use it in GitHub Desktop.
#swift-lang ReadMe

"JUST BECAUSE YOU'RE USING SWIFT DOESN'T MEAN YOUR QUESTION IS ABOUT SWIFT"

How To Get Answers

Ask your question and then be patient. Tell us what you want to happen, what is actually happening, and include any error messages you find:

  • Provide a scenario. "I am trying to do X, I do so by calling APIs W and Y, but Z happens instead. I see the following error messages:..."
  • Focus on the goal. Ask about what you're trying to achieve (the big story) rather than the specific technical detail that you believe is holding you back.
  • Don't solicit help. Don't say, "Does anyone here know about (for example) Protocol Extensions". Just ask your question.
  • Do your homework. Search the web before asking in-channel.
  • Be courteous Don't just paste Stack Overflow questions in-channel.
  • Remember the topic Refer questions about third party libraries to their developers.
  • Asking questions: Getting help on IRC, Smart Questions, Getting Answers, What have you tried?
Handy Links

iOS #iphonedev • OSX #macdev • Off-Topic #iphonedev-chat • New to Apple Dev #cocoa-init • watchOS #ioswatchdev • tvOS #appletvdev

FAQ

Q: What do you mean my question isn't about Swift?

A: Swift is a Programming Language, like C or Objective-C. The language exists on its own, even outside a framework such as AppKit or UIKit.

  • Swift question: How do optionals work?
  • AppKit question: How do I create a semi-transparent non-rectangular NSWindow?
  • UIKit question: Why can't I embed a navigation controller inside a tab bar controller? I'm trying desperately to learn this language, someone said "use autolayout", then someone said, "use withVisualFormat"?
Q: But I'm using Swift in my example!

A: Your question is likely about how to use a part of the frameworks Apple provides to developers, such as AppKit or UIKit. These sorts of questions are better suited to the communities built around them like #macdev or #iphonedev. Many of us are in those channels too and would love to help you out there!

Q: Can I get help on AlamoFire/SwiftyJSON/CocoaPods/Carthage/Masonry?

A: Take questions about 3rd party packages to channels that are specific to those implementations. This room is for Swift language discussions.

Q: Which is best? SwiftyJSON or AlamoFire?

A: URLSession

Q: But I never had any issues with this technology until I started using Swift!

A: Don't ask "How do I use Some API or Framework in Swift?" Construct a language-specific question. If you see the word Optional anywhere, you may need to unwrap your results before using them. (Caution: Link is slightly out of date but the concepts are the same.) Other common issues involve Swift error chaining (and with the try and throws keywords) and type safety limitations.

Q: What are the channel rules?
  1. Read the docs.
  2. Google first. Ask second. Search the web thoroughly. Talk out your problem to yourself before asking questions in-channel.
  3. Be resourceful. Figure out how to participate without constant hand-holding. Don't be a help vampire. It's a bannable offense.
  4. Debug your own code. Ask for advice, not specific solutions. If you can't thoughtfully evaluate your own work, you shouldn't be in this channel.
  5. Show respect. This is a volunteer-staffed channel. Each member's time is worth at least as much as your own. Remember to say "Thanks!"
  6. Don't say it "doesn't work". Explain your problem completely and concisely.
  7. Show your code. If you don't want to or can't show your code, create a minimal project that demonstrates your issue.
  8. Use a paste site. Never paste multiple lines of code directly into the channel. Don't paraphrase. Show your actual code and error messages.
  9. Don't cross-post your question to multiple rooms.
  10. Do not publicly log conversations. Think of #swift-lang as a coffee shop. If you cannot overhear the conversation as it happens, the words should be gone forever. We will ban any logging bots brought into the channel.
Q: But I asked in another room and no one answered!

A: The question is still off topic. We will ban repeat offenders.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment