App Store: No appeal for developers?

My most recent article for The Mac Observer delves into the problems developers have with Apple’s App Store approval process — focusing on a recent series of nonsensical rejections. More recently, I stumbled upon another article on the same topic. It makes an intriguing point: the main problem with the App Store is that Apple treats software as a commodity similar to a song in your music library. It doesn’t work. Read the article if you want to find out why.

I’ve since concluded that there is yet another major problem with the App Store approval process: There is no effective and standardized way to appeal a decision.

When I call almost any company, such as my credit card company, to complain about something — and I am dissatisfied with what the person is telling me — I can ask to “speak to your supervisor.” Usually, this works; they do pass my call up the ladder. The result may not change. But at least I get to speak to someone with more authority to make a change.

I understand that the support people at the bottom rung are encouraged not to “get the supervisor” too easily — lest every minor complaint get bumped up. But at least they are permitted the discretion to decide. For my part, I try not to exercise this option unless I truly believe I have a major grievance.

Based on the developers’ stories I have read, the situation with Apple is quite different. You get the feeling that the ones at the bottom of the ladder (assuming you even get to speak to anyone at all, rather than being forced to work through email) are told by Apple: “Make your decision, based on the guidelines we give you. Then stick to it no matter what. Whatever complaint you may hear, ignore it and repeat that your decision is final. Under no circumstances indicate that there is any possible appeal (other than via the developer resubmitting the app and starting over). And certainly don’t pass off a call to any “higher up.”

If Apple adopted a more reasonable approach to dealing with dissatisfied developers, it might have avoided most, if not all, of the “horror stories” that have been circulating on the Web.

The iPhone is ready to go beyond AT&T

In the November 23 issue of Newsweek, Daniel Lyons argues that the iPhone is in danger of the same fate the befell the Mac: doomed to a small market share while another player becomes dominant. For the Mac, the other “player” was Microsoft. For the iPhone, the biggest threat is Google’s Android.

The problem, as Lyons sees it, is that Android is an open system that potentially works on any company’s hardware, just as was the case for MS-DOS/Windows. The iPhone, in contrast, is a closed system “keeping the software tightly coupled to the hardware.”

While I too have lamented the iPhone’s closed nature, I have to disagree with Lyons’ overall conclusion. The foundation of the iPhone’s appeal comes from the über-successful iPod. While the iPod might be similarly criticized as “closed,” it is never-the-less the 2000-gorilla of MP3 players. With the iPod touch as its wingman, the iPhone is similarly positioned to be follow in the footsteps of the iPod rather than the Mac.

With one exception.

I totally agree with Lyon’s concern that the iPhone runs only on the AT&T network. In the beginning, back in 2007, this hardly mattered. Starting from an installed base of zero, the iPhone was destined to take off no matter what. Any AT&T customer thinking of getting a smartphone was going to give the iPhone a serious look. For millions of other users, the desire to have an iPhone trumped everything — and they switched to AT&T.

Times have changed. AT&T continues to take hits for its relatively poor 3G network. Its refusal to activate Internet tethering on the iPhone because of its expected network impact is yet another black mark. Meanwhile, as Google’s Android phone improves, it may become less critical to switch to AT&T just so you can get an iPhone.

The result is that the potential pool of iPhone users will inevitably plateau. No other smartphone need worry about bumping into this ceiling.

What’s the solution? It’s an easy one. Apple needs to expand the iPhone’s availability to carriers beyond AT&T. The iPhone already supports a multitude of different carriers around the world. It shouldn’t be that difficult to support more than one carrier in the U.S.. Numerous others have come to the same conclusion (see this article for one example).

The hangup is more legal than technological. Apple and AT&T currently have a licensing agreement that requires that the status quo be maintained. Although both parties remain relatively mum about the details of this arrangement, there are predictions that the contract will expire as soon as next year.

When that happens, I would strongly urge Apple to drop its exclusive licensing with AT&T. No other single move would have as much positive impact on the iPhone’s future market share. By so doing, the iPhone will be well on its way to the same level of dominance now enjoyed by the iPod.

