Apple, Openness, and the iPhone

Yesterday, Apple released potentially one of the most interesting devices in computing history. The combination of mobility, relatively good power, rich OSX APIs, and multiple types of connectivity and sensors (phone, bluetooth, wifi, proximity, location, visual, audio, and orientation) could result in some truly spectacular new classes of applications. Unfortunately, it appears that they’re making their most classic blunder once again: locking out third parties. We have the opportunity to make ourselves heard, and request that Apple open the iPhone to third party developers. The only avenue of communication Apple leaves open to developers is Radar, their bug tracking system.

Jonathan ‘Wolf’ Rentzch has filed an initial bug report on the topic, which he describes here. I strongly suggest that anyone interested in open application development on the iPhone (or being able to use third party applications on the iPhone) follow his lead and file additional requests at bugreport.apple.com (Please be polite though; ticket techs are people too!).

A sample bug report (filed by our own Augie Fackler) is below:

Summary: You can’t do any development for the iPhone.

Steps to Reproduce: 1. Write a cool app2. Try to compile for iPhone

Expected Results: A binary that should work in the spiffy iPhone.

Actual Results: No way to compile for the iPhone exists, so no binary is produced

Regression: None known.

Notes: This is the same as Rentzsch’s bug rdar://problem/4917169 to make your life easier when you flag this as a duplicate.

This entry was posted
on Wednesday, January 10th, 2007 at 5:23 PM by David Smith and is filed under Uncategorized.
You can follow any responses to this entry through the RSS 2.0 feed.
Both comments and pings are currently closed.

I’ve seen this mentioned in two places now (if you include this blog) but not in any official Apple statements. Is there any hard evidence that this is the case? Are you just assuming that because Apple didn’t release an update to their dev tools for the iPhone that it won’t happen? Apple probably isn’t ready to release a whole development kit yet. It would require a bunch of new tools like emulators, new documentation, etc..

I also made a suggestion about this via RDAR. It’s interesting to note that issues surrounding 3rd party apps on phone has been addressed in several ways. Qualcomm, the company I work for introduced BREW which uses comprehensive application review and signing to control which apps can be deployed to phones. The BREW platform also helps developers and the carrier collect their money and allows for trial and subscription periods. Apple could use a similar model. Another useful model to look at is the one that the game console guys use — plenty of 3rd party development but only 1st party approval and deployment. Buy the app via iTunes (like the new games for iPod). They only make available what they approve of and want to sell. It’s not ideal and as open as I’d like but would give us 3rd party guys a crack at putting some great stuff on the iPhone IMHO.

I think it was a nice move for apple to come out with the apple iPhone. The iPhone has most features consumers have been waiting to have. I also think the price will not deter people from buying the Apple iPhone. I even think they will sell more then the 10 million Apple iPhones they expect to sell within the next year. Did you happen to see the iPhone demo video they can’t go wrong.

Apple have done this for a reason, it’s not an oversight. Whether we agree or not is rather beside the point; they will have known the reaction to this when they made the decision.

So, this can’t be a good idea – it’ll just gum up a functional system with barely relevant feedback on what is in all likelihood a done-and-dusted decision.

Anyway, one of the interviews I read with Steve or Phil suggested that the phone was closed ‘for now’, and that they might possibly allow an iTunes-driven software distribution model in the future. Read: no crappy software, development probably by invitation only, you’ll likely have to pay.

I haven’t quite decide whether this is a good thing or a bad thing, since I can understand both point of views. Maybe the deciding factor will be the market?

As developers we often forget about the varying needs that we have as developers and those that are defined by the general public. Certainly they aren’t always incompatible, but experience shows that developers want something that is infinitly hackable, while the average person wants something that does the job advertised, without having to refer to the manual every five minutes. Remember the iPod has been very popular despite its lack of software extensions.

While Apple has decided to close off the iPhone to third-party developers, it is possible that once they are happy with the stability of the phone they may change their stance?

Once the phone is out people will most probably ways to install Linux on the phone or back doors to installing their own software, without the blessing of Apple (warantee invalidation). Its been done for many other things.

Some experiences to consider:

I have a friend who’s smartphone would crash while talking because of some buggy software, and this is not what is expected from a phone. Actually I can remember people wondering whether he was joking, until it crashed in front of them.

It should also be noted that there is an experience being sought after, and when you see some of the half-hearted port jobs of applications running in Windows CE (UIs which aren’t suitable for the device, etc), you wonder that maybe this does have its advantages.