All Articles in Development

Jobs on the iPhone User Interface

Jobs Leopard

There’s a big article in the New York Times that includes an interview with Steve Jobs about the excellent shape that Apple’s in nowadays. Apple is 3rd in computer shipments overall. They might slip to 4th when Acer buys Gateway after Gateway buys Packard Bell, but Apple will still have more growth than the resulting top three. The Times did an interview with Jobs, and he of course has some choice things to say about everything — Leopard vs. Vista, Ultimate Editions, the iPhone’s multitouch interface, the delays of Leopard, and the Newton.

‘Mr. Jobs said that multitouch drastically simplified the process of controlling a computer.

There are no “verbs” in the iPhone interface, he said, alluding to the way a standard mouse or stylus system works. In those systems, users select an object, like a photo, and then separately select an action, or “verb,” to do something to it.’

I’ve written about what Ars Technica called the ‘New Frontier’ of the SDK, and I agreed with Ars that it was coming. Anyone that gripes about the availability of the development kit for making apps on the iPhone doesn’t give enough credit for what Apple has created with multitouch.



iPhone Developer Documentation

Ericasadun

Erica Sadun, iPhone hacker extraordinaire and writer at The Unofficial Apple Weblog, has documented the entire set of Cocoa function calls required to program for the iPhone. These header files are used for programmers to properly create user interfaces, network code, and, well, pretty much everything. And the documentation effort is a massive job, usually not something to be done by just one person. I know that this site can get kind of wonky here and there, so I’ll do my best to explain why this is important, but for everybody.

All of the applications available from Installer.app have been written without any formal set of documentation. So, there may be some bugs, since there’s no single place to go for programming information. Usually, Apple would provide the documentation for programming on the iPhone. But, as they’ve recently announced, they’re not going to be doing that until February. So, now anyone that is planning or writing a native Cocoa app for the iPhone or iPod touch now has the means to research how to do it.

That includes both the folks that are hacking iPhones to install and write 3rd party apps, and any larger software companies that want to get a leg up on their software development. With this set of header files, it should be perfectly possible for any large development group to prototype their program well in advance of the official Apple release.

Of course, these header files may yet change. There’s no guarantee that Apple’s set of documentation will stay the same; Apple will definitely be adding to this, and they may not allow some of the function calls documented by Sadun to be accessible for other programmers. No one can tell. But, it’s a huge step for programming native applications for the iPhone and iPod Touch

Excellent Discussions on SDK

Johngruber
figure 1: John Gruber

John Gruber of Daring Fireball has posted an excellent discussion on the various subtleties of the language used in Steve Jobs’ iPhone SDK letter. He talks of HTML widgets vs. the stripped-down Cocoa API, the security of the current iPhone, the hidden compliment-slash-dig on Nokia and their recent “open to anything” marketing slogan, signed apps, the iTunes App store, and with his usual attention to detail and insight. Well worth the read there, like any long Gruber post.

Gruber also points to a blog post for OSX developers that intend to write applications for the iPhone, which led to a comment-discussion by several mac developers, and where they intend to aim their development efforts — both in functionality of their applications, and price thereof. It looks like there’s plenty of hope for the $5 app, if they can be guaranteed to be paid. There’s still the lingering question of how available the SDK will be — and that’s excellently addressed by Frasier Spiers on a blog post at his site.

Jobs Announces SDK

Steve Jobs has confirmed the rumor. It looks like this won’t be just widgets — it will be full, system-level native apps. It will be interesting to see how they perform this — as the iPhone stands, everything is running in ‘ring 0′. My guess is that they’re going to have to redesign the iPhone to run in multi-user mode. That is, some things will be running as root, other things will be running as ‘radio’, and some things will be running as ‘Mike Overbo’, for example. From http://www.apple.com/hotnews/:

Third Party Applications on the iPhone

Let me just say it: We want native third party applications on the iPhone, and we plan to have an SDK in developers’ hands in February. We are excited about creating a vibrant third party developer community around the iPhone and enabling hundreds of new applications for our users. With our revolutionary multi-touch interface, powerful hardware and advanced software architecture, we believe we have created the best mobile platform ever for developers.

It will take until February to release an SDK 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. This is no easy task. Some claim that viruses and malware are not a problem on mobile phones—this is simply not true. There have been serious viruses on other mobile phones already, including some that silently spread from phone to phone over the cell network. As our phones become more powerful, these malicious programs will become more dangerous. And since the iPhone is the most advanced phone ever, it will be a highly visible target.

Some companies are already taking action. Nokia, for example, is not allowing any applications to be loaded onto some of their newest phones unless they have a digital signature that can be traced back to a known developer. While this makes such a phone less than “totally open,” we believe it is a step in the right direction. We are working on an advanced system which will offer developers broad access to natively program the iPhone’s amazing software platform while at the same time protecting users from malicious programs.

We think a few months of patience now will be rewarded by many years of great third party applications running on safe and reliable iPhones.

Steve

P.S.: The SDK will also allow developers to create applications for iPod touch. [Oct 17, 2007]


Breaking: Apple Announces iPhone SDK, Opens Platform for Software Developers! *faints*