iPhone ringtones: To pay or not to pay

I have sat by quiet as long as I can. Admittedly, that often isn’t very long. In this case, I have sat by while absorbing all the arguments in all of the recent columns on the subject of Apple’s new ringtone policy for its iPhone. And I have tried to digest it all and decide my personal viewpoint. I am done. My viewpoint is that the policy stinks and has no rational justification.

Before I offer the justification for my conclusion, let’s backtrack a bit. Let’s start by reviewing exactly what Apple’s policy is: If you want to add a ringtone to your iPhone, you must first purchase the song from the iTune’s Store for 99 cents. You must then pay an additional 99 cents to convert the song to a ringtone. Further, at the moment, only a small subset of the songs available from iTunes qualify for conversion to a ringtone. Incredibly, most songs you own or can purchase cannot yet be turned into ringtones even if you are willing to pay!

As ridiculous as I believe this policy is, I don’t want to sound too critical of Apple here. I believe they don’t much like the policy either. Rather, the policy is being imposed on them by the recording industry (RIAA). As pointed out by David Pogue (among others), it is actually a better policy than you are likely to find elsewhere. Sprint, for example, charges $2.50 to rent a ringtone for 3 months! You have to keep paying to keep using it. With Apple, you get the entire song plus the ringtone for $1.98, and you get to keep it forever.

Still, there is something fundamentally ludicrous about having to pay as much (or more) for a 30 second snippet of a song than you would have to pay for the entire song. The only thing more ludicrous is that enough people are willing to tolerate this, that the recording industry has turned ringtones into a multi-billion dollar profit-making machine.

The crux of the matter, for those who want to be ethical and not break the law, is whether the recording industry has any legal right to enforce such a policy. Is it in fact illegal to create your own custom ringtones for free, in violation of Apple’s policy (something which can be easily done with software such as iToner and MakeiPhoneRingtone)?

The answer to this question is sufficiently unclear that pundits (and lawyers quoted in columns written by these pundits) have come down on both sides of this fence. Some (such as Endgadget and Daring Fireball ) clearly believe that the policy has no legal foundation and you should feel free to create your own ringtones. Others (such as the MDJ) argue that there is a legal defense for the RIAA’s position, although it hangs by the thread of the nitpicking and cherry-picking parsing of legal language on which the RIAA thrives. The MDJ correctly notes that Fair Use (which is one basis for allowing repurposing of copyrighted materials by individuals) is not actually a law, but a doctrine open to various interpretations. The MDJ further points out that a ringtone is a “separate delivery of a recorded song” and as such is subject to a separate fee from the user. The MDJ doesn’t like this any more than anyone else (outside of the RIAA of course), concluding, “Yes, this sucks, but it’s the law.”

After considering all of this, I simply don’t buy the RIAA position, literally or figuratively.

Even if I accept all of the arguments presented in the MDJ article, it still doesn’t explain why I should not be able to take a song I already legally own (from a CD purchase) and use iTunes to turn it into a ringtone for 99 cents. Nor does it explain why I can’t just purchase a ringtone version of a song for 99 cents, without having to also buy the entire song. Why should I have to make a double or even triple purchase of the same song just to get a ringtone? There may be technological and practical reasons that make this difficult for Apple to implement, but not legal restrictions.

Finally, I don’t even accept the core of the pro-RIAA-viewpoint argument. And neither does Apple or the RIAA itself. That’s right. Apple and the RIAA already allow the equivalent of ringtone creation for free.

How so? For starters, they do it in the entire iLife suite of software. To see what I mean, open iMovie and insert a song from your iTunes Library to serve as a background for a 30 second movie you are creating. Bingo! You have just used a 30 second snippet of a song from iTunes for a different purpose than simply listening to the song. You can even create a DVD from your movie and play the DVD at the same time that someone else is listening to the same song directly from iTunes. How is that any different from what is done with ringtones? It isn’t. Yet Apple allows this, apparently without objection from the RIAA.

Heck, if you use iWeb, you can create a Web page containing iTunes music that could potentially be listened to by thousands of people a day, all at no charge. But a ringtone for your own personal listening benefit? Nope, that you have to pay extra for.

