or Connect
AppleInsider › Forums › Mobile › iPhone › Developers question why Apple keeps its iPhone 2.0 SDK under NDA
New Posts  All Forums:Forum Nav:

Developers question why Apple keeps its iPhone 2.0 SDK under NDA

post #1 of 33
Thread Starter 
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.

post #2 of 33
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!
post #3 of 33
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.
post #4 of 33
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."
post #5 of 33
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.
post #6 of 33
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 ?
post #7 of 33
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?
post #8 of 33
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
post #9 of 33
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.
post #10 of 33
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.
post #11 of 33
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.
post #12 of 33
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..."
post #13 of 33
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?
Dick Applebaum on whether the iPad is a personal computer: "BTW, I am posting this from my iPad pc while sitting on the throne... personal enough for you?"
Reply
Dick Applebaum on whether the iPad is a personal computer: "BTW, I am posting this from my iPad pc while sitting on the throne... personal enough for you?"
Reply
post #14 of 33
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.
post #15 of 33
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.
bb
Reply
bb
Reply
post #16 of 33
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.
The true measure of a man is how he treats someone that can do him absolutely no good.
  Samuel Johnson
Reply
The true measure of a man is how he treats someone that can do him absolutely no good.
  Samuel Johnson
Reply
post #17 of 33
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???
post #18 of 33
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.
post #19 of 33
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
.
Reply
post #20 of 33
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
.
Reply
post #21 of 33
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.
post #22 of 33
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!

That's absolutely right. Apple once again allows their people to paint them into a corner with excessive secrecy. Open, open, open!

Proud AAPL stock owner.

 

GOA

Reply

Proud AAPL stock owner.

 

GOA

Reply
post #23 of 33
Shocker, Dan defends Apple on their appalling attitudes.
Citing unnamed sources with limited but direct knowledge of a rumoured device - Comedy Insider (Feb 2014)
Reply
Citing unnamed sources with limited but direct knowledge of a rumoured device - Comedy Insider (Feb 2014)
Reply
post #24 of 33
As an iPhone developer, I find this restriction incredible frustrating, but it is typical Apple closed off, "do what you're told" attitude. Objective C and it's unusual rewritten crazy syntax that is different from every other language doesn't help either.

It is completely compatible with C and C++ (a very good thing), why the hell did they just make the syntax that same! Even after working with it for a few months now, it still does my head in!
post #25 of 33
I believe that MS is writing apps for the iPhone. Also any of these companies can and do have written programs for their phones and may think that some would sell well, so it is not impossible to think that they would have the SDK. Nokia et all, can apply as a team if they wish and if Apple allows them access to the SDK then the law is covered. What I don't understand is why Apple does not have an iPhone developer forum, like Google has with Maps development.

Apple may wish to have an atmosphere where the A students excel while the C students ( the ones that would rather not read ) struggle until they learn to read what is provided. My guess.

Quote:
Originally Posted by Hiro View Post

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?
Please consider throwing extra cycles at better understanding Alzheimer's, Mad Cow (CJD), ALS, and Parkinson's disease go here <a href="http://folding.stanford.edu/" target="_blank">http://folding....
Reply
Please consider throwing extra cycles at better understanding Alzheimer's, Mad Cow (CJD), ALS, and Parkinson's disease go here <a href="http://folding.stanford.edu/" target="_blank">http://folding....
Reply
post #26 of 33
Quote:
Originally Posted by MacTel View Post

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

Yes, that has worked out well for MS.
post #27 of 33
Quote:
Originally Posted by Hutcho View Post

Objective C and it's unusual rewritten crazy syntax that is different from every other language doesn't help either.

It is completely compatible with C and C++ (a very good thing), why the hell did they just make the syntax that same! Even after working with it for a few months now, it still does my head in!

Different in which direction? Better or worse?
post #28 of 33
Quote:
Originally Posted by AppleInsider View Post

"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."

This is a plausible rationale for Apple's actions, but I believe that it is also incorrect.

Disclaimer: I am not a lawyer, but I have had some dealings with patents and other IP issues.

The one-year grace period on patent applications isn't just from when detailed information about an invention is published. The clock is also started when a product that includes the invention is disclosed to the public, even if the existence or nature of the invention isn't obvious.

The original iPhone has been available for over a year, so patent rights to any new inventions embodied in the hardware and/or v1 software are now lapsed.

Granted, this is not true for any new inventions introduced in the 3G iPhone hardware, or the iPhone 2.x software. However, these products have clearly been sold to the public, so the clock is already ticking. Disclosing details now would not make a difference as to when Apple could file for a patent.

What in the SDK itself isn't already embodied on the iPhone, or in XCode (not under the NDA)? Perhaps the tools to perform debugging while connected to the phone. However, this capability has also been publicly disclosed, so I would say this is in the same boat as the 3G.

