App Languages: why iOS and Android, rather than FLEX or HTML5?


Choosing a native tongue

When Julintani began coding our first proof of concept, the first question we had to answer was, What languages should we write the apps in? (Another question that came early was, Why does an educational institution need a student or alumni app at all? This is answered for here.)

At the time, there were three choices: Adobe FLEX, HTML5, and “going native.” Our position was and remains this:

Ultimately, Julintani is seeking to deliver to you and your students the smoothest, most robust experience possible. Institutions of higher learning function on the merit of their reputations, and we feel that, above all, our app solutions need to preserve and strengthen those reputations… and not create unnecessary risk.

Consequently the discussion about FLEX was rather short lived. It didn’t have the features we wanted, so we got rid of that right off the bat.

The Superficial Attraction of HTML5

HTML5 was a deceptively appealing choice, as it offered cross platform interoperability, a larger base of programmers who could program in it, and resolved many fragmentation problems that Android had.

On surveying the situation, however, we found that most experienced development companies today do not use HTML5 for their profession grade apps due to egregious performance issues. Indeed, we polled some general app development companies who simply refuse to build HTML5 apps, regardless of the client.

Both LinkedIn and Facebook tried to use HTML5 for mobile platforms, but even they, with their hordes of accomplished programmers (and we say ‘hordes’ with the greatest of affection and respect), couldn’t build a satisfactory app. Ultimately both companies’ apps had low ratings, were notoriously slow, jittery, and crashed often. This difficulty is something other companies clearly struggle with: you may find the comments on their apps are to the effect that the app keeps crashing when they try to log in, and many of the reference customers their websites have pulled the app from the store.

For more information on HTML5 and some big companies’ shifts away from it, see the following links:  http://www.infoq.com/news/ 2012/09/Facebook-HTML5-Native

Going Native

As a result of the HTML5 concern, and after talking to many in the industry, we decided to “go native,” or write the apps for the specific platforms they would run on.
This decision brought its own set of challenges, but allows us to provide you a superior mobile application. One of those challenges, which comes up occasionally with savvy customers, is called “Android fragmentation.” Let’s face it, Google is monstrous large, and they are able to release new versions faster than you can memorize the name of the last one. Lucky for us, there is an excellent aftermarket back-porting library, which, along with Android’s native backwards compatibility libraries, allow us to be compatible with phones going back to Android 2.1.
On the upside, ‘native’ apps just feel right on their platforms in the hands of your students — when professionally written, they are fast, operate intuitively, and are dependable.