It’s also okay to copy an entire iTunes Library from a computer to an Apple TV, thereby allowing the user to play the music on both machines at the same time—with no charge for doing this. Yet, you cannot copy a single 30 second excerpt from one song to your iPhone without having to pay for the privilege. Absurd.

There is only one explanation to account for all of this absurdity. The ringtone business began when phone companies could easily restrict what could transfer to your phone. They, and the recording industry, made a ton of money taking advantage of this. Technology has now evolved; the transfer limitation no longer exists. But the greedy folks behind ringtones have not changed. They continue to cling to a model that no longer works and no longer makes any sense—legally, ethically or any other way except in terms of their profit. Happily, at least for the moment, you don’t have to play along.

A fix for iPhone ringtones problems

If you live on the cutting edge of the world of iPhone, as I apparently do, you sometimes cut yourself. That’s what happened to me today. After experimenting with several different methods of installing ringtones over the past week or so (see previous posting)—including Ambrosia’s iToner, Rogue Amoeba’s MakeiPhoneRingtone, manually-applied hacks, and (of course) Apple’s newly activated iTunes Store method—things began to fall apart.

First, iToner listed ringtones that had I had previously deleted from iTunes. Worse, when I attempted to add new tones, an error message appeared.

Other ringtones, added with MakeiPhoneRingtone, would not copy to the iPhone when I attempted to sync in iTunes, resulting in an error message instead. [Update Sept. 13: This problem may have been more due to a bug in the MakeiPhoneRingtone software, supposedly fixed in the just released 1.1 version.]

Making matters worse, some custom ringtones that had supposedly successfully transferred to my iPhone would not show up in the iPhone’s Ringtones list.

None of the simple solutions (such as restarting the iPhone) worked. I could find no sure solutions on the Web. I was on the verge of pulling out the precious few hairs that still remain on my head. Fortunately, before resorting to this, I found a solution. Here’s what I did:

1. I had previously hacked my iPhone (using AppTappInstaller) and had installed OpenSSH. This allowed me to wirelessly connect to my iPhone from my Mac, using an SFTP connection in Fetch. To do this yourself, you’ll need your iPhone’s Wi-Fi IP address, username (root) and password (dottie, unless you have changed it).

2. Connect to your iPhone in Fetch (or whatever SFTP tool you use) and navigate to: /var/root/Media/iTunes_Control/iTunes/. In this directory you should find a file called Ringtones.plist.

3. Copy this file to your Mac’s desktop. Open the file in a .plist file editor, such as Apple’s Property List Editor (on your drive if you installed Apple’s Developer tools).

4. Check each of the items listed under the Ringtones property of this file. The sub-properties of each item will, in turn, tell you the name of each song.

This file supposedly lists all installed ringtones. However, it appeared to be a bit messed up for me, which turned out to be the source of my problems. In particular, it still listed ringtones that I had previously deleted from iTunes, even though I had synced the iPhone since doing the deletions.

To fix this problem, it may have been sufficient to simply delete the .plist file from the iPhone. But I tried something a bit more cautious:

5. Navigate back a bit to: /var/root/Media/iTunes_Control/Ringtones

In this directory you will find the actually installed ringtones.

6. Compare the directory listing to the .plist file listing. Where they are different, delete the items from the .plist file that are not in the Ringtones directory—until the two lists match. Save the modified .plist file.

7. Using Fetch again, copy the modified .plist file back to its original location on the iPhone. It replaces the unmodified copy. You can now quit Fetch.

8. Launch iTunes and connect the iPhone. Go to the iPhone’s Ringtones tab.. Although it may not be necessary, select to remove all the listed ringtones and click Apply. Then selected to re-add the ringtones and click Apply again. The iPhone should now be synced and all the listed ringtones in iTunes should be correctly installed.

At this point, I returned to iToner. It now correctly listed the iTunes-installed ringtones and allowed me to add new ones without error. On the iPhone itself, both the iTunes-installed and iToner-installed ringtones were correctly included in the Ringtones list. All was well. Whew!