So, what' the big deal about the SDK? It's too late to protect the patent grace period for the iPhone hardware or software. Perhaps the APIs reveal technical details about the phone that Apple wants to keep a trade secret.

Trade secrets are different from patents. If an invention is not obvious, or even discoverable with some investigation/reverse engineering, keeping the information secret is a valid and legally protected way to maintain your exclusive rights indefinitely. However, this also means taking significant effort to secure the information and keep it completely out of the public view.

By requiring an NDA, perhaps Apple is trying to make the claim that it is "not public", and therefore is still protected as trade secrets should a competitor take the unpatented ideas.

However, I believe this is not a valid claim. There is no secret that the SDK exists, and it is in fact readily available to anyone, with no scrutiny from Apple. I have downloaded it, although I haven't joined Apple's developer program. Honestly, I don't remember signing an NDA myself. Perhaps it was a check box I clicked through along the way. If it was that easy to "sign", I'd say it's not enforceable...

Since it's widely disseminated, and easy to get, this is public, no matter what Apple calls it. So, nothing that is available in the SDK should be legally protected as a trade secret.

(Interestingly, I'm trying to log into Apple's Developer site to see if they say anything about me being under the NDA. They site says it's being updated, and will be back soon. Maybe they are removing the NDAs! Haha! )
post #29 of 33
Quote:
"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." - LA Times

"A penny for your thoughts?"
post #30 of 33
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.

Maybe the iPhone documentation is better, but when trying to learn how to program for the Mac, I really wasn't happy with Apple's documentation, it just didn't "click" for me. I think it's the same for most if not all first party documentation. For anyone new to Apple programming, it's basically learning a new IDE, new language, new programming model, and new API. That's a lot to accomplish, and at least for me, Apple didn't have a good approach to getting started in all this. Several books do fail at this too, but given the enormity of the task, I would prefer five different books from five authors that try this than none at all.

As when I learned a microcontroller system, or anything else for that matter, I went to a third party book that everything explained step by step, that really helped me get some projects going, and helped me understand the manufacturer's documentation so I can go much farther than that beginner book that I bought.
post #31 of 33
Quote:
Originally Posted by Hutcho View Post

As an iPhone developer, I find this restriction incredible frustrating, but it is typical Apple closed off, "do what you're told" attitude. Objective C and it's unusual rewritten crazy syntax that is different from every other language doesn't help either.

It is completely compatible with C and C++ (a very good thing), why the hell did they just make the syntax that same! Even after working with it for a few months now, it still does my head in!

Quick, you see the following in a C++ file:

a.b(3);

Is a an object, or a struct? Can't tell, can you? Neither can the parser, at a glance. It requires a very complex parsing system to deduce those little things out. Now, since C++'s runtime is pretty simplistic, it doesn't really matter due to static typing.

Objective-C is dynamically typed. The above syntax would require (without a lot of work) it to treat all *non*-object, straight vanilla C code, as if it were object-oriented, with the corresponding overhead.

Now try the following:

[a b:3];

That's an object call. It's clear, simple, and straight-forward. The former line would be a struct call.

The 'weird syntax' is actually that way for a solid reason - it visually separates out the object and non-object code for the developer, and it also makes the parsing and compilation much more streamlined. C++ seriously screwed this point up, and it's been hobbled by it ever since.

Oh, and if you want to know where the syntax came from, as well as the basic runtime model, check out Smalltalk, the granddaddy of most every OO language out there, and still considered by most to be the most 'pure', but it came with a performance overhead that folks weren't ready to deal with. Obj-C gets you the best of both worlds - you can operate at a very high level, ala Smalltalk, with the bracket notation, and then drop to raw optimizable C code at a moment's notice with the dot notation... and you can see precisely where this is happening without a debugger.
My brain is hung like a HORSE!
Reply
My brain is hung like a HORSE!
Reply
post #32 of 33
Quote:
Originally Posted by Hutcho View Post

As an iPhone developer, I find this restriction incredible frustrating... Objective C and it's unusual rewritten crazy syntax that is different from every other language doesn't help either.

It is completely compatible with C and C++ (a very good thing), why the hell did they just make the syntax that same! Even after working with it for a few months now, it still does my head in!

You do realize that Objective-C is not covered under the NDA, right? Neither is Cocoa. There are plenty of resources for learning OS X, Cocoa and Objective-C without violating an NDA.
post #33 of 33
"Uninformed public debate..." is one of those phrases that just rolls off the tongue, like "hot summer day."
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: iPhone
AppleInsider › Forums › Mobile › iPhone › Developers question why Apple keeps its iPhone 2.0 SDK under NDA