Monday, October 3, 2016

Why Adobe AIR?

Adobe AIR is a platform for developing desktop and mobile apps. It supports Windows, OSX, Android and iOS.

There are very similar products, such as PhoneGap, Xamarin, Unity, React Native, etc.

Why I choose AIR over those? Here's a list:


  • It's free and it doesn't asks you for a share of your profits (they tried to do that but it didn't worked out).
  • You can deploy to iOS without a Mac.
  • It's fast and performs well enough compared to pure native apps.
  • It uses a solid programming language.

Some people just want to make apps as a hobby but they don't have the monetary resources to invest on expensive software and hardware.

AIR allows you to create apps with virtually no cost. Just download the AIR SDK, a trial of Flash Builder / IntelliJ IDEA and you are set.

What it's interesting is the possibility to deploy to iOS without a Mac. Most other middleware platforms require that you have installed Xcode in your Mac to be able to compile. Some offer compilation on the cloud to get around this but it's a hassle to not have total control of your development environment.

ActionScript 3.0 is the language used for AIR, it is based on Java and JavaScript which are the two most popular languages at the moment.

It is a fact that no one likes to code in JavaScript, you can see it for yourself with the countless of libraries, transpilers and frameworks. That's why I avoid that mess of an ecosystem.

ActionScript 3.0 is starting to get a bit stale for these modern times but it still does the job just fine.

AIR has also its flaws, I will list the ones that annoy me the most:

  • Adobe has certainly limited the resources they allocate to the product. It is understandable since they don't really profit much of it. I wouldn't mind paying a monthly license for personal support or they had a marketplace where they can get a cut of the sales.
  • Continuing the previous one, fixes and enhancements take a bit longer to resolve since they are understaffed.
  • Lack of exposure, Adobe is not promoting developer technologies. You can see the trend that Adobe is moving to its roots as a design/creative company.

Some people may say that they don't like that extra functionality is only available on external plugins which are mostly paid.

I agree at some point that some features should be included in the runtime by default but I also like the idea that the community can extend the runtime and make an economy based on it.

Regardless of that I feel very comfortable developing business applications with the AIR runtime in 2016.

Performance is very good, I really like the Starling and FeathersUI approach of using the GPU to render everything. You quickly get addicted to run apps at 60 fps.

In conclusion,  I wish the AIR runtime would be more popular and people to not dismiss it just because its based on Flash. In the meantime I will enjoy this ride. 




1 comment:

  1. Hi. Thanks for supporting the community by your works. I learn a lot from your github repo. Keep up the good work!

    ReplyDelete