Counting down to the iPhone development kit
We're quickly closing in on the beginning of a new chapter in the history of the iPhone, one that could signal just how far Apple can take its maiden voyage into the smartphone world.
This is supposed to be the week that Apple makes honest coders out of all the software developers who have been busy creating unofficial applications for the iPhone almost since the day it was released last June. Back in October, Apple CEO Steve Jobs announced that the company planned to release an official software development kit (SDK) in February that would allow third parties to create applications that would run directly on the iPhone.
Now it's the last week of February, and anticipation is building to see just what Apple has in mind for third-party iPhone and iPod Touch software development. We might have to wait a little longer, however: over the weekend, Business Week reported that the SDK would be delayed into March. And on Monday, The Unofficial Apple Weblog predicted the initial SDK will be just an alpha or beta release, with a full version coming later this year at Apple's Worldwide Developer Conference. An Apple representative said Monday the company had no updates to the plan to release the SDK in February.

What applications do you want to run on your iPhone? What kinds will Apple let you?
(Credit: CNET Networks)Apple loves to make announcements on Tuesdays, so keep your ears and eyes peeled tomorrow for any sign of the SDK or any of the 15 other things rumored for introduction this month. Whether or not Apple releases the SDK this week, the more important subject is how the company plans to treat third-party application development: is it a necessary evil, or a welcome catalyst for the product?
(Editors' note: As of mid-morning Tuesday, Apple's announcements for the day seem limited to some updates to the MacBook and MacBook Pro lines.)
When Jobs announced the plan to release an SDK, he explained the four-month gap between the announcement and the planned release as necessary "because we're trying to do two diametrically opposed things at once--provide an advanced and open platform to developers while at the same time protect iPhone users from viruses, malware, privacy attacks, etc."
Developers will either be thrilled, annoyed, or perplexed depending on how Apple decides to define "an advanced and open platform." The company has a few choices: it can allow unfettered access to the iPhone to anyone, it can allow anyone to develop applications for the iPhone but only those applications that have been digitally signed by Apple or a certification authority can be installed on the iPhone, or it can be the sole arbiter over who can create applications and what can be installed on the iPhone. There are also shades of gray within those scenarios, which leads to a lot of speculation on what exactly Apple has in mind.
To this point, the company has chosen the most restrictive policy possible, in that only Web applications that don't have full access to the iPhone's underlying technology are authorized. Security and reliability concerns seemed to drive Apple's conservatism in the early days of the iPhone, in that the company didn't want its prize product sullied by poorly written or unsecure applications just as it was trying to build momentum.
Still, Apple was aware that the promise of the iPhone would be quite limited if that was the full extent of access of the iPhone. There's just no way Apple can anticipate--not to mention create--every possible application that might convince someone to buy an iPhone. "We are excited about creating a vibrant third party developer community around the iPhone and enabling hundreds of new applications for our users," Jobs wrote in October.
In that letter, Jobs hinted that Apple was considering an application development model used by other members of the smartphone community, notably Nokia. This model would require any application bound for an iPhone to carry a digital certificate that would verify whether the application was created to meet certain standards for security and reliability. In this system, if you tried to install an application on the iPhone, the iPhone's OS X operating system would check for that digital certificate and either allow or prohibit the application from being installed.
Symbian, the world's largest smartphone operating system developer owned in large part by Nokia, offers application developers three options (click for PDF) based on different factors such as cost, proliferation, and access to core operating system technology.
For example, smaller developers have a no-cost option to get their applications onto Nokia handsets running Symbian, but they face restrictions on how many phones can install their application and users are warned when installing the application that it has not been verified by Symbian. If they cough up more money, there are no limits on how broadly their application can be distributed but it has to pass tests to guarantee quality, which has the benefit of making their application appear safer to the end user.
Microsoft offers several different options for Windows Mobile smartphones, depending on the requirements of the phone manufacturer or carrier. There's no requirement on Microsoft's part to obtain a digital certificate for an application, but the company will help promote applications that have either been certified to participate in Microsoft's logo certification process, or that have taken the further step of obtaining a digital certificate.

