Edit: Apple has lifted the NDA, so I don’t need to agree.
consumers – an emerging market and platform with great potential.
I just can not agree to the limitations imposed by Apple’s SDK.
I’m posting this so I can remember the details of why I cannot agree to the Agreement, to call on Apple to resolve the problems, and to call on other developers to help solve the problem.
Require me not to disable or interfere with any verification or security mechanism of anything produced by Apple, or enable anyone else to do so. Either with the SDK or through other means. Is this intended to prevent jailbreaking? Seems like this one clause could prevent Jonathan Zdziarski from accepting this NDA.
I wonder how these iPhone SDK Books pass legal muster? Special license from Apple? How does one get such a special license?
There are other restrictions, too, but these cripple the sharing of information within the community and extend far beyond use of the SDK.
There are some restrictions that make sense, such as preserving Apple’s right to develop competing applications, avoiding the complications of media licensing within your application, etc.
Some are clearly intended to protect the cell phone network partner – like limiting bandwidth use (to levels determined by Apple as needed).
But Apple has retained the right to arbitrarily refuse entry to any application – quite the anti-competitive stance for a monopolist!
Nathan Willis has an article on linux.com analyzing additional problems with the SDK agreement, in the context of writing GPL software.
You cannot develop anything with non-SDK APIs. This limits you to writing in your app directory, etc.
You cannot develop anything that will execute code, including plugins or interpreting code, except through the SDK APIs and built-in interpreters.
So, what’s a conscientious objector to do?
Skip the iPhone. Go to Android. (Android is probably a good option even if you do iPhone development…). You’ll be stuck developing for an emulator until actual hardware comes out, hopefully in late 2008, but then you get an open linux environment.
Ignore the overbearing restrictions. Develop applications on the SDK, share information, and move forward anyway. Risk the Wrath of Steve, even though this approach is probably best for Apple and the iPhone community. Note that this in NO WAY constitutes legal advice, and you do this at your own risk. Heh.
Of course, you could also just follow the restrictions, and not share anything with the community, too… But that’s not acceptable!
Stick to Web development. There are lots of interesting libraries and APIs available, and nobody can tell you what (not to) develop. You can target non-iPhone platforms at the same time, but you don’t get access to most of the interesting iPhone features, like the touchscreen and accelerometer, to say nothing of basic functionality like local storage and offline use.
Stick to open iPhone Development. This lets you get at all the good stuff on the iPhone – all the internal APIs that Apple actually uses, no restrictions on what your application can do – but you can only deploy to jailbroken phones. No AppStore for you!
Can you have the best of both worlds? Maybe you have a friend who is already an iPhone SDK developer. You can stay on the open side of the fence, and your friend can port it to the SDK. Note that the sharing has to be one-way – your partner can’t give you SDK information unless you accept the NDA – but this could be a way to do open development but keep the AppStore door open.
Can you do the “partner” method on your own? Can you develop open applications without the SDK, and bring them in from the cold on your own, without violating the NDA? Hmm. My read of it says that unless you’re writing software that interferes with security of Apple products, you’re OK. So you mooch off the jailbreakers, but if you don’t write the jailbreak software, you’re compliant. And you share with the community information that is already public (i.e., once those books come out).
Who do you want to gift for 50 Deion Barnes Jersey?
also pay a quick visit this blog on regular basis to take updated from latest gossip.