It’s the first question that all newcomers ask themselves when reaching the iPhone dev area : am I obliged to learn Objective-C or can I leverage my existing coding skills, in order to release my first “real” iPhone app before a year long timeframe ?

Although the answer was quite affirmative a year and a half ago, many alternatives to Xcode and Objective-C have come to reality and offer now a wide range of coding options depending on the developer initial skills and/or wishes to learn new languages.

In any cases, chances are low that we can avoid buying a Mac for the compilation/packaging and a Developer program ticket – but that’s a small tax compared to the potential.

In this first post, we’ll be exploring 10 options for 5 types of developers : Mac, Flash/Flex, Windows, Java and Web ones…


Mac developers : the one-way path ?

Seems like there is no alternative to the…

Apple Xcode : the Mothership

Xcode logoLanguage : Objective-C
Output : iPhone
iPad support : yes
Price : free for registered developers
Platform : Mac

Needs Xcode to compile : obviously
Target : Objective-C/Cocoa developers

As it is a full dev environment for Mac sourced developers (editor, iPhone simulator, debugger etc), others will find inside it a valuable Organizer tool which tracks iPhone devices, certificates and provisioning profiles – and signs applications. It’s the reference tool for native apps, and the place where “all problems end up”, according to old-timers. At least it’s the reference certifcates/signing tool and the mandatory path for PhoneGap projects…


Flash/Flex developers : rising choices

Emerging solutions bring up some good choices to the ActionScript guys among us :

OpenPlug Elips Studio 3 : the Flex activist

OpenPlug logoLanguage : ActionScript 3
Output : iPhone, Symbian, Windows Mobile, Android
iPad support : announced

Price : free for beta version, final price for commercial version to be defined
Platforms : Mac, Windows
Needs Xcode to compile : no
Target : Flex developers

Coming with a cross-platform solution, the French company OpenPlug has taken Adobe by surprise by offering a plugin for Flex Builder with its companion mobile-optimized Flex framework (Adobe’s one is still in the lab), Flex extensions for mobile and iPhone simulator. With possible extensions in Objective-C and IPA generation on Windows (no signing yet, though), they have raised the bar…

Ansca Corona : the Lua challenger

Anscamobile logoLanguage : Lua
Output : iPhone, Android

iPad support : yes
Price : $99
Platform : Mac
Needs Xcode to compile : yes
Target : Flash and games developers

Agressively pushing AS developers to switch to Lua, and promoting some clear advantages like OpenGL acceleration, Ansca wants game developers (Flash sourced and others) to join their battlefield. Here the IDE is the SDK and the iPhone simulator :after that, Corona relies on external code editors like Eclipse and Xcode.

Adobe Flash CS5 : their revenge has finally a hero

Language : ActionScript 3
Output : iPhone, Flash
iPad support : announced
Price : to be defined, should be somewhere between $500 and $900 according to previous versions price
Needs Xcode to compile : no
Platforms : Mac, Windows
Target : Flash developers

Adobe finally close the gap to the iPhone platform with its upcoming release scheduled to April 12. Flash apps will run on native code after having being built in the reworked editor and its iPhone simulator. Doubts remain about exact upcoming RTMP and Flash audio/video support. But no doubt to raise that it will make the flashers really happy though…


Win developers : yes they can

While most speak about Silverlight Mobile, there’s yet a space for Win guys on the iPhone platform. Here there are plain C++ frameworks like openFrameworks or AirPlaySDK, and more complete solutions :

DragonFire : the good old Windows way

Dragonfire SDK logoLanguages : C, C++
Output : iPhone
iPad support : n/a
Price : $50 in pre-release, $100 in final release
Needs Xcode to compile : no
Platform : Windows
Target : C/C++ developers

While the server-side compiling may seem weird, the IDE basics are here : SDK and iPhone simulator. It relies on Microsoft Visual C for code editing. Why not…

