Tampilkan postingan dengan label App Store. Tampilkan semua postingan
Tampilkan postingan dengan label App Store. Tampilkan semua postingan

Kamis, 09 September 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.

Selasa, 10 Agustus 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.

Kamis, 05 Agustus 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

Rabu, 28 Juli 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.

Sabtu, 01 Mei 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.

Jumat, 22 Januari 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.

Minggu, 17 Januari 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'.

Selasa, 05 Januari 2010

Three Billion and Counting

Today, Apple announced that there have been over three billion downloads from the App Store. Can you say "juggernaut"?

Jumat, 20 November 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.

Senin, 16 November 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.

Sabtu, 14 November 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.

Jumat, 13 November 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.

Rabu, 11 November 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.

Selasa, 03 November 2009

This is Why

This is one of the reasons why the review process is so hard for Apple to get right. Apple has to make sure that every application not only doesn't use private APIs, but the applications must be legal in every jurisdiction that the iPhone is sold. That's likely the reason for not allowing nudity in App Store games even when Apple does allow movies with nudity in the iTunes store.

Movie studios create international versions of their movies. Movie studios have the budget and the motivation to tailor their products for multiple targets and to make sure that their movies do not violate any laws wherever they choose to sell them. Movie titles are often changed in translation to avoid trademark problems or to avoid offending the predominant culture in a specific country. Different versions of the same movie often have different scenes, sometimes with certain scenes available in the U.S. release being cut or altered in the version released for some other countries. In some rare cases it goes the other way, and a scene that the MPAA forces a filmmaker to cut or alter, is kept in releases for countries who don't share some particular taboo or social more with the U.S.

When you realize the true magnitude of the problem facing the app review team at Apple, it's hard not to cut them a little slack. Well, unless one of your apps happens to be stuck in review at the moment, in which case it becomes considerably harder to cut them any slack since you are being directly impacted.

So, anyway. Apparently, America is not the only country with asinine IP laws and large, soulless corporations willing to wield those laws as a weapon to protect profits.

I don't know anything about German trademark law, but if Ravenbursger's claim has any merit, this could lead a whole slew of new written or unwritten rules about what can go on the App Store. I don't see Apple taking a fine grain approach and removing offending apps from, for example the German store, but leaving them in the others. It would add considerable complexity to an already difficult and thankless job. It's not going to happen: They're either going to tell Ravensburger to stuff it, or they're going to remove every possibly infringing application from all app stores.

In US trademark law, Ravensburger's claim would likely not get very far. Although there are some exceptions, in the US, it is not possible to trademark generic terms. Certainly, this game has existed, and has been called "Memory" (for that's about the only skill it requires) since long before Ravensburger started selling lame licensed character variants of the game.

Does anyone have any idea whether this claim has any merit under German trademark law?

It is unfortunate, especially for the small, independent business, that doing business internationally is such horribly complex thing.

Sabtu, 31 Oktober 2009

Lesson from the School of Hard Knocks

If you've got an App in the App Store, or are planning to sell an app there, it might be a good idea to learn from somebody else's mistake.

Kamis, 29 Oktober 2009

On Private APIs

I'm hearing from a couple of different sources that Apple's App Store reviewers now have some way to scan submitted applications to detect the use of private APIs. I've never been an advocate of using Private APIs, and Dave and I strictly avoid them for the book examples, but I always thought it strange that Apple left to the honor system any use of private APIs that couldn't be easily discerned.

Looks like you need to step more carefully now if you have used any private framework APIs.

I know this step will annoy some developers, but in the long run, it's for the best. Private APIs add fragility to an application, and they also discourage people from submitting enhancement requests, which are how Apple gauges whether a currently private API should be made public.

Jumat, 23 Oktober 2009

Marble Madness?

The developer of Stone Loops, a marble game that used to be available in the App Store, has a very discouraging tale to tell in his blog today. Obviously, this is only one side of the story, but it does seem very suspicious to me that MumboJumbo only made these hefty claims of improper and illegal activity to Apple and not in any other forum (like, say, legal proceedings) nor have they leveled the same complaint about the multitude of previously existing platform version of Stone Loops. If Code Minions had really stolen code (among the things alleged from MumboJumbo), it seems like they would be taking more serious action than just complaining to Apple, that is, unless they don't have sufficient evidence to meet the standard of proof anywhere else, but if that's the case, then Apple shouldn't have removed a competitor's application without being shown proof.

