Developers question why Apple keeps its iPhone 2.0 SDK under NDA

Posted:
in iPhone edited January 2014
Apple's insistence on keeping iPhone 2.0 development under strict non disclosure agreements is frustrating efforts in the development community to share ideas, teach classes on iPhone development, and print reference books on the subject.



However, it's not preventing iPhone coders from making record profits from mobile development through. With money rolling into the iPhone App Store at a million dollar per day pace, Apple is unlikely to feel any pressure to change its NDA policy in the short term. Developers initially signed the NDA to gain access to the pre-release iPhone SDK in March. The NDA prevents developers from talking publicly about features in the software development kit, but it also bars them from talking to other users, even those who are also under NDA, unless they work together in the same company.



Because the NDA precludes iPhone developers from participating in conference discussion panels or training sessions, blogging or contributing to mailing lists, or even having private discussions with other developers, many are left frustrated in their attempts to share what they've learned or find answers to problems they're experiencing.



That has pushed iPhone developers to seek creative ways around the limitations. According to an article in the Los Angeles Times, "Some developers who are seeking help have resorted to paying each other $1. That way, if challenged by Apple's legal department, they can argue that they are subcontractors and therefore free to discuss the software."



Why NDA?



Apple certainly isn't alone in putting developers under NDA. Google's Android open source project selected a subset of its software developers earlier this year and offered them private access to special builds of the software after signing an NDA. This resulted in complaints from the open community among those who were shut out of access to all of Android's SDK updates over the last year between November 2007 and this month, when Google finally released another public beta.



Just days after releasing that second public beta of Android however, complaints began to pile up about Google's lack of "promised" support for Bluetooth features and for Google's own Gtalk service, which was pulled over security concerns. The two missing features that Google chose to delay in order to ship Android 1.0 on time were given nearly as much attention by bloggers as the company's entire year of progress on the Android SDK.



Apple works hard to manage its public appearance because its critics are similarly looking for any scrap of detail they can sensationalize to sell as news. By putting developers under NDA, the company can communicate more about its future plans to developers and retain the freedom to make changes as needed without the scrutiny of a non-technical media exposing every engineering decision to uninformed public debate, at least as long as developers respect the NDA they signed.



Expectation management



The historical failure of many developers to abide by their NDAs has had a chilling effect on the amount of detail Apple has been willing to provide. Even within the NDA-covered iPhone SDK, which anyone can signup to participate in, Apple has revealed next to nothing about the future of hardware peripheral support on the iPhone, including expanded Bluetooth support or any devices that might attach to its USB dock connector. There is also little known about the company's future plans to expose other low level device access to third parties.



Detailed information on how much access Apple will eventually grant developers may be withheld because Apple hasn't yet decided what it can support in the near term, given its finite resources. It's far safer for the company to under-promise and over-deliver than to outline an extensive plan for features and services that it is unable to complete.



Last year, Apple released interim web-based development details for the iPhone without any clue about whether plans to ever open a full SDK were even in the cards. This allowed the company to provide a partial solution immediately and reveal details on its Cocoa Touch efforts only when those tools were nearly ready to ship. Apple didn't escape criticism, but it was able to sustain interest in iPhone development and got third parties such as Facebook and Google working on iPhone web apps even before its full development strategy was finished.



In contrast, over a similar period of time public interest in Google's Android peaked early, then waned for nearly a year before being met with grumbling disappointment. Microsoft was similarly badgered in the press for dropping features from Windows Vista advertised during its years' long beta period, despite the fact that some of them, such as WinFS, weren't delivering the expected results and customers weren't even sure why they might need them. Vista ended up with a bad reputation for not living up to early expectations that were simply set too high, and which overshadowed its more significant advances.



Opaque engineering decisions



Apple has been similarly criticized for setting expectations that proved more difficult to deliver than expected. When Apple chose to delay the release of Leopard in order to concentrate its efforts on shipping the iPhone, the decision was met with scorn by Mac users who though they were being left out, and ridicule from critics who insisted that the six month delay would prevent Leopard from taking any competitive advantage of Vista's setbacks.



