Shiny new tools

One to watch: RoboVM, cracking the Java iOS development conundrum

Lucy Carey
robovm

JAXenter meets Niklas Therning, founder of RoboVM, an open source project which allows Java developers to easily port their Android apps to iOS.

In the early days of iOS development, there was little choice
but to master Objective-C if you really wanted to take control of
your app development. There’s now a growing number of startups
working on solutions for simplifying the iOS development process
for Java coders, although a definitive Java-based platform for iOS
app development remains somewhat of a ‘holy grail’. We spoke to
Niklas Therning, who’s giving it his best shot.

Therning is the founder of RoboVM, a tool for
the kit that you can use to develop iOS apps using Java or another
JVM language. He points out that, “It’s not an interpreter or
anything, but you get a binary that’s running on the CPU directly,
so no bi-coder or anything on the device”. It also comes with
tooling for simplifying use, such as nifty Eclipse plug-ins and the
like.

Recognising that retaining that feeling of
control when working with a layering tool is essential for
converting developers to your software, Therning states that his
ambition for RoboVM is that “you should be able to use anything
that you could have used if you’d used another language – that’s
the end goal”. By allowing users to interface with the hardware on
the iPhone or iPad, he hopes that, at least in future, this
objective can be achieved with RoboVM. Although “not quite there
yet” – it’s still in alpha, after all – he notes that you can do a
lot already.

RoboVM began as a concept around 2010. Working
at the company he co-founded, Trillian DB, Therning “had this idea
– we were doing mobile stuff, you know, other things for other
things that we do in Trillian – that’s the company – and I just
started to think, why can’t I do this in Java? I mean, Android is
Java, so there is a lot of opportunity here for sharing code
between Android and iOS”. RoboVM started as a side project, but as
it gathered momentum, Therning shifted to working on it full
time.

The first release of RoboVM went live this
January, and Therning says interest in the project has started to
spike, while feedback continues to trickle in. Not everyone is a
fan of language layers though, with one developer we asked about
RoboVM commenting that, “No serious app developer uses one of these
layers”.

With this sort of sentiment prevelant among
certain members of the app maker community, we had to ask Therning
why he felt compelled to create something for Java develpers in the
first place. He responded that, “Android is huge now and that’s
where those people are using Java, and you don’t have the choice to
use anything else on Android, and I would imagine that the target
group for this is the Android developers. It used to be that you
started doing your iOS app, and when that was finished you moved on
to Android. Worldwide phone markets are about 90% Android, and
people are starting to develop for Android first, and then try to
move that over to iOS “. However, through RoboVM, people “don’t
have to put that much effort into doing the port” making it a time
efficient and theoretically cost-effective solution.

Although the first RoboVM app has been accepted
onto the Apple store – on the first attempt, as Therning proudly
notes – it’s very much still in the growing stages. The biggest
interest has come from game developers, who are the fastest growing
segment of the app industry. Additionally, due to the fact that it
doesn’t yet have options for iOS, communities around JavaFX are
also following RoboVM’s progress with interest.

With their inaugral app succesfully ensconsed within the shiny
halls of the Apple store, next on the RoboVM to do list is to
finish off the Cocoa Touch APIs binding (the stuff used to
interface with the native layer), which Therning estimates will be
finished by the end of this year, followed by debugging work in the
following year.

Therning is philosophical about his competitiors, noting that
whilst there are similar programs to his, they often set out to
appeal to much wider audiences – whereas his sights are firmly
fixed on Android developers looking to branch into iOS.

Considering the growing attention on RoboVM, it will be
interesting to chart their progress over the next twelve months.
Although there will continue to be a healthy level of sceptisism
towards language layers, for the Java community at least, there’s
plenty of potentional for maximising app development efficiency
with the right vehicle in the future – and who knows, that just
might be RoboVM.

Author
Comments
comments powered by Disqus