It's personal, it knows who you are and where you are.
-- John Doerr, about the iPhone.

Introduction

I just finished watching Apple announcing the iPhone SDK. If you have not watched it yet, I recommend it if you have about an hour and 20 minutes to spare. If not, you could just skim through this article instead for my impressions.

Basically, the thing that should have been out with the device from the get go is finally here. Or almost here. A couple of days late (they said it would be out in February) and really only announcing it since you can't put anything out there yet until when the next firmware upgrade of the iPhone comes out sometimes in July. So apart from making me slightly grumpy, what does this mean? Well, really at this point you should at least watch the demos of the games, about 40 minutes into the presentation they show some really impressive games considering it's on a handheld. I did not know up until know that there was a hardware accelerated OpenGL ES implementation on the iPhone (although how much hardware acceleration there is noone mentioned). That coupled with an OpenAL implementation should prove useful if you want to prototype on a PC and then move over to the iPhone. But coupled with the ability to make full 3D applications games and the full 3D accelerometer, you can make games that actually competes with the Wii in terms of usability and accessibility. Touching the screen, tilting the phone itself, those are very intuitive ways to communicate with the game. The most probably limited graphics should not be in the way, we all saw what the two gamecubes duct taped together could do in Super Mario Galaxy -- it was beautiful, even though it wasn't HD. The iPhone screen is pretty high res though so there is definitely some potential there.

Think what games like Loco Roco could have done on the iPhone with the tilt sensor! Actually controlling it with the tilting would have been great. Apart from looking like an idiot playing it, I would have loved that game.

The SDK

There is a pretty technical presentation of the SDK and it's API, I can't imagine what it was like for any non programmers in the audience (although they had to sit through the enterprise infrastructure part of the talk, so there). While I've always felt that XCode was a little bit, well how to put it -- not Visual Studio -- I guess you could work with it in a pinch. The one thing that wasn't told was weather or not we could link in regular C/C++ code into the iphone applications? I guess I just have to dig through the massive amount of documentation they have put up on their developer site.

The one thing that impressed was the fact that they had a real slick integration in XCode with both the simulator and the real device. Starting up a debugging session was easy. On top of that they had a what looked like a very serviceable profiler built in from the very start! It's very much tailored making games.

Demos

About 40 minutes into the presentation there was a small demo of a game the Apple engineers had hacked together in two days. It looked really cool, using the accelerometer to steer a spaceship and the touch screen to fire at enemies. Looking at the demo I thought that wow, they can actually do real games on that little thing! So far we've only seen little chess games or other silly 2D stuff done in the WebApps Apple has been silly enough to push, but this was a whole new ball of wax.

The one thing that Apple had done was to invite several engineers from different companies to make small demos during the course of two weeks. Apart from the boring non gaming related programs, programmers from both Sega and EA were there and showed Super Monkey Ball and Spore on the iPhone. Which actually looked really cool. Ok, the Spore game looked like a total ripp-off the fl0w game (which is out on the PSP now as well, nice little competition there). The Super Monkey Ball game looked surprisingly good. I can not wait to get my hands on that one. It also got me thinking, there is a game that screams to be remade on the iphone with it's accelerometer and it's the old game Rock'n Roll. Rolling around with a ball like that would be ideal for the iPhone and the fact that the game used to incorporate catchy music doesn't make things worse!

Video1: The old game Rock'n Roll on the C64. Catchy music!

There was a demo of an AIM chat application. In itself, not so different, they showed how they had integrated the camera with the app so that your picture could be taken on the device itself. That got me thinking, the fact that you have a internet capable device with a camera. OMG! A simple little application, connecting to some fancy service on the we could allow you to just snap pictures and publish them at will. If we could access the microphone as well, you could have an infinite storage recorder right at you fingertips recording memos, or live blogging with pictures directly (how about the voice to text converter as well?). The future really is here, or at least no more into the future than some fancy programming could take us!

Concerns

One of the things show at the enterprise section of the talk was the ability to "remote wipe" a phone. Basically, if a user had been out on a business trip and got hammered lost his phone due to an accident, the IT personnel could clear out all the information on the phone remotely. That thing was listed as a feature, but it kind of gave me the willies. It will only be a matter of time until somebody writes a virus for the iPhone that brings the whole network down. A little taste of what to come so to speak, John Doerr came up on stage a little bit later and spoke about the iFund, but he also described the iPhone as something like a revolution more than the personal computer:

It's personal, it knows who you are and where you are.

Well, that just felt a little bit too much like 1984 to me for comfort. Imagine what this can do with a Trojan on your iPhone that first sends all your information somewhere and then wipes your phone with the remote wipe functionality. Or it just grabs all your email contacts and sends them to some spam king. Are we going to see evil firewall popups on the iPhone as well? I don't know about you, but I'm going to start syncing my iPhone much more frequently from now on...

These are one of the things that Apple is trying to address I guess by requiring all software to go through them, the only way to deliver new applications to your iPhone is through their new AppStore. I guess there is all signing and promising your firstborn before being allowed to put an application onto that service.

Publishing applications

So the AppStore is basically Apple's portal for delivering new applications to users. It sounds very much like what the XNA stuff was like for the Xbox360 in the beginning. You have to pay a $99 fee to be able to submit applications for vetting through the AppStore and then there is actually a very good split of revenue between the developer and Apple. The developer gets 70%! Wow, Apple really want people on this thing it seems. Jobs quotes the word revenue and not profits which, hopefully, actually means the money coming in. So if you sell you app for $10 you actually get $7??? That sounds too good to be true, I have to see if there is any hidden, very small printed letters somewhere...

One thing that Steve Jobs said about the AppStore was No charge for free apps. Wow imagine that, free actually means free! Well, I hope there is no hidden agenda. They are really playing it as they're protecting you and screening what kind of applications can go onto the device.

The future

So dreaming about this is pretty sweet. If you're not excited yet, let me paint you a picture or two. You're at the airport and just got notified that your flight is half an hour late. You whip up your iPhone and download a copy of Wipeout and spend the next thirty minutes widely gesturing around beating the online highscore. Or say for example, the game AudioSurf. Imagine that thing with tilt sensor input and then just scanning through your music library on the iPhone. A match made in heaven, actually when does that thing come out on the iPhone?

Video2: The game AudioSurf in action.

In closing

The one thing that worries me a little bit is going to be battery time. I imagine that running your phone while maxing out all the available resources is going to suck all the power out of that little bad boy. I guess that perhaps later hardware revisions will address that thing, but at $400 a pop that might be a real problem. About the price, it's actually going to be somewhat of a problem. The kind of games you can foist off depend entirely on the demographic and the price point of the iPhone certainly excludes a lot of gamers. At about $170 the PSP is far cheaper and the Nintendo DS even more so. There you can truly buy them for your kids. Yeah, I know there is the iPod Touch, but that this is in my mind not nearly as interesting since it doesn't have the internet connection (except through the not constant WiFi) but it is indeed "only" $299. Which is still more than a Wii, so given a choice which one do you any kid will choose?

As part of the John Doerr part of the presentation Steve Jobs was called out as "[the] supreme commander of the rebels". And then there is a applause for the "world's greatest entrepreneur, Steve Jobs"... I can only say that there is some truth in that. Although you should probably hop over to the folklore.org and read some about Steve Jobs' reality distortion field.

Apple has put me in a difficult position, now I need to get a Mac to do iPhone development. But I really don't want to be burned again with the MacBook Air as I did with the iPhone itself (yes, I got suckered by the $600 version)...




Resources