Smartphones

Google wants us all to be mobile app developers

Google's App Inventor for Android development tool does not require users to have any programming knowledge. Here's a brief overview of how it works.

In the past few years, the smartphone market has been turned on its head. Established platforms (Symbian, BlackBerry, and Windows Mobile) have seen their market share decline, while upstarts (iPhone and Android) have made huge gains; more specifically, Apple has grabbed almost 25% of the smartphone market in three years, and Android has captured 13% in just less than two years. In both of those cases, the secret to their success has been apps. Between iPhone and Android, there are more than 200,000 apps available for download. Users across both platforms have downloaded billions of apps.

Apps allow the platform to be extended beyond the base functionality of the device, and the creation of new apps keeps things fresh and interesting. And if you give developers a huge user base, easy-to-use tools, and a way to make money from their apps, you've got a pretty good recipe for success.

Unfortunately, if you don't create the easy-to-use tools for developers, you can kill your platform's app store before it even gets started. If you don't believe me, go ask Palm and BlackBerry.

App Inventor for Android

Last week, Google announced that it is launching a new app development tool for Android. Sure, the company has an SDK and other tools for "real developers," but its upcoming App Inventor for Android is targeted to non-developers.

Image credit: Google

Making app creation easier and accessible to more people is a good thing for the platform. Whether these apps end up in the Android Marketplace or are used as a proof of concept inside your enterprise, having more people familiar with the Android platform can only help grow overall adoption.

While those familiar with the early HTML WYSIWYG editors of the mid 90s may cringe at the thought of millions of amateur apps flooding the Android Market, I think it is better to compare App Inventor to blog software like Blogger or WordPress. It could be a powerful enabler for mobile innovation.

App Inventor is in Beta and is still not available to the public (Google says it it rolling out access to App Inventor gradually); however, we can glean quite a few details from the App Inventor website.

How it works The App Inventor site features a couple of tutorials (one for a quiz app and another for a simple game) that walk you through the process of creating an app.

Image credit: Google

In order to make app building accessible to non-programmers, App Inventor uses the concept of Blocks. Instead of writing code to enable the creation of questions and lists of multiple choice answers, you drag a group of Blocks together.

At this point, it is tough to tell just how easy App Inventor will make the creation and arranging of these Blocks. Reading the tutorials makes it sound a bit more advanced than it describes elsewhere on the site, but watching the YouTube video demo makes it look like a snap.

I am eager to try the Beta version of App Inventor once it is released to the public. Being able to quickly create working prototypes of mobile ideas without investing the time in learning all of the ins and outs of Android development will help me better communicate those requirements to our mobile development team and other business partners.

Would you ever use a lightweight, WYSIWYG app development tool? Do you think Google can make a powerful development tool that is also easy for non-programmers to user? Share your thoughts in the discussion. Get smartphones tips and news in your inbox

TechRepublic's Smartphones newsletter, delivered each Thursday, features tips on how to deploy and manage smartphones in your enterprise, product reviews, news updates, photo galleries, and more. Automatically sign up today!

13 comments
captainpj
captainpj

What a great idea, I'm always thinking why can't I do it this way. Well as soon as it is available to public I guess I'll find out. So many ideas and so few ways to get them done. Maybe this will be my solution. I just wonder when it will be here for my download.

TexasJetter
TexasJetter

