[Moderator] - List Guidelines - Must Read

  • iPhone SDK
    ----------

    Until an announcement is made otherwise, developers should be aware
    that the iPhone SDK is still under non-disclosure (section 5.3 of the
    iPhone Development Agreement). It can't be discussed here, or anywhere
    publicly. This includes other mailing lists, forums, and also blogs.
    Violating the NDA will result in WWDR being notified of the breach.
    Further action is a their (and legal's) discretion.

    The iPhone SDK situation is somewhat different than a Mac OS X
    release, in that a Mac OS X release includes a copy of the developer
    tools with the distribution. The iPhone OS 2.0 release on devices and
    as an upgrade does _not_ include the development tools. As a result,
    the SDK is not automatically considered public because the release has
    occurred.

    Section 5.3 of the iPhone Development Agreement remains in force at
    this time, and will so remain until iPhone Developer Program members
    are specifically and personally notified by an authorized
    representative of Apple.

    Xcode 3.1
    ---------

    iPhone SDK requires Xcode 3.1 so it contains it (because it won't work
    without it).

    Xcode 3.1 is available indepently of the iPhone Developer Program and
    its nondisclosure agreement, so it's available as a download
    separately from the iPhone SDK,.

    Whichever you choose, the Xcode build and installation is identical.
    But you still can't discuss the iPhone SDK.

    Questions about Xcode and Interface Builder are best addressed to the <xcode-users...>
      mailing list.

    SnowLeopard NDA
    ===============

    The SnowLeopard seed is under non-disclosure and can not be discussed
    here.

    Discussing Private API
    ======================

    The discussion of Private API is also not appropriate for this list.
    Using private API is strongly discouraged as it can (and often does)
    change in future software revisions. If you feel some private API
    should be made public contact WWDR directly or file a bug using
    bugreporter.apple.com. Please do not advocate for those changes here,
    it isn't effective.

    Please stay on-topic
    ====================

    There are currently more than 5000 subscribers to this list and
    several hundred messages posted per day. In order to keep the list
    useful please stay on topic and stick to technical discussion.

    Cocoa-dev should not be the first place you turn when you encounter a
    problem. First you should:

    - Search the documentation in Xcode
      - Remember to select the appropriate doc set and, if applicable,
    turn on full text searching
    - Search the list archives at apple.com or cocoabuilder.com
      - Many questions have been asked repeatedly and good answers have
    already been provided. Check the archives _every time_.
    - Search Google
      - There are many Cocoa developers who blog about their experiences.
    This is a very useful resource.
    - Ensure that this is actually Cocoa related.
      - Basic C questions are not appropriate for this list.

    If someone posts a message that is off-topic, please do not reply to
    the list.  You should contact the sender directly or alert a
    moderator.  If a moderator flags a thread (typically with [Moderator]
    in the subject line), do not continue to post to that thread. Do feel
    free to contact the list admins at <cocoa-dev-admins...>
    with any issues.

    If you post a message that is blatantly off-topic, you are liable to
    be moderated.

    While Apple engineers often subscribe to the list and answer
    questions, they do so on a volunteer basis. This is not an official
    support channel, and you should not expect an Apple engineer to
    provide the answer. Instead contact <dts...> for technical
    issues.

    To file bugs use bugreporter at http://bugreporter.apple.com

    Other mailing lists
    ===================

    **** Other Apple mailing lists that may be relevant are listed at:
    <http://lists.apple.com/mailman/listinfo>
    in particular see:
    Xcode-users: <http://lists.apple.com/mailman/listinfo/xcode-users>

    The Omni Group hosts a general Mac OS X developer list:
    <http://www.omnigroup.com/mailman/listinfo/macosx-dev>

    There is a Yahoo Group for discussion of business-related issues at:
    <http://groups.yahoo.com/group/macsb/>

    List etiquette
    ==============

    When you post a message, bear in mind that you are asking several
    thousand people to listen to what you're saying. Please ensure that
    you abide by the list rules:

    <http://lists.apple.com/tc.html>
    <http://lists.apple.com/tips.html>
        In particular: please "Edit included messages in replies to
        minimize the amount of text."  There is no need, for example,
        to include the list footer in your reply.

    **** Before posting a question, please check the list archives (see
    "Online resources" below) and try searching Google. Many questions
    have been asked before and have already been answered.

    **** When you ask a question, whenever possible please:

    1. Describe what your high-level goal is
    2. Include any relevant code
    3. If appropriate, include URLs to screenshots

    For more details, see:

        <http://www.mikeash.com/getting_answers.html>

    If you post a message to the list and do not get a reply, you should
    not simply repost the message.
    There may be reasons why no-one has answered, see the references above.
    If you want to send again, add more information or background, or
    explain what further steps
    you have taken in the interim to solve your problem.

    Note that you should never post to the list any message that was sent
    to you
    privately unless you have the original author's permission.

    Cocoa-related resources
    =======================

    Cocoa-related resources that may answer your question without the need
    to wait for a reply from the list:

    Apple's documentation
    ---------------------

    The Cocoa Getting Started page.
        If you haven't read any Cocoa documentation and want to learn about
        the technology, you should begin with this.
    <http://developer.apple.com/referencelibrary/GettingStarted/GS_Cocoa/>

    Main documentation links:
    <http://developer.apple.com/documentation/>
    <http://developer.apple.com/documentation/Cocoa/Cocoa.html>

    Apple produces several kinds of documentation.  For an overview of how
    to use the documentation, see:

    <http://developer.apple.com/referencelibrary/usingreflib.html>
    and
    <http://developer.apple.com/macosx/newinreflibrary.html>

    * Finding documentation

    If you are not sure where to find documentation relevant to your
    problem, a useful strategy is to go to the API reference for a
    relevant class and look at its companion document.  You can also
    search the online documentation suite using the search field at the
    top right of the page (see, for example, <http://developer.apple.com/documentation/Cocoa/index.html>).  It is often a good idea to check the "Restrict to Cocoa" box.
    If you need more precise search, you can use the Advanced Search panel
    at <http://developer.apple.com/search/>.

    Remember you can also view and search the documentation in Xcode --
    see the "Help" menu.  You can see all the methods associated with a
    class (and links to relevant documentation) using Xcode's Class
    Browser (see the Project > Class Browser menu item).  In Xcode, you
    can Option-double-click on a symbol to look it up in the
    documentation, and you can Command-double-click on a symbol to go to
    the header file in which it is declared.

    * Keeping documentation up-to-date

    You can keep your local documentation up-to-date by using the
    Documentation update preference in Xcode.  Apple's developer
    documentation is updated en bloc about once a month.  An update
    package is made available at about the same time that updates are
    published on the web site.

    Code examples
    -------------

    Apple provides code samples in two places, on-disk (installed with the
    developer tools) and online:

    Developer examples
    <file:///Developer/Examples/AppKit/>

    ADC
    <http://developer.apple.com/samplecode/>

    Online resources
    ----------------

    "UNOFFICIAL Cocoa-dev Frequently Asked Questions"
    <http://www.alastairs-place.net/cocoa/faq.txt>
        Especially useful for pointers to documents relating to memory
    management
        and book recommendations

    List archives
    <http://lists.apple.com/archives/cocoa-dev>

    Combined Apple and Omni Cocoa developer list archives
    <http://www.cocoabuilder.com/>

    Cocoa-related sites
    <http://www.cocoadev.com/>
    <http://www.cocoadevcentral.com/>
    <http://www.stepwise.com/>

    Cocoa Bindings
    <http://developer.apple.com/documentation/Cocoa/Conceptual/CocoaBindings/>
    <http://developer.apple.com/documentation/Cocoa/Reference/CocoaBindingsRef/>
    <http://developer.apple.com/cocoa/cocoabindings.html>
    <http://homepage.mac.com/mmalc/CocoaExamples/controllers.html>
    <http://www.cocoadevcentral.com/articles/000080.php>
    <http://www.macdevcenter.com/pub/a/mac/2004/04/06/cocoa.html>

    Google
    <http://www.google.com/>
    (It is sometimes the case that using the subject line of a post as a
    search term in
    Google will yield an answer.  If this is the case, you have probably
    not invested sufficient
    effort into finding an answer to your problem, and you are likely to
    receive a reprimand.)

    Memory management
    -----------------

    Developers are strongly discouraged from attempting to reformulate
    Cocoa's memory management rules in posts to the list.  Almost
    invariably, someone makes a subtle or not-so-subtle mistake which then
    results in confusion and additional messages to resolve the issue.
    Simply post links to the relevant documentation, such as:

    <http://developer.apple.com/documentation/Cocoa/Conceptual/MemoryMgmt/Tasks/
    MemoryManagementRules.html
    >

    Links to other reviewed articles that discuss memory management are
    given in <http://www.alastairs-place.net/cocoa/faq.txt>