Application developers were not crazy when Apple CEO Steve Jobs told them that Web applications were the limit.
(Credit: James Martin/CNET News.com)And interesting moves are taking place in Silicon Valley as mobile developers evaluate Google's Android SDK. Android is being billed as the most "open" operating system ever created for mobile phones, as it would appear that there is no requirement for digital signatures and any application can be created for the operating system. Of course, Android is not a shipping product, and things may change once the wireless carriers get their hands on Android phones.
Most wireless carriers have historically frowned on the notion of completely open applications for phones on their networks. In fact, until recently Verizon was notorious for controlling almost every single piece of software that ran on devices that connected to its network. The carrier recently changed that stance to permit outside applications to run on phone connecting to its network, and plans to outline its requirements during a developer conference in March. It has yet to say exactly how it will implement that goal, but it would be somewhat surprising for Verizon to veer from a complete lockdown to total openness in the space of a year.
So, expect Apple to implement some sort of digital-signature requirement on iPhone applications. This would be for two reasons: to control the quality of applications that run on the iPhone, and to allow AT&T a chance to approve or deny applications that might compete or hinder its own services.
But if the requirements are too heavy-handed, don't expect developers to cheer that news. Any kind of restriction may be very frustrating to many developers, because while Apple has been hard at work developing the SDK, the iPhone became an open development platform.
One of the biggest stories in the early days of the iPhone has been the hard work of an army of coders in "jailbreaking" the iPhone to run all sorts of independently developed applications that natively access the phone. This includes everything from games to mapping to camera software, and if you think iPhone unlocking is widespread, iPhone jailbreaking is much, much more common.
Since July, a whole set of best practices, and even an "unofficial" software developers kit have been created from scratch by an enthusiastic community of coders looking to unlock the iPhone's potential. Apple has half-heartedly tried to fight this growing tide, releasing firmware updates that wiped applications off iPhones and making changes to the way the iPhone loads applications, but the hackers have managed to stay one step ahead of the company to this point. The latest firmware update to the iPhone, released in January at Macworld, has already been cracked.
An SDK that's seen as less than satisfactory by this crowd might result in two different iPhone development paths: the officially sanctioned model that larger companies might choose to follow, and the unofficial model already in place that will appeal to small developers unwilling to cough up the certificate fee or adhere to Apple's guidelines. Presumably, Apple will update OS X to lock out unofficial applications when the SDK is officially released, but previous updates haven't proven to be a deterrent yet.
And what of the iPod Touch? Will there be two separate SDKs, one more restrictive model for the iPhone that addresses the concerns of wireless carriers, and one more open one that's designed for the Wi-Fi-capable iPod Touch? A more restrictive SDK for the iPod Touch would be a tough sell and would hold back the development of the iPod Touch, which Apple hopes is the model for the future of the iPod lineup.
What might this mean for you, the iPhone owner? A tough development policy could wipe your favorite unofficial application off the home screen and force you to pay for a similar application from an official developer. A lenient one could hook you up with anything you desire, but open you up to security problems.
And a more balanced model could offer you access to powerful applications that dramatically improve your iPhone experience, such as having access to your corporation's BlackBerry e-mail server if RIM decides to get on board. Or Flash-based Web pages with Adobe's support, or cool games that use the iPhone accelerometer and touchscreen to crazy ends.
Apple is walking a fine line between throwing the iPhone wide open to development and locking it down to the point where only a select few friends of the company get to play. The consequences of that decision could play a huge role in determining whether Apple hits its sales targets for 2008, and addressing the larger question of whether Apple really has changed the future of mobile computing with the iPhone.
Tom Krazit, a staff writer for CNET News, focuses on all things Apple. He has covered traditional PC companies such as Dell and Hewlett-Packard, chip companies such as Intel and Advanced Micro Devices, and mobile computers ranging from Research In Motion's to Palm's. E-mail Tom.
- Topics:
-
iPhone
- Tags:
-
Apple,
-
iPhone,
-
SDK,
-
software development,
-
iPod Touch
- Bookmark:
- Digg
- Del.icio.us





