iPhone SDK: good, bad, or evil?
Posted by lori, Mon Mar 31 22:10:00 UTC 2008
Having recently acquired an iPhone (yes, yes, hacked to work in Canada), I've been drawn to all these iPhone SDK articles. I mean, it's a realy cool device, so who wouldn't want to develop apps for it?
But different developers have really different ideas about it. Here are a few that I've read:
The iPhone is Now THE Platform for the Future of Mobile Computing
Lest you think me an Apple "fan boy", for the record I don't yet own a Mac. However, after watching the video of how the iPhone SDK works and since that SDK only plays on Macs, I'm going to drop a thousand on a Mac Book. It's well worth the investment just to play in the iPhone world.Background Processing is the Key to Mobile InnovationThe apparent quality of the SDK is so superior to anything out there in the ME world that I'll easily recoup the investment in development time alone and that includes learning from scratch Cocoa and Objective C (not that big a challenge for a Java jock.) Yes. I'd like to be able to code in Java to save myself a bit of learning curve but when you consider how much time is spent in UI coding vs the rest of the app, my gut tells me that being able to leverage all of the built in iPhone widgets and built in APIs (which is unlikely in Java) will more than make up for the little bit of Cocoa that I'll have to learn to do the things that are the unique value add of my code.
If you haven't watched the Apple iPhone SDK tutorials, give them a look and then compare them to what you know in the J2ME space. If you are like me, you'll want the full package and not some "slap a JVM into the iPhone so we can do SWT apps" solution.
Prohibiting background processing is not just a question of one feature being left off a long list of otherwise very well executed features. The issue of background processing is *the* issue for a mobile device because it is key to two things:Craig Hockenberry on iPhone SDK and backgroundingThese two things are the key to most new real innovations in the mobile space. To be clear, by innovation, I mean creating functionalities that have not been possible before. I do not believe that Apple’s beautiful new iPhone UIs or visual metaphor’s allows for the creation of truly new application categories. Apple’s tools are great, but they just make apps that were already possible, easier to build and easier to use. But as a developer, I want to create things that have been bottled up in my head but without the right platform, were fundamentally impossible to do.
- telling the world about your status in some ongoing way
- receiving notification of important events
Craig Hockenberry is the man, the myth, and the legend behind the absolute best Twitter application on the Mac (he works for the Iconfactory). We would all love to see Twitterrific on the iPhone, but Craig offers up a "healthy dose of reality" regarding the iPhone SDK and backgrounding services (applications that run in the background even though the phone is running a different foreground app).In a recent blog post, Craig attempts to explain why Apple will not be giving developers access to backgrounding services on the iPhone. He points out that in a mockup design of "Mobile Twitterrific," based on the jailbreak/community toolchain, refreshing the XML data from Twitter every 5 minutes led to a dead iPhone battery in only 4 hours.
"The heart of the problem [is] the radios. Both the EDGE and Wi-Fi transceivers have significant power requirements," he says. "Whenever that hardware is on, your battery life is going to suck."
He also reiterated what Apple said about the "Core Location" feature that Apple provided in the SDK: use it only on an "as-needed" basis. Craig said that the issue of backgrounding services may get addressed later on, but right now Apple is preventing iPhone developers from "shooting themselves in the foot." He said that it will take months before the desktop developers have gotten the mindset of an iPhone developer, and that thinking like a desktop developer will lead to bad designs.
For some reason, all of this reminded me of a panel I attended, at a science fiction convention in Edmonton, some time ago. The title of the panel was "Collecting... Tool of Satan, or just a really, really, bad idea?" I think the people who are the most bent out of shape in iPhone land, are the collectors. They want their cool new toy, and they want it to be perfect, and it has to be NOW. The platform will evolve, and some day they will be able to do every cool thing that they can think of. But for now, let's all be calm and realize that the iPhone and iPhone SDK are not evil. The collection is just... incomplete.