Further, despite noting that Leopard's advertised features were subject to change, Apple was also criticized for saying Leopard's Time Machine backup feature would work with the AirPort Extreme. At the launch of Leopard, the feature still wasn't ready. Apple simply dropped any mention without providing any hint of whether it would ever ship, frustrating many users. It was eventually provided through a software update involving both Leopard and the AirPort's firmware.



Apple was also taken to task for not supporting Java SE 6 in Leopard. The company made no comment on its plans, but eventually ended up delivering Java SE 6 exclusively for 64-bit Intel Macs. That engineering decision weighed the typical users of Java SE 6 against the resources needed to deliver it on each segment of the Mac platform. As with any decision, it did not please every user.



By simply ignoring the spirited and often uninformed debates that flare up around every engineering decision the company makes, Apple's engineers are able to focus on making decisions based on a more complete, internal picture of all of the factors involved, rather than being distracted to explain why each decision was made and rethinking each one in blogs and other public forums.



Apple's own developers are kept under strict NDA in part to keep engineering decisions based on attainable goals the company sets for itself, rather than opinions expressed in focus groups. Apple is working to avoid the committee-designed compromises and politically splintered engineering that often occurs in decentralized open source projects. Google's move to place Android's early development under NDA was no doubt made for similar reasons, and even Microsoft has expressed that it will be saying less about the new features of its upcoming software for the same reasons.



Patent protection



Another reason for locking up iPhone details behind NDA is that Apple can't seek to patent any inventions after they are publicly published. By keeping the iPhone's details under NDA, it can retroactively seek patent protection for ideas that it discovers are more novel that originally thought.



Earlier this month, the Daring Fireball blog cited a reader commenting on the subject who explained, "At my company, our lawyers advised us to keep what we considered more-or-less public software under NDA for a very long time because demoing software to someone under NDA, no matter how many people it is, avoids 'publishing' the software and any inventions contained therein. We know Apple’s been building up a patent strategy around multi-touch; maybe their lawyers believe there are patentable inventions described in the iPhone SDK and they are telling Apple to keep everything under NDA until they know provisional patents can be filed within a reasonable amount of time (you get a year after publishing in the US, but in the EU, I think you forfeit any patent claims once your invention is 'published')."



"In the eyes of the USPTO," the source noted, "every invention in the iPhone SDK is a non-published invention and will continue to be so until the NDA is lifted."



Waiting for the other NDA to drop



Despite all the reasons Apple has for keeping things private and under control, or at least as private as the "anyone can see but nobody can say" NDA allows, iPhone developers are still frustrated by their inability to share knowledge and the legal uncertainty surrounding any attempt to do so. Stanford University has already scheduled a class on iPhone programming for incoming students, which raises questions about how Apple will react to public discussion of its iPhone development platform.



Several authors have written reference guides they feel they can't publish due to worries that Apple would sue them for breaking their NDA. The LA Times cited the publisher of "iPhone in Action," who has already pre-sold 400 copies. So far, the publisher has delivered an electronic version that only covers web development, withholding the portions that delve into the Cocoa Touch SDK. The company fears it may have to refund users if it can't legally publish the information.



Also in limbo is "The iPhone Developer's Cookbook" by Erica Sadun, a writer and developer with a PhD in Computer Science who helped lead efforts to jailbreak the original iPhone. Somewhat ironically, Sadun could write more about the closed, undocumented software in iPhone 1.x than about the published details of iPhone 2.0, because like all iPhone 2.0 developers she is now bound by the NDA.



«1

