Veteran tech watcher David Pogue has taken a look at Google's new building-block based development environment for Android, and he's not impressed.
The Android App Inventor follows a long line of breakthrough environments that promise to simplify application development to a series of mouse clicks. Unfortunately it seems that the App Inventor is no better than its predecessors at allowing those without any programming skills to write programs, and entirely failed to turn David Pogue into a mobile app developer.
"It’s extremely unlikely that a nonprogrammer could actually invent anything with App Inventor without the assistance of a teacher or an experienced friend, or hours poring through the App Inventor message boards" said Pogue in his review of the beta published by the NY Times. That was one of his more restrained assaults on App Inventor, which is a shame as it looks very pretty:
App Inventor is on closed beta at the moment: we've asked for an invitation and will give you a better look when we get a chance. The environment should be familiar to anyone who's used a "fourth generation" programming language that tries to use clicks for everything, but ultimately leaves you editing code to make things work.
In App Inventor those lumps of code are colour-coded to fit together - but ultimately deciding which block to use, and where to put it, is no more difficult than typing stuff.
We've used a fair range of such graphical tools, and only been really impressed by the Lego Mindstorms environment - which has the same genesis as App Inventor (both were born out of MIT projects). But while Mindstorms benefits from a very limited range of capabilities (turn motor on, turn motor off, listen to sensor, wait), App Inventor has to allow for dozens of different hardware platforms and thousands of capabilities.
Pogue spent a day failing entirely to create a single working application, or even complete the tutorials. He admits that many of his problems were down to the beta nature of the platform, but others can only be attributed to the complexity of programming itself - something that can't be hidden behind colour-coded blocks. ®