This week, Google has released the first version of Android App Inventor, a tool for visually developing applications for Android powered devices.
Being as I develop another visual software development tool (Illumination Software Creator), I’ve received a rather hefty pile of emails from people asking me my thoughts on it.
Let me be frank: I couldn’t be happier about it. I am, in a word, thrilled.
Any tool that helps to make computing fun and accessible to more people is A-OK in my book!
Along those lines: I don’t view App Inventor as a direct competitor to Illumination Software Creator in any way.
Google’s Android App Inventor is really a pretty standard development environment. It includes a nice, straight forward visual designer to lay out the look and feel of your application. And, likewise, it includes a pretty straight forward, run of the mill, programming language.
The key differentiator, from “standard” programming tools, being that you don’t actually type your code, you drag and drop pieces of your code and lock them together. (The “code editor” is based on the, very cool, Scratch — which is focused on making it easier to teach children programming and logic.)
Illumination Software Creator takes an entirely different approach — self contained “blocks’ that can be linked together without any restrictions.
In this regard using Illumination to create an application is much like playing with lego building blocks.
Whereas using Android App Inventor to create an application is much like… well… programming an application… with a mouse instead of a keyboard.
The approach of the two is almost night and day different… and both are worth while in my opinion.
Android App Inventor even has the, extremely cool, feature of being able to live debug your applications on your phone as you build them. I declare that “Super Neat-O”.
Overall, I am overjoyed. An attempt at bringing Android smartphone development to anyone who has an urge to tinker. I love it.
Another big plus, in my book, is that App Inventor is supported on Linux, Windows and MacOS X (just like Illumination Software Creator). Cross platform support is a big deal in my mind. Providing people and organizations with the freedom to choose their own platform is critical.
Which brings my to the big downside to App Inventor — It is focused on one single target platform (Android). That really is my only big complaint, and is a key piece what will, in the long run, dramatically limit App Inventor’s usefulness.
That’s really the key big difference between App Inventor (Android only) and Illumination Software Creator (Mac, Windows, Linux, Nokia Tablets, Adobe Flash/Flex Websites and, soon, Haiku-OS).
(That screenshot on the right is Illumination Software Creator… not App Inventor. That’ll give you an idea of the workflow and design differences of the two visual programming tools.)
I certainly understand Google’s interest in furthering and focusing on Android, I just find that limitation… limiting. This is the same basic limitation that, say, using X-Code to write iPhone applications creates.
What happens when you want to run your software on another platform? Can’t. Stuck. Time to re-write from scratch (or mostly from scratch). I am lazy. I don’t want to have to re-write something I’ve already written.
But, that aside, App Inventor looks great. I highly recommend it to anyone who wants to dabble in Android development.
That is, of course, until Illumination Software Creator releases official support for building Android apps. Then using App Inventor will be just plain silly.