When the news came out today that Apple has chosen to lift the iPhone NDA, I (like many developers) breathed a sigh of relief. I would like to take a moment to thank my peers for being so outspoken and to thank Apple for finally deciding to make my life as an iPhone developer excedingly easier by allowing the members of the development community to do as they so often and so unselfishly do to help one another with various recurring difficulties that crop up in our craft. The Mac OS X software community that I've had the pleasure of getting to know over the last couple of years continues to astound me. I'm proud to count myself among them. They are, to a person, a wonderful, well-meaning, honest, and interesting group of people who, as evidenced by the recent brouhaha over the aforementioned NDA, are very vocal about their beliefs and try to treat others as they expect to be treated. I've decided to take a page from that book and voice a belief of mine: A contract is a contract.
Having had the pleasure of arguing over contracts (including several of my own), intellectual property, personal liberty, and many similar topics with more than a few software developers, attorneys, students, musicians, my astonishingly intelligent parents, and various other people I have admired over the years, I've come to a few conclusions. One of the fundamental principals I try to follow in my own dealings with others is, I'm told, a basic brocard
of civil law -- Pacta sunt servanda
("agreements must be kept").
When you enter into a legal contract, you do so willfully. If you want to develop for the iPhone you must also click that little check box on Apple's website indicating that you agree to be bound by their NDA. Clicking that check box is tantamount to a signature, thanks to The Electronic Signatures Act
. If you have chosen to download the SDK you have also chosen to enter into a legal contract with Apple that, very generally, allows you access to their tools for the iPhone provided you don't share any information related to them that Apple hasn't chosen to otherwise make public with anybody. There are a few exceptions to this in the NDA, but that's the basic gist. Traditionally, Apple drops the corresponding NDA when it releases software to the public. In the case of the iPhone NDA, they chose for quite some time not to do so. It was their choice to make.
I disagree with Apple's decision to keep the NDA in place for as long as they did. It stifles my own creativity in a very frustrating way to know that I am spending valuable time solving a problem concurrently with several of my peers. It further saddens me to see my peers waste their own valuable development time when I discover something I could contribute. The NDA hurt Apple by slowing innovation on the iPhone platform and by stifling the sort of vibrant community that has grown around their other products. I think that it was a mistake to have been so secretive and I'm glad that they've changed the policy and dropped the NDA.
Many of my peers chose to point-out the problems that the NDA caused and to speak out against this move. I'm ever so glad that they did. Thanks, guys. Apple seems to have gotten the message that the iPhone developer community wants to remain a community and it appears to have taken vocal criticism and the resulting negative public opinion to change that policy. Hopefully the foggy and inconsistent policies relating to inclusion in the app store will be the next to go.
Prior to its being dropped, some of my peers chose to break the NDA. Some have chosen to simply ignore it. I think that's wrong. It saddens me to see some of my peers break contractual obligations. I'm certain that no one did so lightly, and I believe that everyone in this community has the best intentions. I know that I have found myself close to that line on a number of occasions and I may have inadvertently broken the NDA at some point, though that was never my intention. I certainly hope that I didn't. While I am surprised and somewhat irked to have seen Apple keep the NDA in place after they would have traditionally dropped it, I recognize that it was Apple's prerogative. As vibrant and outspoken a community as we are, we really should keep the promises we make, even if we don't think others expect us to keep them. It should be a part of who we are. The NDA didn't include an official expiration date when we each signed it and we, as members of a civil society and as members of a community of artists and engineers who make our living generating intellectual property, should not allow broken promises to pass silently.
Today is a good day for our community. We're relatively little. Apple is relatively big. We were a squeaky wheel and Apple has changed its tune. We can always express our concerns loudly and even "vote with our feet," if needs be, but I think we go too far when we intentionally break our contractual obligations. Today could have been a great
day for us, but I'm not sure it was. [Redacted] NDA or not, I think we ought to carefully follow any agreements we chose to sign and respect our obligations to people and companies large and small, including those who we don't feel are treating us particularly well. Otherwise, how are we to be trusted?