Apple has never completed the transition from objective-c to another language like java for all its OS work. The best they've done is to have the objC->java bridge. All the NS* framework got converted to java syntax so you can invoke from java but the impl are still in objectiveC. Given iPhone OS is the same OS X kernel on Mach, and just a few months to release the SDK, the only way they can make it is by releasing the foundation classes and objective-c for the developers.
Also, my bet is iPhone will have a cert that is signed by Apple, and you need to go to Apple to get your code signed before you can install it on the phone and have it trust your code.
all running at native speeds with direct access to openGL-ES,
Core Audio and a bunch of other useful things- why on earth
would anyone want to code Java on the iPhone? Java is a total
disaster, both from a write-once-run-anywhere perspective
(just try it...) and performance-wise. Even with Jazelle
'acceleration' (i.e. accelerated interpretation, A.K.A 'elimination
of the switch statement') Java is at best 1/5 the performance of
true native code generated by an optimizing compiler. Java and
the Java hype bandwagon have set mobile applications
development back 5 years. Roll on objective-C and C++ on the
iPhone - the quality and performance of applications that will
emerge will embarrass the Java zealots into silence.
have no clue.
Transition to Java!?? Get of the ^&*(Oo crack pipe! ***?!? Your
brain is so inside out it's incredible!
- Sandbox some applications for security reason
- Have legal requirement to protect "protected content"
- Know you'll be the target of virus and malware
- Users want more application yet less annoyance (a contradiction)?
- Developers might not understand the limit of programming a phone.
How do you provide an SDK that will satisfy all those requirements.
We'll see what the solution is the Apple way.
Kool Skatkat
device sweep the field would be actual DICTATION software, that
would let a user dictate an outgoing Email, later to be retrieved on
a computer, to be filed or printed. The thing does have a
microphone and an operating system, after all
If you have to spend more time correcting the dictation software's errors caused due to background noise, then it consumes more time than it saves.
SEND MESSAGE
"Did you say end massage?"
NO. SEND MESSAGE
"Did you say and message?"
NO. SEND MESSAGE
"Did you say hamster beating?"
YES. YES I DID.
Dragon Naturally Speaking is the industry tops for this, but they rely on a controlled environment.
It could be fun to see what happens though.
We're not ready to announce an official StyleTap for iPhone/Touch version yet, but we have done some experimentation with it. Here's a short video of what it looks like so far:
http://www.viddler.com/styletap/videos/1
What you are seeing is unmodified applications originally written for Palm OS running on an iPod Touch.
It looks promising. This would bring the largest library of mobile applications to the iPhone/iPod Touch platform.
This experimental version can run ARMlets and because of the screen size, uses hi-res (double density) bitmaps and fonts (the same resolution as Palm OS Treos).
If Apple's security and application installation and distribution scheme isn't too restrictive, it looks like StyleTap will be able to run the same applications on the iPhone/Touch, Symbian and Windows Mobile/CE platforms. This should go a long way in helping developers deal with the mobile OS fragmentation problem.
Regards,
Bob Chew
StyleTap Inc.
If Apple chooses to only let apps be installed through iTunes, then they control what is allowed on the unit. That has some pros and cons.
Pros: Apple signed / authenticated installations. The software will work with the unit or it doesn't get deployed through iTunes at all. Selection will be limited and you will need to be an authorized software developer signed up through Apple to make software available.
Cons: Only Apple-authorized developers can play. Apple has the option of choosing who they want to have software from- pick and choose as it is. It's not really an open platform at that point.
Pros: New updates through iTunes may include new software updates for your programs.
Cons: If a developer drops out of the Apple program, they could potentially remove that application from *all* iPhone and Touch models remotely- they have already proven that you don't own the content on the unit- that belongs to Apple.
Pros: Support for applications could be far better than those done independantly or from open source. Easy installations, easy to use, guaranteed to work.
Cons: How much will Apple charge for being a developer? They may release the SDK free, but in order to get applications onto the unit itself, they may require developers to have a subscription to keep their apps on the unit. Don't keep paying Apple and they may yank the software remotely.
I can really see it going both ways. If they want to satisfy customer demand and appease the open source market, they will open up the unit and let everyone play. But that's also a model for chaos and the security of the unit can't stand that sort of scrutiny. Get a phone virus on that unit and you've opened up all sorts of issues.
Make it a closed system with subcriber based application developers and you can see how Apple can make money. They already want to make money however they can with monthly fees now. I can easily see this happening as it allows them to still control the platform and keep it secure.
This is all fluff until we get the real news though. Doesn't look like it will happen in February as promised by Jobs, but delays happen everywhere. Let's see what happens when they finally release it.
that they do in ichat video, with app/screen sharing, its darned
near village idiot friendly.
This running battle between the hackers and Apple is truly interesting to observe. With Nokia's release of the N96, the still popular N95, the gPhone on the horizon (scheduled for later this year), Apple needs to secure it's iPhone before version 2 is released. The shareholders are already antsy.