I'll refrain from judgment until I hear the other side of the story, but if things are as laid out in Maciej's blog, then Stone Loops should be restored to the App Store immediately. On top of that, Luxor should be pulled from the store just as immediately, as punishment for making unfounded allegations about a competitor. I'd even go so far as to consider pulling MumboJumbo's developer privileges if this is true, and it were my call to make. I have no tolerance for underhanded tactics, especially when resorted to by companies failing to compete on their merits (I'm looking at you, Nokia).

Again, we don't know the whole story now, because neither Luxor nor Apple has addressed Maciej's allegations yet, so let's not pull out the torches and pitch forks just yet. You might want to sharpen the pitch forks, though, just in case. Apple is unlikely to make a public statement about this; it's just not their style, but MumboJumbo, at very least, should respond.

Personally, I think Apple should impose a new policy. When someone makes an allegation of impropriety about a competitor, they should pull both apps until it's resolved. After resolution, the prevailing party's app goes back on the store, the other does not. This may seem harsh, but it would make people think twice about leveling accusations unless they have substantial proof to back up their claims. Of course, this only works if Apple also puts in a mechanism to expedite resolution of conflicts and they may just not want to get into that business. But, as sole gatekeeper of the sole way to sell iPhone applications, they should have expected conflicts of this nature to arise and should be willing to deal with them in a fair and expeditious manner.

Kamis, 15 Oktober 2009

In App Purchase Can Now Be Used for Free App

Yep, just got notified by Apple. Free apps. In-app purchase. Say good-bye to "Lite" apps.

Jumat, 09 Oktober 2009

Mobile Photoshop

Adobe just released a mobile version of Photoshop for the iPhone. Let me just surprise a few people here by saying that Adobe did a pretty awesome job with this. It's a really nice little application, and it's free. Sweet. Although it doesn't appear to be available in all of the international versions of the App Store yet.

I can't help but think that this would have been a good showcase application to show off what Flash-generated iPhone applications can do. Alas, it appears to be a bog-standard Objective-C application, complete with nibs and byte-swapped PNG images.

Selasa, 06 Oktober 2009

Sue Me, I Think Developers Should Care

James Higgs has a different take on MonoTouch and Flash for iPhone. You should read it. It's good to see other points of view.

That being said, I can't say that I agree with most of it. Indeed, I feel like James is missing the point and misrepresenting the point of view of well-respected members of the Objective-C community by cherrypicking individual tweets. The fact is, I agree with both tweets referenced in his blog post, even though they come off as a little crass and even elitist without context and given that the authors had only 140 characters to make a point.

To highlight my main difference with James' opinion, let me respond to his concluding paragraph that he seems to think no reasonable person could have a problem with, and tell you my problem with it:
It boils down to this: if MonoTouch and Adobe’s Applications for iPhone platform are no good, they will die. Developers who use them will sell fewer apps in the App Store. Objective-C developers will carry on developing apps in their preferred style and creating apps that sell well. But if the rival techniques are sound, everyone gets to write great iPhone apps, and the result is happy users, and an even wider adoption of the iPhone platform.
Here's the key point missed. It doesn't boil down to that. If MonoTouch and Flash for iPhone are no good, they won't die for a reason James himself pointed out earlier in the same posting: the users don't know or care how the application was created. If MonoTouch and Flash applications are slow and crash or use gobs of memory or break under future versions of the iPhone OS, the end users aren't going to take away a negative impression of Adobe or Novell, they're going to think "Apple Sucks". They're going to blame the iPhone. It will affect the users' opinion of the individual developer, sure, but first and foremost it's going to affect the users' opinions of the iPhone as a platform.

I'm pretty sure Apple will have a problem with that. If one app sucks, it's no big deal. If there are hundreds or thousands of apps that all break or perform poorly, that's going to impact the overall perception of the iPhone.

I, personally, have a problem with a developer who feels entitled to be able to develop for a platform without investing the time to learn the language or frameworks that platform was built around. Languages affect design. Objective-C has greatly affected the design of the iPhone application frameworks and, indirectly, the experience of iPhone users. If you can't be bothered to learn that, to understand the iPhone experience completely, that tells me that you just want a piece of the pie. You see something that's been phenomenally successful, and you want to be able to take advantage of Apple's success to make some fast money, but you're not willing to understand at even a superficial level the engineering that underlies that success.

This is vitally important on an embedded device. On a desktop computer, we can tolerate Flash because we have crazy fast processors, gobs of physical RAM, and full virtual memory. On the iPhone, the processors speeds are about ten years behind the desktop, we have a fraction of the RAM, and volatile memory won't get paged out to swap, so memory use and processor use are vitally important. Yet I should be "okay" with someone who wants to develop for the platform and is either ignorant or cavalier about these things? I don't think so.

A few paragraphs earlier, James says
Like me, many developers will welcome the chance to learn a new language and a new platform But many will just want to write an app and get it into the hands of their users as quickly as they can. (emphasis mine)
Exactly. That's exactly what I have a problem with. Getting an app into a users hands as quickly as possible is not a virtue. Getting an app to the user when it's done, and good, and well-tested, and performing well is. I don't want this mentality. I want developers like Snappy Touch, who obsess over the user experience. I want developers like Imangi, Flipside 5, Tim Haines, and the countless others who cared enough to dive in and learn the platform, learn the language and tools, and deliver great user experiences on the iPhone despite having to learn to do it. I want developers who care. Developers who care, care enough to use the right tools and invest time learning about their platform and about the users of that platform.

Part of the iPhone's success is exactly because there is an obstacle to entry for developers. It's not insurmountable, in fact it's pretty darn low, but it has tended to keep out the worst of the opportunists and hammer developers, and that's been a good thing. It's not a perfect environment, but it is pretty awesome, and it's a darn sight better than it would be if flooded with people who can't be bothered to learn a bit about the platform that they want to milk for all it's worth.

Here's another thought. Even with just Xcode and Objective-C available for building iPhone apps, the app review team at Apple is completely swamped and overrun and has a very difficult job. Do you think flooding the app store with iPhone ports of every crap Flash game in existence is going to help that situation? Hell no. It's going to make the situation so much worse. Now, try and tell me with a straight face that that isn't going to happen the second Flash 5 is released to the public. Of course it is. Every Flash developer is going to raid his or her portfolio for stuff they can quickly throw up on the App Store to try and make a quick buck.

Yeah, gosh, how could anybody not want that? That will make things so much better for iPhone users.

I don't know what Apple's going to do, but if it were me, I would let Adobe know, in no uncertain terms, that Flash apps are not welcome on the App Store and that Flash developers are more than welcome to come learn Objective-C and Cocoa Touch. If I were Apple, I'd be pretty darn annoyed at Adobe's insistence and willingness to resort to borderline unethical behavior to steal a piece of the iPhone and App Store pie, and I would take steps to protect the quality of the user experience on the iPhone, even drastic steps if necessary.

But, I'm not Apple, so only time will tell.

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Lady Gaga, Salman Khan