Showing posts with label App Store. Show all posts
Showing posts with label App Store. Show all posts

Tuesday, April 5, 2011

App Store Review Times by Shiny Development

Dave Verwer of Shiny Development has created a web bot that trolls Twitter for tweets about App Store review times and maintains a running average of both iOS and Mac review times. The results are continuously available at this website. The more people who contribute, the better the data will be, so if you want to contribute, just tweet your review time using the #iosreviewtime or #macreviewtime hash tags like the example tweet.

Tuesday, March 29, 2011

Briefs is Dead, Long Live the Briefs

Rob, one of my MartianCraft partners-in-crime, decided to throw in the towel last night on Briefs.app. After a solid year of fighting with Apple's app review team, implementing changes that were suggested might clear the path for getting Briefs.app on the App Store, and trying to just get a straight answer from Apple about what the real problem was, he's finally decided it's just not worth the hassle any more.

There were several lights at the end of the tunnel over the course of the year, each one a bigger and faster freight train. Despite the changes to the license agreement that seemed to imply Apple was going to become more reasonable on this subject, they continued to insist that Briefs allowed users to download and run executable code and is dangerous.

I don't like that answer, but if that was the answer, they should have manned up and told him that a year ago rather than stringing him along, giving him false hope, and enticing him to invest more time he doesn't have on a fruitless endeavor.

This was no way to treat a third party dev, and Rob has been way too nice about the whole damn situation.

Tuesday, February 22, 2011

Apple Outsider on the Subscription "Hubbub"

