a life of coding

Thursday, January 28, 2010

Skirt the AppStore: Run Unsigned Code on a Stock iPhone / iPad

Another iPhone OS product, another flame-war over Apple's "iron fisted control". I think the whole argument is pretty silly, and to hammer it home I gave this post a title that's sure to anger lots of people. Why? Because what I'm about to say is (a) obvious, (b) correct, and (c) still not what people want to hear.

You can run arbitrary code on an unmodified iPhone, and the same will be true of the iPad. You will still have certain restrictions (only one app at a time, no access to the data in other apps, and limited access to hardware), but rarely do people complain about those. What people do say is that "Apple will stop me from doing X, because X interferes with their business model, or angers the carriers." Examples are Skype over 3G, Google Voice... really, there aren't that may reasonable apps that have been turned down on the AppStore, but as I said, this is a flame-war and "reasonable" isn't part of the vocabulary.

You can run whatever your little heart desires on your iPhone/iPad, and it only costs you $99 more. This product "upgrade" is called the Developer Program, and has been available for quite some time. After paying the fee, Apple lets you download a piece of software that lets you run almost anything that you like (I already listed the restrictions) on your iPhone. Done!

Whats truly amazing is that this is always how desktop development has always been done, except on Linux and Mac OS X. Pay your money, get your compiler, write your software, run your software. The Linux and Mac OS X crowd is up in arms because they have had GCC for at least 9 years, and $99 seems like a lot compared to free. Where things differ is what happens after you have written a piece of software that you like and runs correctly. Traditionally, you make the binary available and people can click it and have it run (insecurely) on their computer. With the iPhone OS, you send it to Apple, they make sure that it fits some minimum criteria, and now you can require people to pay you to use this software. The end user even gets a convenient update mechanism, and a way to re-acquire your application without re-paying should it be deleted.

Want to be a revolutionary? Here's some advice: stop complaining, join the developer program, and make something people want.


Post a Comment


Create a Link

<< Home