Charge the defibrillators, my heart just stopped. None other than Steve Jobs himself has officially announced that Apple will indeed open iPhone to native software development, and provide an SDK next February. Apparently plans were in the works to open the platform to developers all along (told you so) but Apple still hasn’t figured a non-invasive procedure for allowing applications to run in OSX.

So, the good news is there is a God. The bad news is it’s Steve Jobs.

Read his excellency’s blessed scrawl after the break. Or go here to see the official announcement on Apple.com

Read the rest of this entry »

More Rumors of a SDK

Business Week

The Leopard-January-SDK rumor is floating around again, this time at Businessweek (we reported on it here, and there’s another rumor concerning development here. With it comes talk of a system development kit, or a way to get applications on an iPhone that doesn’t require hacking. There’s no indication as to whether it’s a real SDK or whether it’s a way to sync HTML widgets. My gut hunch is widgets, but it’s also possible that the iPhone requires the same version of XCode that Leopard uses. [via

iPhone SDK Cometh, So Sayeth BusinessWeek. Developers Cheer and Sing Sea Shanties

iPhone users may experience sudden loss of bladder control in early January. According to sources quoted by BusinessWeek, who are close to the companies plans - sorry BW, the janitorial staff do not count as sources - Apple plans to deliver an SDK at MacWorld, finally opening the platform to software developers. No more of that freakshow hackware stuff, alright?

The sources go on to say that Apple’s timing has to do with the release of Leopard, the next version of OSX, coming next Friday. Apparently this upcoming iPhone SDK will somehow be tied directly to Leopard itself, through Xcode, though I’m still questioning how that is possible. I assume there are major changes to Cocoa, native to Leopard. Or it could simply be a technical way of luring developers to Leopard in the same way that Microsoft soldered DirectX 10 on to Vista, hoping to sucker attract game developers.

Anyway, pour a pint of ale. Three cheers for it. See you in January, and all that rot.

Read

Apple Launches iPhone Web Apps Directory. Developers LOL

Apple has quietly posted a Safari web app directory, similar to the one for Dashboard Widgets, featuring every available iPhone-optimized web 2.0 service or web app created by human hands. Ok, so these aren’t the apps we’re looking for, and there are dozens if not hundreds of directory sites in existence already, but let it never be said we iPhone users are in want of a good web browser. Right? crickets chirping

[Update] Amazingly this directory isn’t formatted for iPhone. Strange that Apple would build a web app directory for iPhone, designed to be accessed from a desktop.

Read

Fruit Baskets: Apple Set to Open iPhone to Software Development. They Totally Are

Rumors are like falling apples in an orchard - some are perfectly edible, while most are wormy and end up on the ground rotting away, eaten by insects. The Apple rumor mill yields bushel baskets full of both kinds. Today’s rumor comes courtesy of Glenn Fleishman of TidBits, who claims to have heard from “sources” (mwaha) that Apple is very close to making a public announcement regarding native application development on iPhone. Naturally his “source” is vague and void of details, which makes it totally credible!

Not that I wouldn’t love to sit here all day playing this game of he said, she said, but like I’ve said so many times before… we KNOW application support is coming. I have my own “sources” as well. It isn’t a question of if, but what and when. Will Apple open its kimono, releasing a full blown SDK with no handrails and locked doors? Or will this be a token sandbox environment with kiddie pool and happy meals? Wait. Just wait, all will be revealed soon.

Read


iPhone To Get 2nd Party Apps?

I’ve claimed over and over that the iPhone is built to buy things from iTunes. One of the things that we should be able to buy from iTunes is programs. Games, if that’s your thing; mental diversions. I’m glad to report that 9to5mac.com says that it’s coming. Of course, they call it 3rd party development, which is kind of a misnomer. If it requires that a developer sign a contract and get Apple’s blessing just to get the development tools, it’s a lot more like 2nd party development. It would bring the iPhone and iPod Touch to feature parity with the iPod Classic and Nano, so I’m glad to see it, assuming it’s true (which I do).

Spore
figure 1: Spore, an example of a 2nd party game that could come to the iPhone

There’s no release date listed, so there’s no way to tell when it will be available. Safe guesses include after Leopard (more on that later this morning) and in January for Macworld 2008. Here’s the expected process of it all:

  1. a partner of Apple thinks of an idea for an app. EA, for example, wants to write Spore.
  2. EA submits it to Apple in a fancy proposal
  3. Apple says “Okay, good idea” and gives EA permission and tools necessary to write Spore.
  4. EA writes Spore
  5. Apple digitally signs Spore and sells it on iTunes so it can’t be pirated
  6. I buy Spore from iTunes or the iTunes Wi-Fi store and never leave the house again

In a nutshell, it’s more or less the same process that was used for earlier versions of iPods, except most of those games were done by Apple in-house. I gotta tell you, I’m sometimes half surprised that Apple doesn’t sell their own programs through iTunes, let alone 2nd party games and apps for the new iPod Touch and iPhone. I suppose that building that infrastructure takes more than 3 months, though; I’ll just have to be patient for it.