While not a true ?development? tool I have used LEGO NXT-G (http://en.wikipedia.org/wiki/Lego_Mindstorms_NXT#NXT-G) graphical language in conjunction with a junior robotics team. This totally drag and drop ?block? based designer allows the person to control the various robot motors and sensors with zero programming knowledge. Once the user is done with the graphical part it is compiled for use on the robot itself. From my experience the success of these types of block based development is directly tied to the type and variety of blocks provided. If Google does not provide a certain block the user can?t do it. It would be nice if the interface could be started in the block driven interface, then completed or enhanced is a more traditional development manner?

codybwheeler
codybwheeler

Reading between the lines it looks like it could be a pretty solid and powerful tool for the every day techie that isn't too fond of coding (much like myself). The ability to be able to make my own apps might put me over the hump to buying a Droid based phone. Integrity HR

three6t
three6t

I think it be a tough time for core developers, they need to focus more on what others cannot achieve

Osiyo53
Osiyo53

"Would you ever use a lightweight, WYSIWYG app development tool?" Yep. There are several reasons that I have done so in the past. Sometimes one just needs to develop a simple, quick and dirty app. That doesn't rate a lot of one's time, and its simple enough so that the WYSIWYG development tool can adequately handle the requirements. Sometimes I use such just to play around, think, and explore a concept or idea. To prototype, if you will. Then once I've firmed up my ideas, if the simple WYSIWYG development tool can't handle all the details and refinements, I switch tools. And then there is the world of machine automation, in which I make my regular living. In it, the use of Graphical Programming or Function Block Programming tools are common and well established. Most of these tools in the machine automation world are proprietary items developed by equipment manufacturers. Some allow only drag and drop of pre-defined "graphical blocks" representing any of possibly hundreds of various functions, then one sets their properties, and then you link the flow by drawing lines between components, etc. Others allow all the above PLUS the ability to create custom function blocks using line code. Which you can then add to your library for later drag and drop where needed. When done one hits "compile" and the code hidden under the pretty pictures is compiled into a machine usable form that can then be downloaded into the memory of a dedicated microprocessor unit. Which will then control ... whatever. Most any sort of mechanical, hydraulic, electrical, etc equipment you can name. This is used all around you, all the time. For everything from controlling street stop lights, to the machines which make your breakfast cereal, the generators which provide electricity to your home, the elevators you use to get up to the floor where your office is, to the heating and cooling of large commercial buildings. The list of where and for what such is used is nearly endless. And most folks have no clue just how many items all around them have microprocessor units buried somewhere within them, out of sight and mind, running custom applications that were developed using one or another form of graphical, function block programming.

Jaqui
Jaqui

what about Nokia's cross platform dev tools? that can be used to develop for a mobile device. [ if the device makers were smart ennough to avoid that poor option Java ] http://qt.nokia.com/

contactreed
contactreed

All I can say is "finally!" Thank you to Google for accessibility. A WYSIWYG program so the general public can create Android programs is a massive step forward!

pcarmitchel
pcarmitchel

We're in development space...more on the side of creating unique online startups, but we pretty much keep the mindset "competition is our friend". If you are person or company with a culture of excellence then your creations will stand out amongst the crowd. In the end there is no way to automate innovation that comes from the ground up and developers/companies that create unique/powerful/valuable apps for making life better will not be trupped by John Doe idea guy that doesn't know his Adobe from his LAMP (wow that was cheesy :) Seriously, we have nothing but a big fat THANK YOU to Google & Apple for creating a market that is making us money. We just released the Gcamp widget for the google marketplace and we would have loved having a slick developer tool to create it...maybe they'll release one for the Google Marketplace as well.

djoubert
djoubert

...which is more than we can say for any Apple app. I am cannot write a line of code to save my life. So I see the App Inventor as a number of possible things: - a way for people like me to create an app I've been thinking of and give it to a developer who can then make it work and look great - as an educator, it gives me a chance to get students more involved in the process of creation. - as my school's tech coordinator, it gives me a chance to create an app for all of my teachers that can give them access to information and more (and not have to worry about paying some company to do it for us)

willy_uk
willy_uk

When I was about 16 I started learning Visual Basic at College (I think that's still "High School" in the American system and "Leaving Cert" in Ireland - I have no clue beyond that, sorry) and made a few basically useful things with it. I also started a computer science degree but got bored, quit and went snowboarding and mountain biking for the rest of the year. I've not coded since (and that was 10 years ago) but have often thought about starting again. So, would I use this thing? More than likely. I've just signed up for access to the Beta so will see how it goes when I get access but I can certainly see myself getting stuck into trying out some app ideas I've had. I'd be especially interested if App Inventor gives us a look at the code it generates. Way back I taught myself HTML from reading an old HTML book, looking at website source code and using a WYSIWYG site builder to try something, seeing what code it made and then hacking away at it in Notepad to see how it worked. I learned FAR more with that approach than I could have in more traditional ways so if Inventor gives that level of access I'll me happy hacking to my heart's content. If nothing else it may well be the spark to get me coding again, because making things that I'll actually have in my pocket and use on a regular basis appeals far more than coding things I'll use once in a blue moon on my PC. I look forwards to seeing how it all turns out. :D

willy_uk
willy_uk

...I used the wrong thing to make my comment and responded to a comment rather than the article. When will I LEARN??? :p