Developers question why Apple keeps its iPhone 2.0 SDK under NDA

2»

Comments

  • Reply 21 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!



    That's absolutely right. Apple once again allows their people to paint them into a corner with excessive secrecy. Open, open, open!
  • Reply 22 of 32
    irelandireland Posts: 17,798member
    Shocker, Dan defends Apple on their appalling attitudes.
  • Reply 23 of 32
    hutchohutcho Posts: 132member
    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!
  • Reply 24 of 32
    brendonbrendon Posts: 642member
    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?



  • Reply 25 of 32
    ipeonipeon Posts: 1,122member
    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.
  • Reply 26 of 32
    ipeonipeon Posts: 1,122member
    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?
  • Reply 27 of 32
    mbmcavoymbmcavoy Posts: 157member
    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! )
  • Reply 28 of 32
    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?"
  • Reply 29 of 32
    jeffdmjeffdm Posts: 12,953member
    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.
  • Reply 30 of 32
    kickahakickaha Posts: 8,760member
    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.
  • Reply 31 of 32
    jdb8167jdb8167 Posts: 626member
    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.
  • Reply 32 of 32
    alanskyalansky Posts: 235member
    "Uninformed public debate..." is one of those phrases that just rolls off the tongue, like "hot summer day."
Sign In or Register to comment.