I have a very short list of "must-read" blogs. While I have a much bigger list of blogs I read as time permits, the list of ones that I check every morning before I buckle down to work consists of only about a half-dozen blogs by people in our industry who really know their stuff. One of those blogs is Apple Outside, written by former Apple Evangelist, Cocoa Guru, and all-around nice guy Matt Drance (not to be confused with the more intimidating BatDrance who is most definitely not Matt's alter-ego).

I've been keeping my head low on the whole subscription kerfuffle that's been happening in the iOS dev world. Partially that's just because I'm busy and don't have time to pen a long blog-rant, but it's also because it's a complex situation on which I don't have a fully-formed opinion yet. Matt's even-handed take on the situation does a great job of articulating the situation and is well worth reading.

Thursday, September 9, 2010

App Store Review Guidelines

Today, Apple posted guidelines for the App Store review process (requires developer login). This is a huge step in the right direction. The document still contains a lot of wiggle room and vague conditions and doesn't change the fact that Apple still has total discretion and can reject your app for new, currently unstated reasons if they want to, but it is definitely good guidance for App Store developers and should reduce the number of rejections for unknown reasons. If you develop for the App Store, you should read this end-to-end. Now.

Apple also issued a press release today that states that Apple is setting up a review process for rejected apps and also says that Apple is loosening the restrictions contained in several clauses of the Developer Program License (3.31, 3.3.2, and 3.3.9). I'm hoping that these changes will allow Briefs.app on the App Store, but I haven't heard anything yet from Rob to indicate that the review status has changed.

Fingers crossed for Rob and Briefs.app and kudos to Apple for listening and making changes.

Tuesday, August 10, 2010

Call for Testers!

Update: All of my available device slots are gone.

Okay, I've got room in my device list for 15 testers for the Library of Congress Prints and Photographs application. I'd love to accept more, but the 100 device limit prevents me from using too many slots for a personal side project like this.

There's a catch: I need at least one device running iOS 3.1.x and at least one older device (3G, Original iPhone, 1st or 2nd gen iPod touch). Ideally, I'd have a nice spread of devices. The iPad won't be supported in the first release, so iPhone and iPod touch users only please. I'm considering adding iPad at a future date, but don't have the time to devote to it at the moment.

I expect to distribute the first beta build by the end of the week, possibly earlier, but no promises, since client work and the book have to take priority. I have one bug I still need to chase down and one feature I still want to add, and then I'll be ready to distribute.

If interested, e-mail me with what model device you have and the iOS version you're running. If I can use you, I'll respond and have you can send me your UDID. This will mostly be first-come-first-served, except I may have to skip people to make sure I get at least one older device and one older version of iOS.

P.S. My e-mail address is my twitter name at mac dot com.

Thursday, August 5, 2010

Testers, Maybe?

I read on Daring Fireball yesterday about the new Library of Congress iPhone application. I love libraries, museums, and any large collection of interesting data and was really excited about this app.

It's a nice app, and a really good start for the Library of Congress, but it's missing something I wanted: access to the Prints & Photographs Online Collection. For over a decade, the Library of Congress has been digitizing material from their collections and putting them online. Unfortunately, the web interface is kinda weak on a computer and nigh unusable on an iPhone. Which is too bad, because there's a lot of really cool stuff in here, including works by and photographs of many famous artists such as Ansel Adams, Alice Boughton, Edward Weston, Pablo Picasso, Henri Matisse and many others. There is also a huge amount of historical photographs, artworks, and documents going back to the founding of our country and even earlier. It's the kind of place you can easily lose hours exploring.

I actually hacked out an iPhone app for searching the Prints & Photographs Collections quite a while back. I started it originally because I wanted to play with a few things I hadn't used yet, like iAds, and I find it's easier to do so if I'm writing a "real" app rather than just playing.

And when I say "hacked out", I'm not exaggerating in this case. This wasn't architected so much as thrown together. It started out an entry page where you enter a search term, and then a single table view with the results. I wrote it in one Saturday night after several beers, scope creep increasing with each new beer. But… it works and seems to work pretty well. I spent another couple of hours this evening cleaning up the rough edges and running it through Instruments. I've got a short list of bugs I need to fix, but it probably needs not more than a day's worth of work before it could go to testers.

After the Library of Congress came out with their own app and it didn't include this functionality, I started thinking it might be worth throwing this on the app store as a free app to complement the official one. The ads might generate a little income, but I don't expect very much from what I've heard about iAds fill-rate, and it doesn't really matter, most of the work is already done. Be kinda nice if one of the many abandoned apps in my dev folder got to see the light of day.

So, what do you think? Any interest? I've attached some screenshots of the app so you can see how it works. You can click them for full iPhone 4 resolution. Let me know in the comments if you think this is an app you'd download and also let me know if you're interested in testing.

photo 2.PNG

photo 1.PNG

photo 3.PNG

photo 4.PNG

photo 5.PNG

photo.PNG

Wednesday, July 28, 2010

App Licensing

Google took an interesting step recently by adding a service called App Licensing to the Android SDK. I haven't looked at it in detail, but the gist of it is that it's a license validation system for third party apps. It allows third party apps to check with the Android Marketplace to see if it's authorized to run on the particular device. To simplify it beyond recognition: It's sort of like Steam for Android Apps.

This is a bit of a double-edged sword for Google, though. Steam-style online authentication isn't exactly warmly embraced by the proponents of "open" systems, but given how easy it is to pirate applications downloaded from the Android Marketplace (and then return them for a refund!), it's probably a necessary step to attract developers to the platform. Google has to at least look like they're trying to stop the rampant piracy.

But here's the thing: With an open source OS, I can think of a dozen different ways to try and circumvent something like this, and I'm hardly a 1337 hacker. Google can add complexity and make it harder to circumvent, but if someone with the right skills has full access and control over the hardware and software, you can't stop them from getting around any kind of licensing authentication scheme you create. It's like DRM. Within a few months (at most), there'll be an exploit or hack to allow pirated Marketplace apps that use App Licensing to be run without a license. I can almost guarantee it. Google can keep changing the process to fight the pirates, but it's a losing battle, and likely would entail a lot of inconvenience to developers in the process.

This is one area where a closed system has advantages. For us iPhone developers, only about 10% of our potential audience can possibly pirate our apps because pirating requires jailbreaking. That 10% is the starting point. The most it can be. Jailbraking is a quid pro quo, so 90% of our potential market can't, won't, or wouldn't know how to pirate an app. But the real number is even smaller than that. Not everybody who jailbreaks their phone pirates apps - there are other valid reasons to jailbreak (so I'm told, I've never been tempted myself) - and I know people who have jailbroken their phones who are ethical and wouldn't consider pirating an app.

There's no doubt that there are advantages to "open" systems, but there are also disadvantages. In this particular case, one of the most major drawbacks of "open" doesn't hurt Google or the Wireless providers, it hurts third party developers. If that wasn't true, Google wouldn't be devoting engineering hours to try and stop it with 'app licensing'.

Life as an iPhone Dev has it's problems, no doubt. When you have an app sitting in review for months, the way Briefs has been, when you get rejected on seemingly arbitrary or inconsistent grounds, or when you can't implement something that would benefit your users because of a term in the license agreement, it sucks. But, when all is said and done, a good app on the App Store properly promoted can make enough money for a development team to live on. Until that can be said about the "open" Android Marketplace, I simply can't buy into the "open is better" mantra.

If a curated platform offers a better user experience and allows third party developers to actually make money, I just don't see "curated" as a dirty word, no matter how many times Google's Android Evangelist tweets it.

Saturday, May 1, 2010

Validate Build Product

In the last post, I mentioned Xcode 3.2's new Validate option that runs the same checks the App Store Review Team will use before looking at the content of your app and which may be used by Build and Archive (or any other Build command, for that matter), I probably should have mentioned what determines whether it will get run. It's your project settings. To turn it on or off, select Edit Project Settings from the Project menu, and it's under the Build Options, and it's just a checkbox you can turn on or off.

Screen shot 2010-05-01 at 10.14.00 AM.png

I would recommend not waiting until App Store submission to run validate. Do it before you send to testers or to your client. It will allow you to address problems before your app gets tested, reducing the need for regression testing.

Friday, January 22, 2010

Crime and Punishment

KRAPPS.com has a very disturbing article about Apple's action against the developer of the forChan app. The forChan application is simply an image scraper designed to work with image boards such as 4chan. While many of the pictures posted on these imageboards (which are all posted by users) are innocuous, many of these imageboards cannot be described as anything but the nasty, grimy underbelly of the Internet.

ForChan.app is simply a client to a particular type of web application that is widely used for non-porn images as well as porn. The app scrapes the imageboard HTML for image tags, then presents all of the images from one subboard as thumbnails, allowing the user to view them larger by tapping on a thumbnail. The app doesn't, itself, contain porn or do anything that clearly and undisputedly violates the SDK agreement.

After Apple realized that they let on a dedicated client tailor made for some of the nastiest places on the Internet, they quickly pulled the application. Had they stopped there, it would have been wrong, but not on any kind of epic scale. It would have been just another example of the risk of working in the Cathedral1. We all farm Apple's land, and we all know they have a certain amount of power over us. But, Apple didn't stop there, they then revoked the developer's certificate and removed all of his other applications from the App store. In one arbitrary, unappealable step, they completely removed one developer's source of income and made the product of many, many hours of work completely useless. The reason? Because he "deceived Apple about the intent of the application".

This is unfair in ways it's hard to describe.

What was the developer's deceit that was so bad it warranted completely destroying his livelihood? Well, he um… didn't default the application to show porn, which Apple has decided is the app's main purpose. Despite the fact that the very name of the application, and certainly the description submitted were very clear about what the application does (hell, the application is named after one of the seediest imageboards on the net). Because whomever reviewed the app wasn't savvy enough to pick up on the App's purpose the first time through, they've declared the developer to be dishonest.

I give Apple the benefit of the doubt whenever there is any to give. I have defended their actions a few times when they might not have deserved to be defended. But this is too far for even me. This kind of arbitrary and devastating action is disproportionate punishment and I can't see any justification or defense.

Apple should reinstate Charles Rodriguez's developer credentials and restore his other apps to the App Store immediately along with an apology. I doubt they will, but that's the right course of action for them to take.



1- This is a reference to Eric S. Raymond's classic comparison of commercial and open source software models The Cathedral and the Bazaar.

Sunday, January 17, 2010

Wonderful E-mail

I've received a lot of e-mails from people who have read Beginning iPhone 3 Development. Anytime somebody thanks Dave and me for helping them to create an App, it feels pretty darn good, but a few e-mails stand out. I got one such e-mail, today, from Cameron Cohen, an eleven year old developer who already has an App in the App Store.

Now, in my mind, that's a pretty cool thing in and of itself. But it gets even cooler: Cameron is donating a part of the proceeds of his app to Mattel Children's Hospital UCLA's Child Life / Child Development program.

I don't normally blog about end-user applications — that's not the purpose of this blog — but I'm making an exception in this case. Check out Cameron's web site and also check out his first app, iSketch (iTunes Link).

Also, if there's anybody in the media reading this, I think Cameron's tale would make a great human interest story… I'm just sayin'.

Friday, November 20, 2009

Private APIs

Fast with the late-breaking news, Gizmodo is reporting that Apple is now scanning submissions for illegal use of private APIs.. Really? Oh, no!

Only, this, um… isn't exactly new. This was already happening, and was already pretty widely known about three weeks ago.

Monday, November 16, 2009

What I Love About this Community

I really love that the Mac and iPhone developer community consists of primarily mature, intelligent people. I love that disagreement and debate is accepted, and people with differing viewpoints are able to along so well. And I mean that without a shred of irony or sarcasm. I've had more than one heated, late-night discussion at WWDC that caused not the slightest rift or inability to get along. But, of course, there are exceptions to every general statement.

Screen shot 2009-11-16 at 10.25.06 AM.png


This is not the first ad hominem attack to that I've received as a result of taking the position I have on Rogue Amoeba's very public abandonment of the iPhone platform, but it is probably the most amusing. Mike Hunt? Very witty. Yes, I can remember laughing very much at that joke in the movie Porky's twenty-something year's ago. Quite riotous, if not very original.

So, as you can see evidence of in the screenshot above, my Skype account has been under periodic attack this morning. To the person or persons doing this, if you think your childish and ham-handed attacks are likely to change my stance or silence me, you're sadly mistaken

Fortunately, for every "Mike Hunt", there have been dozens who have sent me thoughtful, logical, and well-reasoned arguments on both sides. Those people rock, regardless of whether they came to the same conclusion as I have. To the few of you that I haven't responded to yet, bear with me, I'm buried at the moment and have a chapter deadline to meet.

I knew these posts would make me unpopular with a certain subset of our community. Perhaps, it would have been smarter to keep my mouth shut. Unfortunately, that's not really my style. I realize that some of you think we should all "stick together" and just accept Rogue Amoeba's condemnation of Apple as incontrovertible and undeniable, but since their very own statement of the facts doesn't support their conclusion (assuming you know the first thing about either contracts or IP law), I can't. I'd rather be unpopular than to publicly make a statement I believe to be wrong.

If you see factual or logical errors in my posts that haven't already been pointed out, by all means, I'd love to hear from you and am perfectly happy to reconsider my stance if you can show me a substantive flaw. But if your idea of rhetoric is launching an attack on my Skype account, then I have a suggestion for you: Since you believe in this so strongly, I think you should make a show of solidarity with Rogue Amoeba by leaving the iPhone development community. Right now.

Saturday, November 14, 2009

My Last Word on Rogue Amoeba

Correction: The court case (Bayer v. United Drug) was decided in 1921, not 1917. 1917 was the Treaty of Versaille, which declared Aspirin generic and laid the groundwork for the court case. I apologize for the error

The last two days have been very interesting. Thank you to everyone who e-mailed or tweeted me with salient points, whether you agreed with me or not, I'm richer for the discussion, and many of you brought up points I hadn't considered, so thank you. You've helped me clarify my thoughts on this matter tremendously.

Unfortunately, as interesting and fun as the discussion has (mostly) been, I have to bring it to an end because it's taking time away from finishing More iPhone 3 Development. I simply can't meet our publication deadline if I spend any more time on this discussion right now. But I do have one more point that I want to bring up. I didn't mention it earlier because I wanted to make sure it was true before talking about it. It is, so I'm adding it to the discussion.

But first, let me point out that there are actually two arguments that seem to be going on simultaneously, and not everyone is making a distinction between them:
  1. Would it be good for the developer community and/or App Store Consumers if Apple allowed Rogue Amoeba to use these images in this way?
  2. Was it unreasonable for Apple to reject the application?
I think we can all agree that the answer to the first question is a resounding YES. If I implied that I think otherwise, I apologize for it. It was not my intention.

But, if you're going to go storming off after throwing a temper tantrum that would make a pre-schooler proud, in my mind, the answer to the second question had better also be YES. As long as Apple had a valid, substantive reason for rejecting the application, then the answer to the second question is NO. Not getting your way does not mean somebody else is being unreasonable. If the other party wasn't unreasonable, a hissy-fit is an inappropriate response to not getting what you want.

In my last two posts, I identified several reasons why Apple might have refused to let Rogue Amoeba use the various images of Apple computers in their iPhone application. Here's the one I didn't mention before, and it's stronger than the others: Apple has trademarked the distinctive appearance of their computers. In other words, these images aren't just copyrighted images, they are Apple's trademarks.

Now, if you know anything about Trademark law, then a little light probably just want off for you. If not, let me tell you a little story.

In the late eighteen hundreds, a company called Bayer was selling a wonder drug under the trademarked brand name "Aspirin". In 1917 1921, a court ruled that Bayer hadn't taken sufficient steps to protect that trademark, and the term had become generic. Bayer lost ownership of a brand name worth millions, probably even billions, of dollars. Today, you can buy cheap, generic medicine under the name "aspirin" from dozens of manufacturers. You can't buy generic "tylenol", you have to buy "acetaminophen" or Tylenol™. You can't buy generic "advil", you have to buy "ibuprofen" or Advil™. But, you can buy generic aspirin. Anybody, not just Bayer, can sell acetylsalicylic acid under that name.

No corporate legal department today is going to let that happen on their watch. No lawyer wants to be the one who allowed his or her company to lose rights to a valuable brand (they'd likely also lose their job in the process). As a practical matter, corporations have to take more aggressive steps to enforce their trademarks than they do with plain old copyrighted material, or they run the risk of losing them. They don't have to be perfect in their enforcement, they are allowed to be human, but if you put a violation in their lap by submitting it to the App Store, they really don't have much choice but to reject it if they realize it's there.

That it took three months to get a final rejection is almost certainly due to the fact that there was a concerted effort by a number of people inside Apple on Rogue Amoeba's behalf. In the end, I would bet money that the legal department just wouldn't sign off on any solution that included Rogue Amoeba's use of Apple's trademarked images.

Is it unreasonable for a company to protect its trademarks? Of course not. Every first year law student knows about aspirin and knows that corporations have to protect their trademarks. Was it unreasonable for a legal department to protect their company's interests? Of course not either, that's their fucking job description.

Now, could Apple have been more forthcoming and communicated better? Abso-fucking-lutely. Are they being more aggressive than the law requires? Possibly, but not definitely. All IP involves gray areas with no fine delineations. When in doubt, any corporation (not just Apple) will be more aggressive than they need to be, since being less aggressive can lose them valuable rights.

Let me also point out that Apple's Trademark Guidelines for Third Parties, which are incorporated by reference into the iPhone SDK agreement (§2.6), explicitly state:
2. Apple Logo and Apple-owned Graphic Symbols: You may not use the Apple Logo or any other Apple-owned graphic symbol, logo, or icon on or in connection with web sites, products, packaging, manuals, promotional/advertising materials, or for any other purpose except pursuant to an express written trademark license from Apple, such as a reseller agreement. (emphasis mine)
In the course of this discussion, many people have claimed that the SDK agreement doesn't actually prohibit the use of these images in an iPhone application.

But, they do, in plain language that it doesn't take a lawyer to understand. Anybody, who is claiming that the SDK agreement doesn't prohibit the use of these images in an iPhone application (including John Gruber) is wrong. If an agreement incorporates another document by reference, that document becomes part of the legal agreement, and the trademark guidelines, which are incorporated by reference into the SDK agreement, explicitly disallow the use of "Apple-owned Graphic Symbols" without written permission. This is so unambiguous and clear, it's almost hard to believe a lawyer wrote it.

After more thought, I just don't think there's any gray area here at all. Rogue Amoeba wanted an exception to the terms of the SDK agreement. They may not have realized that's what they were asking for but that is, indeed, what they were after. They didn't get the special treatment they wanted, so they decided to take their ball and go home, end of story.

The fact that the images aren't stored in the iPhone application is completely irrelevant to the discussion because Rogue Amoeba has complete control over the code that sends the image, and the code that displays it. If excluding disallowed content from the application bundle was a real loophole, Apple would have to allow, for example, applications that served porn, but didn't contain the porn in the application bundle. That's completely different than a web browser that's capable of showing trademarks or copyrighted images (or porn), because what is shown is completely at the discretion of the user, not the software. If the software chooses what image to show and where to pull it from, the actual source location of that image is irrelevant.

The fact that the images are available through a public API on the Mac is also irrelevant because those APIs are designed to let you show images that are already on the machine to the person who is sitting at that machine. The images are already part of the operating system. Just because that API is public doesn't mean you can do whatever you want with the image once you have it. I can pull one of Apple's trademarked images off their web site. The fact that it's been made available publicly doesn't give me the right to use it however I want.

Friday, November 13, 2009

Some More Thoughts on the Airfoil Situation

Well, I got Fireballed for the second time. The first time Gruber agreed with me, this time, not so much. I've been having some interesting discussions over e-mail and twitter today with various people, and have read John's comments and given them some thought.

I'm rather a big fan of Daring Fireball, and nine times out of ten I agree with John's assessment of anything technology-related, so I thought the subject merited a revisit. Being wrong on the Internet is certainly not outside the realm of possibility.

So, on reading things over, John definitely makes some valid points. I was wrong, for example, about the images being contained inside the iPhone application. I've got no excuse on that one except to say it was 3:00 in the morning and I was tired, so mea culpa. John's right on that point, and I was wrong.

It's an important point and it puts the situation into slightly more of a gray area than I thought when I was writing last night, but it doesn't change what I intended to be my main point, which John actually acknowledges toward the end of his post when he says
Is Apple within their rights to reject this app for this reason? Sure. The bottom line is that they can reject apps for whatever reasons they want — that’s the rule that matters here. But was Rogue Amoeba foolish for designing their application this way? No. There’s nothing in the SDK agreement that they’ve violated.
I have two responses to this. First, I never stated that Rogue Amoeba were foolish for designing their UI this way. I think it's a great UI. It was never my intention to argue the merits of user interface design at all. The point I meant to make (and, based on feedback I've gotten, obviously did a poor job of making), was that Apple didn't have to allow Rogue Amoeba to use these images and Rogue Amoeba didn't have any reason to think Apple would.

They were after a an exception to a stated rule because it's a good feature and they wanted to provide it to their users. Showing a picture of the connected computer is a good feature. I don't disagree with that at all. But that argument conflates two different things. A great UI made with components you don't have the right to use is still a great UI. It doesn't change the fact that you don't have the right to publish that UI.

I also don't agree with the last point in the quote above. The reason John is mistaken is because he's assuming there needs to be an affirmative proscription. But that's not the way copyright works. Absent a grant of permission (or a legal exception, like fair use) you're not allowed to publish images that you don't own or have permission to use. Nowhere in the SDK agreement or the third party guidelines that they incorporate by reference does Apple explicitly grant permission to use their copyrighted images in the way they were used in Airfoil.

You could argue fair use, but this isn't a clear-cut case of fair use. Some courts might be receptive to it (most probably not). But this isn't a court of law, it's the review process. Apple is judge, jury, and executioner.

And many people claim therein lies the problem. And I don't necessarily dispute that. Most developers would prefer a more open environment. Most would like to be free from the constraints of the review process.

Should Apple reconsider this decision? Yeah, it would be great if they would. If they wanted to, they certainly could find any number of compromises that protect their rights or accommodates whatever concerns led to the rejection in the first place.

Does that mean Rogue Amoeba is blameless for insisting, over the course of three months, that they be allowed to use Apple's copyrighted images in their application? No. Sorry, it does not. Neither good intentions, nor good design grants you rights to somebody else's work.

Wednesday, November 11, 2009

Joe Hewitt Quits iPhone Dev

TechCrunch is reporting that Facebook engineer Joe Hewitt has given up on iPhone development. According to them, Joe has stated the App Store review process is the main reason for his departure.

Now, Joe is an undoubtedly high-profile developer due to his involvement with Facebook and his creation of the Three20 project, and he's not the only developer to express dissatisfaction with the review process. His departure is something that Apple is certainly going to notice. I'm personally sorry to see him go, he was a valuable contributor to the iPhone development community.

That being said, however, if TechCrunch's reporting is accurate, then I have an issue with Joe's parting words… with his claimed reason for leaving the platform. It comes across, at least to me, as a cheap shot; misguided and even a touch hypocritical. Now, maybe the comment comes across as harsher than it was intended out of context, but have you read Facebook's terms of service?

Pretty much every proscription that's in the iPhone SDK, and many that aren't, are contained in the Facebook TOS. Facebook doesn't allow nudity, for example. It even has vague proscriptions against things like "bullying", and they retain the right to take down any material at any time "without reason". Without reason? You mean your content doesn't even have to be illegal, offensive, or a violation of the TOS for Facebook to be able to take down the end-result of your hard labor? Right. Yet, I haven't heard Joe say a single thing about Facebook's TOS, or threaten to leave the company or web development altogether as a result of his employer's oppressive and restrictive terms.

Pot, Kettle. Kettle, Pot.

The only meaningful difference between Facebook's TOS and the iPhone SDK agreement is that Apple acts as a gatekeeper, reviewing applications before they go on the store to make sure applications comply with the SDK agreement, whereas Facebook doesn't act as gatekeeper, they allow anything on, and then take down the offending material after the a complaint is filed.

I suppose the difference between the two approaches is an important one, but it's not without reason that the two function in different ways. Facebook hosts their content in the United States and is considered a "service provider". Under U.S. laws, and the laws of most countries, service providers have a certain amount of immunity as long as they take action to remove illegal or infringing content. As long as they respond to complaints in a timely fashion they are generally not liable, criminally nor civilly, for the content that their users and third-party developers put up. If Facebook hosts content that is illegal in another country, there's typically little chance of prosecution because of jurisdictional issues, so the only recourse is to send Facebook a takedown notice.

On the other hand, Apple is actually running a store. They sell applications using servers and even maintaining a physical presence in countries around the world. Apple's App Store does not benefit from a service provider's immunity the way Facebook does, nor can they hide from prosecution using jurisdiction since they actively sell their products around the world. Even though Apple is not the original author of the applications they sell, they can still be held liable, much the way that a shopkeeper who sells illegal goods, but doesn't manufacture them, can be held liable.

I really doubt that Apple wants this responsibility for reviewing applications any more than we developers want them to have it. I'd bet money that Apple's legal staff looked at the situation prior to the App Store's initial opening and came to the conclusion that opening the app store to any application without review would expose Apple to significant legal risks.

Yes, the review team screws up now and again, but they have a much harder job than Facebook's legal team because they have to be proactive and look at an enormous volume of material before it goes online and have to constantly make judgment calls. They have to make those judgment calls after spending only a very small amount of time with each app, and sometimes they don't get it right. But, Facebook doesn't always get everything right, either, despite benefiting from the service provider's immunity.

Simply put: the App Store is not the web, and Apple and Facebook are both taking similar steps to protect themselves from liability in light of their situations, which are fundamentally different. Part of the reason that the App Store has been so successful is precisely because it's NOT the web. It's easier and more focused than the web. It's on everybody's iPhone, all over the world, at all times. That's pretty cool, but there's a cost to that, and part of that cost is that it opens Apple up to liability. They have to cover their ass, and don't believe you wouldn't either in their shoes.

It's fine to hate the review process. It's fine to think Apple should do things differently, or to suggest that they should be better about not rejecting apps for stupid reasons. It's even fine to leave the platform if it's not meeting your needs, or if you just want to move on to something new. But leaving a platform as a way of making a public statement about that plaform while simultaneously continuing to work for a company whose platform has similar, but even more oppressive and restrictive rules doesn't seem entirely fair to me.