![]() |
Papers |
10 Reasons to Violate Apple's "SDK" NDAAugust 2008
NOTE: I am not a lawyer, and the below is by no means legal advice, or advice
of any kind, but my mere opinion on the subject. Laws differ from country to
country, and the statements made below are made soley on the ethical beliefs
of the author. The author takes no responsibility in the actions of others in
following this advice, or in any consequences that may or may not ensue.
It's been a personal decision of mine to steer clear of Apple's SDK and stick with open development. There were many reasons for this, such as being able to write better software, but one of the key reasons was Apple's NDA, which I anticipated would be around for "as long as it took" to get patents filed in every country in the world. The NDA surrounding the SDK imposes a draconian set of restrictions on developers, preventing them from collaborating in any way with other developers, or even sharing their source code - effectively extinguihing creativity, knowledge, and open source development, the foundation of which is community participation. Unfortunately, many of my brothers in development were not as smart and have sold their souls to Steve for the "privilege" of writing software for his AppStore system. Given that I have been writing iPhone software since about a year before the AppStore came about, I like to think that I have the ability to look at Apple's NDA with slightly more objectivity than most. After all, what is being protected as a trade secret is really a copy of what the open source community built in August 2007 - an online software repository, a set of development tools, and a community of developers. Perhaps this alone was embarrassing enough to want to keep everyone quiet. Developers worldwide have no doubt given much thought to Apple's policies concerning the SDK and its confidentiality requirements. Many of their sentiments have been eloquently expressed on this website. From the comments I've heard on the subject, I decided to redact their thoughts and mine into ten reasons that I believe violating Apple's NDA is both ethical and beneficial to the consumer market. 1. Apple's "Free" SDK is Available to the Public The most often cited reason to disregard the NDA is simply that you can't put a confidentiality agreement around something that's made available to the public. The free SDK can be downloaded by anyone in the world with a few clicks, making it impossible to brand as a trade secret. Consider a smoke stack that pumps out toxic fumes into the atmosphere. To try and put an NDA on the SDK is much like trying to call the smoke that pollutes the sky a trade secret. The smoke might belong to the company pumping it out, but it exists in the public forum, and is therefore open to public scrutiny and conversation. The SDK also exists in the public forum. 2. Apple's "Paid" SDK is Available to the Public While in its early stages, Apple was very particular about the developers able to join their paid developer program. Apple has now opened the floodgates to the point where not only the general public can obtain a paid membership, but the requirements are so lax that even underage minors (just ask seven year old son) and people who don't exist can obtain a paid membership. Apple went from "private movie pre-screening" mode, which may have been covered, to releasing a movie to the public, which is not. Speaking of the movies, consider this example: One pays to go and see a movie also, yet the movie companies have no ability to restrict moviegoers from talking about the movie or even criticizing it in a review. Millions have been made on selling spoilers, content guides, and in some cases, even re-edits of the movie. The industry is powerless to do anything about this because it's free enterprise. 3. Paid Membership Doesn't Strengthen a Trade Secret Bundled with the previous argument comes the idea that if you somehow protect the contents of something with a required registration, that this allows you to call it a trade secret. Consider a shopping club / retail store, such as BJ's or Sam's club. Membership is bought and paid for - however the store remains open to the public, and therefore what goes on inside the members portion of the store cannot be considered a trade secret. Consider how ludicrous it would be for Sam's club to sue a journalist for reporting on an e-coli breakout in their facility, or some kid taking a shower in the produce section. You can require all the membership you want, but if your product is available to the general public, people have a right to address, scrutinize, and discuss it. 4. The Apple NDA Promotes Unfair Competition Apple makes no bones about reserving the right to compete with your AppStore products in their agreement. Apple also controls the primary literary and educational markets for the Apple SDK at this present time, meaning the NDA promotes unfair competition by attempting to cripple your ability to engage in an otherwise free market by releasing competing products. These competing products, namely being books, educational courses, and AppStore software that competes with Apple's own. This begs for an anti-trust investigation, but in the mean-time is precisely why developers should be collaborating. Many books are ready to be published, and at least one university is ready to offer an SDK class. All are being restricted from fair competition by Apple, and it's naturally in their best interest to continue the NDA as long as possible, to maintain the monopoly in these markets. 5. The Apple NDA Threatens Personal Data Security I remember when the DMCA went into effect. While it's often berated for its many deficiencies, it did set a few precedents. One was this: when personal data or data security are involved, the DMCA protected the individuals' rights to bypass certain controls placed on a device. While the DMCA was specifically referring to circumventing copy protection, this concept can be used as an example here to drive home the bigger point: even our government acknowledges that security and personal data is more important than the manufacturer's control over a product, and they gave the consumer the rights to pick the manufacturer's locks to address these concerns. In contrast, by keeping developers in the dark about the architecture and environment of the Apple SDK, the great threat of ignorance can (and likely has) left large vulnerabilities to be exploited. Consider that Apple's own kill switch, certificate revocation system, and mysterious "disappearances" of AppStore apps suggest that Apple hasn't quite figured out how to protect the consumer's privacy. If there is such a dire need to interfere with the operation of a consumer's product to justify a kill switch, how much more should the community of developers be collaborating on development that could uncover security issues. 6. The "Right to Use" Claim Doesn't Work With Tangible Goods Apple imposes a "right to use" license on the software that drives the iPhone, yet this model fails miserably when hardware is involved. The consumer pays for equipment, much like buying a truck. To attempt to impose any additional licensing on top of physical ownership would be like trying to license the software for the truck's onboard computer to the driver, and forcing them to agree to it before they can drive the truck home. While the court system is decades behind, the concept of mixing tangible goods with licensing rights is nothing more than a smoke and mirrors trick. If you paid for a physical piece of equipment, your rights to do as you please with it would be protected - in a perfect world - so long as it doesn't involve lying, cheating, or stealing. 7. You Can Learn About the SDK by Other Means For those who have never, themselves, clicked an Agree button or purchased a developer membership, the mere jailbreaking of the device gives the developer everything they need to effectively extract and build applications using APIs which Apple would consider to be using the SDK. Consider tools such as class-dump, nm, and even strings, all capable of revealing APIs that exist on the iPhone, without ever touching the SDK. This begs the question of how Apple would know whether or not there was a violation of the NDA. Lets go back to the truck example. There is a reason car manufacturers don't place NDAs on the style of the interior (for example): because anyone passing by can easily see such a "trade secret" by looking in the window. Consider a second example: Would Toll House effectively sue someone for giving out one ingredient of their "secret recipe" for chocolate chip cookies, if that ingredient were the chocolate chips? Any sane person can see the chips in the final product (and for that matter, easily determine sugar to be there as well). Not only is Apple's SDK in the public forum, but what they consider to be a "trade secret" can be easily seen by anyone who knows how to look. 8. Apple Needs Developers to Collaborate Judging by the number of complaints I see on anti-NDA sites about the SDK, Apple has got their work cut out for them in terms of bugfixes and feature requests to turn the SDK into a "real boy". Apple needs the feedback just as bad as developers need to collaborate. The iPhone "product" itself is gravely suffering due to the shroud of secrecy surrounding the NDA, and Apple would be foolish to allow the NDA to last much longer. If you're not going to violate the NDA, you should at least consider banging on Apple's door LOUDLY until they lift it. Consider that the open development community can build better iPhone applications than AppStore developers simply because they have access to a better set of tools, and can collaborate efficiently to design stellar apps. Apple has two choices: compete with their own AppStore developers by continuing the NDA, or compete with the open development community by giving AppStore developers the same leverage. 9. Submitting to Fear Sends the Wrong Message While many developers have already resolved among themselves that the NDA is unenforceable, most still choose to remain silent and avoid communicating anything to do with the NDA. This sends a dangerous signal to Apple - namely, that they can tell their developers what to do, what to say, and how to act. The mere lack of an uprising among the development community has already suggested to Apple that the fear approach works, leaving the door of possibilities open to possibly doing this with other products. The message many believe they are receiving from Apple is this: you don't have the right to develop on our platforms without our permission, and under our terms. The message Apple is receiving back by those who comply with such an unethical NDA is: we will obey. 10. Apple Has No Right Over Your Intellectual Property Apple's NDA attempts to restrict your right to distribute your own intellectual property - namely, your source code. That's about as absurd as buying a copy of MS Office, but being restricted from distributing any books that you write with it. Apple has very clearly stepped over their bounds in what they seek to control, and it's high time developers start taking back their IP rights. Conclusion Incase anyone's forgotten, this is America, Jack, land of freedom of speech and freedom of the press. In light of these ten reasons, it seems well within every developer's right to share knowledge and learn, with or without the manufacturer's blessing. The jury is still out on whether Apple is an enemy of these basic constitutional rights, but that doesn't mean you have to succumb to the threat of legal action to keep quiet. It is the basic right of every developer to collaborate and share knowledge. Our country's own fair use doctrines alone almost negate the NDA in themselves, and while Apple could no doubt ruin your day, just how flimsy an individual do you have to be to line up and do as you are told? Millions of units of the iPhone have been sold. Millions of dollars have been made selling AppStore apps: the iPhone is a public device. There's no trade secret here, and everyone is finally starting to figure that out. No doubt, the AppStore prostitutes will continue to do as big brother Steve orders them to do. Are you bold enough to cut through all of the legal feces to share knowledge with the development community, or does Apple own you? |
|
All Website Content © Jonathan A. Zdziarski. All Rights Reserved. |
| Reproduction prohibited without permission |