Back in May I was approached by Jonny Evans, a reporter for Cnet, who was interested in questioning us on our port of Doom to the original jailbroken iPhones. Stephen White (of iPhoneNES fame, among other things) and I were maintaining the open-source project on Googlecode, with SW being the original porter of Doom, back when there was no control system implemented and it was only a proof of concept. He did the meat of the 'porting', whereas I took over when he got bored. Of course, nearly all of SW's work needed to be rewritten and redesigned for 2.0, and I moved to the latest iDoom code (1.3 as of this writing) which has given our Doom port a solid foundation for the future. The following were our responses to Jonny's questions:
Q: How has the iPhone inspired developers?
ST-S: The iPhone runs OS X. It's a full UNIX system in your pocket, with brilliant Objective-C frameworks that make coding beautiful AND powerful applications a dawdle. It takes a lot of the same APIs that developers know and love on Mac OS X and allows them to build applications for a mobile device with minimal re-learning. Not only that but it has the multi-touch technology only a year ago we were watching "futuristic" YouTube videos about (e.g. Jeff Han's demos). A lot of Windows developers I've talked to have either learnt Objective-C and Cocoa Touch, or expressed an interest in doing so, just to see what they can do on iPhone, which also means that those same people are now able to program for Mac OS X without too much effort.
SW: It's interesting to me for a couple of reasons. The first is I am forced to throw out a lot of what I already know as it's not applicable on the platform. Where I might've used a menu before, I can't. Where I might've made a window that necessitated a 30" LCD to display everything, I can't. In a lot of respects, it's going back to square one in thinking of how I would design an application -- and that is a nice mental challenge that I appreciate.
However despite having to throw out a lot of my knowledge, the iPhone provides so much ease for the developers in terms of it's APIs it's a pleasure to work with. And then there is the input methods. Thinking of how multi touch can be best used, or a way to utilize the accelerometers... It provides great challenges, and great rewards.
Q: Tell us about the port - why did you decide to do it?
ST-S: Looking at the hardware specs, I knew iPhone would be able to play a simple game like Doom no problem as it was open-source and already ran on the click-wheel iPod running Linux. I knew a very talented developer called SWhite with whom I work on Mac projects, and as he'd just bought himself an iPhone and was working with the unofficial tool-chain I jokingly told him he had one week to port Doom to iPhone, and all it had to do was run; he didn't have to implement controls.
One week later, he proudly linked me to his Doom port home page - http://iphonedoom.googlecode.com/.
It remained difficult to work upon due to problems with the unofficial compiler toolchain I had set up (causing non-working versions of the game) but with the release of Apple's SDK it was trivial to get Doom running on iPhone 2.0.
Q: How many people have downloaded the port so far?
ST-S: The first build of Doom hit near 15,000 downloads on the project site alone, even without a way to control the game. Once controller input had been included (thanks to a contributer on the project wiki) that version received over 25,000 downloads. For a project so unfinished and barely playable, that's an awful lot of people testing it out. It's quite possible that there are many more downloads than reported, but for now we only concentrate on Google's project stats.
Q: What do you see as the future for iPhone development?
ST-S: I hope to see Apple opening their SDK a little more than it is currently, allowing a little more access to parts of the system necessary to create specialized applications for enterprises and such. Our current port of Doom would currently be rejected by Apple if we were to submit it to the iTunes App Store because we use certain APIs for accelerated drawing that are marked as "private". Before submission, we will have to rewrite portions of it to only use documented APIs; most probably moving to OpenGL/ES for the video output.
SW: I'd imagine a number of people will transition over to the SDK, either to make it easier to reach the masses, or to try and cash in (so to speak, don't mean that in a "you sold out" manner, but just the ability to easily collect money).
Q: With the iPhone SDK, can you foresee Jailbroken phones and apps losing importance?
ST-S: Yes, certainly, but it will take some time, as Apple only allow access to a handful of the APIs on the iPhone to an official developer through the SDK. Some applications need more direct access to the underlying iPhone OS, for example command-line access to the system (always useful to those who know a UNIX shell), or AppleShare/Samba servers for copying files to/from iPhone over the network from PC or Mac. Until iPhone ships unlocked there will still be people needing to Jailbreak the phone to save themselves from some of the miserable tariffs offered by the official operators.
SW: I'd still see jailbroken phones being around, obviously... people are going to want to sim unlock, or run apps that Apple won't distribute through the app store, etc.
Q: How popular do you think iPhone will become?
ST-S: iPhone marries Apple's popular image and brand excellence with the most powerful and fun to use operating system on mobile devices. The possibility of having Apple's latest iPod also do all your phone and internet in one place is going to be very attractive. Everyone who plays with one wants one, and that alone puts it far ahead of any of the Windows Mobile devices or Nokia smartphones on the market. Here in Ireland, official sales have been slow, merely because anyone who wanted an iPhone had already procured one from the U.S. before the Irish launch. I'm afraid Apple might only see the numbers and assume that the Irish aren't interested - however that is far from the case. The only problem thus far are the tariffs, once we have a fully unlocked iPhone available sales will skyrocket.
SW: It's hard for me to say. I live minutes from Apple, I see iPhones all the time =)