Comments

  • Reply 1 of 32
    mactelmactel Posts: 1,275member
    The NDAs are there because of the Android, Blackberry, Palm, Symbian, and Microsoft mobile OS platforms. Apple doesn't want their competitors using their R&D to better their products without some difficultly.



    This is flawed thinking. Apple needs to open up to improve the developer experience. Microsoft has it right here: Developers Developers Developers!
  • Reply 2 of 32
    Quote:
    Originally Posted by MacTel View Post


    The NDAs are there because of the Android, Blackberry, Palm, Symbian, and Microsoft mobile OS platforms. Apple doesn't want their competitors using their R&D to better their products without some difficultly.



    This is flawed thinking. Apple needs to open up to improve the developer experience. Microsoft has it right here: Developers Developers Developers!



    NDA still valid, but there are several web sites from developers that publicity the internals of the SDK with out problems, some websites from Apple partners as Movistar other that make a lot of profit from the banners, publishing some sample code from the SDK samples.



    Apple do nothing agains those sites, and forums, and seen that only affect sites in English, Apple do not understant French or Spanish, I hope.
  • Reply 3 of 32
    pg4gpg4g Posts: 383member
    Quote:
    Originally Posted by MacTel View Post


    The NDAs are there because of the Android, Blackberry, Palm, Symbian, and Microsoft mobile OS platforms. Apple doesn't want their competitors using their R&D to better their products without some difficultly.



    This is flawed thinking. Apple needs to open up to improve the developer experience. Microsoft has it right here: Developers Developers Developers!



    I agree.



    Being a developer, I understand the horror of the restrictions of the NDA. Unlike other platforms, the iPhone can be quite a daunting change of pace for developers. Unless they come directly from the Mac, Objective-C can be quite difficult to understand, let alone the API's that Apple has lately cooked up.



    Apple needs to open this platform, and say "If you would like to hear new features, tick here. Anything we say in this section is NDA covered."
  • Reply 4 of 32
    palegolaspalegolas Posts: 1,274member
    Quote:
    Originally Posted by MacTel View Post


    The NDAs are there because of the Android, Blackberry, Palm, Symbian, and Microsoft mobile OS platforms. Apple doesn't want their competitors using their R&D to better their products without some difficultly.



    This is flawed thinking. Apple needs to open up to improve the developer experience. Microsoft has it right here: Developers Developers Developers!



    Nothing is preventing other companies to steal or get inspired by Apples iPhone SDK. Once they're set to compete they'll do anything regardless of an NDA, patent grant or copyright. I hope Apple get it all right and finally lift the NDA sooner this year. It would be good for everyone. I personally think that by keeping the iPhone SDK under NDA Apple is signalling to us that they still think of the SDK and the iPhone platform as Beta products still under heavy development. This whole discussion will be over in a year, as is the discussion whether Apple should let external developers create their own apps.
  • Reply 5 of 32
    Quote:
    Originally Posted by MacTel View Post


    The NDAs are there because of the Android, Blackberry, Palm, Symbian, and Microsoft mobile OS platforms. Apple doesn't want their competitors using their R&D to better their products without some difficultly.



    This is flawed thinking. Apple needs to open up to improve the developer experience. Microsoft has it right here: Developers Developers Developers!



    Do you seriously believe that RIM, Nokia, Microsoft and co. do not own a version of the SDK and have henceforth a rather front row seat to see how the thing works ?
  • Reply 6 of 32
    asciiascii Posts: 5,941member
    One good thing about the NDA is that the only way to write an app is to read the documentation for yourself gosh darn it. Too many people these days try to "program by begging" where they don't bother with the docs and just beg for answers online.



    This results in amateurish apps cobbled together from forum hearsay and half-understood code snippets. This kind of app typically is often unstable and uses more resources than it needs and gives the user a bad impression of the platform.



    Do we or do we not want these kind of apps on the iPhone?
  • Reply 7 of 32
    Quote:
    Originally Posted by ascii View Post


    One good thing about the NDA is that the only way to write an app is to read the documentation for yourself gosh darn it. Too many people these days try to "program by begging" where they don't bother with the docs and just beg for answers online.



    This results in amateurish apps cobbled together from forum hearsay and half-understood code snippets. This kind of app typically is often unstable and uses more resources than it needs and gives the user a bad impression of the platform.



    Do we or do we not want these kind of apps on the iPhone?



    no one wants that obviously. But the fact that companies can't share things they have learned is retarded. Bugs that have been on many apps that a developer fixed he then cannot help others to fix this problem. We want better apps sooner because we are all getting tires of the ones we have already so whatever we can do to speed up the process is good. Even if it means lifting the NDA
  • Reply 8 of 32
    phizzphizz Posts: 142member
    Quote:
    Originally Posted by ascii View Post


    One good thing about the NDA is that the only way to write an app is to read the documentation for yourself gosh darn it. Too many people these days try to "program by begging" where they don't bother with the docs and just beg for answers online.



    This results in amateurish apps cobbled together from forum hearsay and half-understood code snippets. This kind of app typically is often unstable and uses more resources than it needs and gives the user a bad impression of the platform.



    Do we or do we not want these kind of apps on the iPhone?



    Although I totally agree with your sentiment, I'm not sure the NDA is stopping such apps from making an appearance, judging by the poor quality of a lot in the App Store.



    I tend to judge the apps by their icon - if it looks like somebody threw their app icon together in a few minutes with garish colours and no regard for any design effort, it's often safe to say their app programming got the same treatment.
  • Reply 9 of 32
    breezebreeze Posts: 96member
    The article speaks for itself. Doesn't anyone read and think anymore?



    It's not about developer's ( or the "aspiring") egos. it's about what serves Apple's interests first. It's supposed to serve Apple first and foremost - Apple could not be the company it is that operates the way it does , which enables it the technological lead it has , the freedom to innovate and the the ability to invent and build the great product we love, without controlling it's trade secrets



    Companies have a funny tendency to protect what best they see fit while trying to thrive... It's not about the what suits the convenience or thoughtless minds and desires of some impatient and rearing at the bit convenience junkies or restless "software developers".



    Apple developers for iPhone are more than thrilled to develop for iPhone, privileged and awed by the iPhone SDK and LOVE it - It's truly revolutionary. I might add they are busy learning it's ins and outs alone and don't need the social discussions. Apple is always available to guide, help and solve issues. Their efforts and labor will only be second guessed and valued by their resulting products. I bet that the ones that have the best products, payed their dues learning and really garnered much satisfaction and rewards from working hard and delivering good aps, not from blog mass hysteria and support - for complaining.
  • Reply 10 of 32
    Exactly.



    If you have the passion for the platform, the NDA is not an issue. And thats a good thing for Apple to work with.



    There is not much a half-decent software engineer can't work out from the extensive documentation provided by Apple. Hardwork? It may be, but then good software *is* hardwork. Not surprisingly, a good grounding in Cocoa (for which there are ample books available) goes a long way.



    Once the NDA is lifted, just wait - the forums will be filled with questions covered in the introduction docs, and "Hi, can I have a step by step Hello World! example please"... and no doubt the first round of books will be regurgitated copies of whats already available for *free*.



    For Christ's sake look at what the jailbreak community managed without the SDK?!!?





    Quote:
    Originally Posted by breeze View Post


    Apple developers for iPhone are more than thrilled to develop for iPhone, privileged and awed by the iPhone SDK and LOVE it - It's truly revolutionary. I might add they are busy learning it's ins and outs alone and don't need the social discussions. Apple is always available to guide, help and solve issues. Their efforts and labor will only be second guessed and valued by their resulting products. I bet that the ones that have the best products, payed their dues learning and really garnered much satisfaction and rewards from working hard and delivering good aps, not from blog mass hysteria and support - for complaining.



  • Reply 11 of 32
    Everyday I become just a little bit more embarrassed being associated with the goose-stepping, Apple excusenik clones that pollute the web with apologising nonsense. Apple make same truly amazing products and even better software, but they are also the software equivalent of North Korea. In 15 years of programming, I have never seen anything more ridiculous than this outright prevention of collaboration.



    Apple is the wife-beater of the programming world - and the apologists are the black-eyed abused, blaming everything else except Apple. Blame patents in Europe, even though software is not patentable in the EU. Blame Sarbanes-Oxley for forcing Apple to charge for upgrades, even though their no evidence to support this. Just don't blame Apple.



    Well not for me. I'm keeping my Apple, but I'm going to put a Dell sticker on it. In the meantime I'll leave everyone to sing their favourite song: "Apfel, apfel, uber alles..."
  • Reply 12 of 32
    solipsismsolipsism Posts: 25,726member
    Quote:
    Originally Posted by brendon9x View Post


    I'm keeping my Apple, but I'm going to put a Dell sticker on it.



    What purpose will that serve?
  • Reply 13 of 32
    ktappektappe Posts: 759member
    Quote:
    Originally Posted by hapalibashi View Post


    For Christ's sake look at what the jailbreak community managed without the SDK?!!?



    The jailbreak community achieved what they did by SHARING INFORMATION. The very thing they cannot do with iPhone 2.x apps if they're under NDA.
  • Reply 14 of 32
    Apple ALWAYS SUCKED when it came to supporting developers. One of the main reasons for Microsofts success is the wide spread availability of classes in various schools, colleges, universities, and institutes. Compare this to any serious Apple course, they usually cost over a thousand dollars for a couple of days, and that is if you can find one in your area.
  • Reply 15 of 32
    Quote:
    Originally Posted by Phizz View Post


    I tend to judge the apps by their icon - if it looks like somebody threw their app icon together in a few minutes with garish colours and no regard for any design effort, it's often safe to say their app programming got the same treatment.



    Heh... I do something similar.



    If the icon and interface are both extremely poor, I can make similar assumptions about the quality of the source code. I also find that this tends to be represented strongly in the user feedback. I broke the rule for a developer toolkit program with a pretty poor icon and what looks like a good interface that was roughly put together. True to what I should have expected, it is roughly assembled. A developer that cares about quality code, it seems, usually cares about a quality presentation as well.
  • Reply 16 of 32
    Quote:
    Originally Posted by brendon9x View Post


    Everyday I become just a little bit more embarrassed being associated with the goose-stepping, Apple excusenik clones that pollute the web with apologising nonsense. Apple make same truly amazing products and even better software, but they are also the software equivalent of North Korea. In 15 years of programming, I have never seen anything more ridiculous than this outright prevention of collaboration. "



    15 years of programming for who? Microsoft???
  • Reply 17 of 32
    Quote:
    Originally Posted by breeze View Post


    Apple developers for iPhone are more than thrilled to develop for iPhone, privileged and awed by the iPhone SDK and LOVE it - It's truly revolutionary. I might add they are busy learning it's ins and outs alone and don't need the social discussions.



    Do you actually know any iPhone developers? I can only assume not, from this very silly piece of rah-rah fanboy-ism.
  • Reply 18 of 32
    hirohiro Posts: 2,663member
    Quote:
    Originally Posted by freelander51 View Post


    Do you seriously believe that RIM, Nokia, Microsoft and co. do not own a version of the SDK and have henceforth a rather front row seat to see how the thing works ?



    I'l guarantee their lawyers have had a come to Jesus conversation with their engineers and managers to prevent a copy from ever coming inside their walls. If it did, the legal unhappiness that could ensue would be legendary. Sure they could do a Chinese Wall thing, but those inside the wall could ONLY work on iPhone stuff and not talk about it outside the "Wall". How likely is that?
  • Reply 19 of 32
    hirohiro Posts: 2,663member
    Quote:
    Originally Posted by hapalibashi View Post


    Exactly.



    If you have the passion for the platform, the NDA is not an issue. And thats a good thing for Apple to work with.



    There is not much a half-decent software engineer can't work out from the extensive documentation provided by Apple. Hardwork? It may be, but then good software *is* hardwork. Not surprisingly, a good grounding in Cocoa (for which there are ample books available) goes a long way.



    Once the NDA is lifted, just wait - the forums will be filled with questions covered in the introduction docs, and "Hi, can I have a step by step Hello World! example please"... and no doubt the first round of books will be regurgitated copies of whats already available for *free*.



    yup..
  • Reply 20 of 32
    jasenj1jasenj1 Posts: 912member
    Apple's developer forums are already filled with people asking and answering iPhone dev questions.



    It seems to be a case of "if we all break the law, they can't arrest us all". I think it just makes Apple look stupid. Anyone can get the SDK by filling out a form and downloading it. Is Apple making a statement that NDAs are made to be broken? Or click-through agreements are worthless? Do they have lawyers that made them put all that draconian language in there "just in case", but have no intention of enforcing it? Is it there for selective enforcement? Once someone does or says something Apple REALLY doesn't like they can beat them with the NDA?



    If that's the case, why honor OS X's shrink-wrap license? Make as many copies as you want. Install it on whatever hardware you want. Apple doesn't enforce its contracts.



    - Jasen.
Sign In or Register to comment.