Google has unveiled an experimental tool that lets non-developers develop applications for Android phones. This Google Labs project is known as App Inventor for Android, and it's based on platforms built at the Massachusetts Institute of Technology, including Scratch, the well-known visual web app builder designed for non-programmers as young as eight years old.
The App Inventor project is led by MIT computer scientist Harold Abelson, the founding director of the Free Software Foundation, Public Knowledge, and the Creative Commons who's now on sabbatical at Google. “The goal is to enable people to become creators, not just consumers, in this mobile world,” Abelson tells The New York Times.
App Inventor is a highly visual development environment, letting non-coders piece together applications using predefined objects in much the same way they'd piece together LEGOS. "To use App Inventor, you do not need to be a developer," reads the project website. "App Inventor requires NO programming knowledge. This is because instead of writing code, you visually design the way the app looks and use blocks to specify the app's behavior.
"The App Inventor team has created blocks for just about everything you can do with an Android phone, as well as blocks for doing 'programming-like' stuff — blocks to store information, blocks for repeating actions, and blocks to perform actions under certain conditions. There are even blocks to talk to services like Twitter."
Judging from Google screenshots and the brief demo below, App Inventor works much like Scratch:
Some people — including Jeff Jarvis, author of the Mountain View-worshiping What Would Google Do? — believe this beta tool could turn the app development world upside-down. "I think Google’s App Inventor tool that enables anyone to program an Android app could be profound," Jarvis writes, betting it will have some sort of "effect on the priesthood of programming."
But Jarvis does admit he may be wrong. "I thought [Google] Buzz was a big deal, so what the hell do I know?"
Over at Salon, Dan Gillmor makes similar noises about App Inventor, dubbing it "a possible breakthrough." It would seem that this assessment is based on the fact that App Inventor is a tool unveiled by Google. "I haven't been able to try it yet, but its description suggests great potential," Gillmor says.
Gillmor doesn't want to overstate the tool's potential — except that he does. "I don't want to overstate the potential here. Google's not alone in working on such things, no doubt. But from what I can see this is going to be a seriously big deal if it works as advertised."
Gillmor will be "shocked if Apple doesn't do something equivalent for its iPhone ecosystem." But at least one fanboi doesn't see what all the fuss is all about. Ex-Mac User UK editor Ian Betteridge says App Inventor is nothing compared to HyperCard, the visual programming tool Apple released in the 80s.
"As someone who grew up on BASIC and actually did some serious projects back in the 80′s and 90′s using HyperCard, I’m massively in favour of simple, easy to use programming tools. So Google App Inventor instantly caught my attention. And then I saw it," Betteridge writes.
"The only people who could possibly think that this was 'coding for the rest of us' are people who’ve forgotten when it was like to first learn how to create programmes, and that have never seen the incredible, powerful tools that something like HyperCard had. With HyperCard, anyone could pull together something and have it working without having to write a single line of code — but if you did delve into the code, you could do amazing things in a language that was closer to English than BASIC."
Currently, you can't use App Inventor without approval from Google. And the request form — which requires a Google email address — indicates that the company is hoping to put the tool in the hands of educators at schools and universities. App Inventor has been in development for a year, according to The Times, and it's been tested mainly in schools with groups that included sixth graders, high-school girls, nursing students, and university undergraduates who are not majoring in computer science.
So, this is a Google Labs beta project. Like Scratch, it's seen as an educational tool. And it appears that, like Scratch, it's meant to build rather basic applications. "Often people begin by building games like WhackAMole or games that let you draw funny pictures on your friend's faces. You can even make use of the phone's sensors to move a ball through a maze based on tilting the phone," the project site reads.
"But app building is not limited to simple games. You can also build apps that inform and educate. You can create a quiz app to help you and your classmates study for a test. With Android's text-to-speech capabilities, you can even have the phone ask the questions aloud."
We've used Scratch, and it's a clever thing. But it's doesn't turn the average Joe into a developer. It's a wonderfully intuitive means of building exceedingly simple applications.
Scratch has been around for years, and it certainly won't "effect the priesthood of programming." The, um, priesthood will continue to build much more complex applications with much more complex tools. What Scratch may do — and perhaps App Inventor as well — is teach non-programmers to get more creative with their internet PCs and phones. A noble goal.
"When I first heard about Scratch, I hated it...I didn't like the idea of teaching kids how to program," is how MIT's Seth Raphael described the project to us last spring. "But this isn't a programming language. It's an environment where people can become creators of content for the internet. It's like crayons for the web."
So let the kids have their Android crayons. And spare us the talk of endangered priesthoods. ®