Novell MonoTouch : the MS trojan race horse

MonoTouch logoLanguage : C#
Output : iPhone
iPad support : yes
Price : $399 (free dev version available)
Needs Xcode to compile : yes
Platform : Mac
Target : C#/.NET developers

Quite a solid soultion here : extensive SDK and iPhone simulator, Monodevelop IDE with Xcode integration. Not all .NET APIs are exposed but it’s a big thing already. OpenGLES and Quartz are supported !


Java developers : fearing the price…

Found out two options, in any case the price is not public – so we can imagine some rude scenarios. Nevertheless the options are here…

Innaworks Alchemo : the heavy machinery

Alchemo logo

Language : Java ME
Output : iPhone, Android, Windows Mobile, Flash
iPad support : n/a
Price : n/a
Needs Xcode to compile : no
Platform : Java SE6 environment
Target : Java developers

IDE possibilities are unclear (Eclipse ?) and it uses some Apple Interface Builder via translation – waouh. What we know is that it generates Xcode projects and that the Java to Objective-C is done in SAAS mode. Being the most versatile output solution, it could be also the most expensive…

FlexyCore iSpectrum : the French outsider

Flexycore logo

Language : Java
Output : iPhone
iPad support : n/a
Price : $0 for open source apps, n/a for commercial apps
Needs Xcode to compile : yes
Platforms : Linux, Windows, Mac
Target : Java developers

Through direct Eclipse integration and nice price for open source projects, this sounds good, especially for iPhone only outputs. Testing on device seems possible without final server-side packaging.


Web developers : pain is nothing…

As iPhone pure  Javascript frameworks (jQtouch, iWebKit, MooTouch, PastryKit, iUi …) arise each month, it’s possible to handcode everything in TextMate or Notepad++ and test the webapp directly on the iPhone. If the webapp gets hybrid with PhoneGap, you’ll need an extra simulator. Many angry people wish that Aptana would set back its legendary 1.5.1 iPhone support, but waiting for these happy times, here are two other options…

Genuitec MobiOne : the light web way

Mobione logo

Languages : Javascript/HTML/CSS
Output : iPhone, Palm Pre
iPad support : n/a
Price : free
Platform : Windows
Needs Xcode to compile : yes (when PhoneGap used)
Target : Web developers

With its visual IDE and iPhone Simulator, it gives a quick way to mockup and test in real life a webapp idea. jQuery based, it allows PhoneGap support, acceleromoter and geolocation. A nice set of features, though it seems a bit rough now. To follow…

Appcelerator Titanium Mobile : the best to finish…

Titanium logoLanguage : Javascript/HTML/CSS
Output : iPhone, Android
iPad support : announced for soon, beta access for professional edition
Price : $0 for community edition, and from $1699/user/year for pro edition and up
Platforms : Mac, Windows
Needs Xcode to compile : yes
Target : Web developers

Relying on external code editor, Titanium provides both SDK, compiler and iPhone Simulator. It features a comprehensive API (SOAP, YQL, Social networks…) that make us gain precious time and it’s extendable via Objective-C plugins. Incoming BlackBerry support makes it a must have in today’s developer toolset.


Ok guys, we have some choice here, so let’s choose our right tools and go coding !!!

April 9 update : the future of these options is far from being determined

April 21 update : Adobe drops efforts in compiler development

September 9 update : Apple backpedaling on some iOS development restrictions, allows third party tools

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to LinkedIn Post to StumbleUpon

Nicolas Weil

Nicolas Weil

Digital Media Solutions Architect, France, World.

Hungry for : OTT architecture challenges, MPEG-DASH experiments, hybrid video services, scalable production/distribution platforms, video-centric innovations & Junglist vibes.

Proud member and co-founder of OVFSquad !

I'm working at Akamai, but this blog reflects strictly personal views, and isn't endorsed in any way by Akamai.

More Posts - Website - Twitter - LinkedIn