||New Reviews| |Software Methodologies| |Popular Science| |AI/Machine Learning| |Programming| |Java| |Linux/Open Source| |XML| |Software Tools| |Other| |Web| |Tutorials| |All By Date| |All By Title| |Resources| |About||
Keywords: Android, phones, apps, visual programming
Title: App Inventor : Create Your Own Android Apps
Author: David Wolber, Hal Abelson, Ellen Spertus, Liz Looney
Verdict: An excellent introduction
There have been numerous attempts at creating visual programming environments that would enable non-programmers to put together functioning applications. Hell, some of us are old enough to remember when Visual Basic was touted as the tool to enable non-programmers to write workable applications. None of these systems has ever really delivered. There's more to creating applications than having a drag and drop forms designer, as those naive souls who bought into the initial VB hype soon discovered. Move forward to now and we have a new generation of devices running Android, and a new application designer from Google in the form of App Inventor. Aimed at the end user and not the professional developer, App Inventor claims to enable people to create powerful and good looking applications for their phones. And, to help you get started O'Reilly have published 'App Inventor: Create Your Own Android Apps'.
The book is organised into three sections, opening with a first chapter that provides the Android equivalent of 'hello world'. This is followed by the central part of the book that works through the process of designing and building twelve different apps. The final part of the book is called the 'Inventor's Manual' and looks as a series of specific topics rather than being directly focused around apps.
The first thing to say is that the book itself is really well designed. The use of colour, fonts, illustrations is excellent. I've seen books aimed at beginners that are really quite daunting, but not this one. The friendly design is matched by the text, which is clear, concise and interesting. It neatly manages to avoid the 'gee, whizz' tone that is the downfall of many books aimed at the non-professional. There's no talking down to the reader, instead there's a clear progression from chapter to chapter, introducing new ideas and functions in a natural way.
The opening chapter sets out the lay of the land, and the opening 'Hello, Purr' app is useful enough as a spring-board to convince the reader to carry on. But for most the heart of the book is going to be the central section. Here we get to walk through the process of building twelve apps, each of which uses a different subset of Android phone functions. SMS text handling, simple animation, GPS, music, database… The apps do a good job of exploiting the different features of an Android phone, and show how the App Inventor system enables you to easily interface and program these functions. In this respect the book does a great job as an extended tutorial. As a nice touch, each app is finished with suggestions to explore for improving or changing it. Think of these as fun bits of homework to do after following the text.
The final section of the book looks at more abstract topics that you are likely to need as the sophistication of your apps grows. Some of these areas are familiar developer territory: looping, conditional logic, list processing, working with databases etc. In these chapters there is frequent referring back to some of the apps created previously, which helps to put things in context for those who really are totally new to programming.
Overall this is a great book, it does exactly what it sets out to achieve. And, what's more, it might finally appear that someone has produced a visual programming system that really does let users create interesting and useful apps.