PDA

View Full Version : Google "App Inventor"; if you haven't tried it, you really ought to!



youbuntu
April 4th, 2011, 09:41 PM
I have just been playing with Google's amazing "App Inventor" - the online IDE for the Android mobile OS. I often struggle to code apps using Eclipse/Xcode etc, but within the last 24 hours, using *only* "App Inventor", I have made these:

1/ An app which makes a cat meow when you press a button.

2/ An app which makes a noise when you shake the handset.

3/ An app which scans a barcode, and displays the decoded string in plain text.

4/ An app which listens to your voice, and then displays what you said (hopefully :lol:) in plain text on the screen and the TTS engine reads it back to you.

App Inventor is merely blocks of logic, that look like jigsaw pieces, that you snap together in a Java applet, and a web page upon which you drag your UI and hidden elements.

If you think you can't create apps, think AGAIN!

Preview video: http://www.youtube.com/watch?v=8ADwPLSFeY8

Now, go create something!

http://appinventor.googlelabs.com

(Google/Gmail account needed)

I wish you all the best - just want to encourage anyone who has a good idea, but is confused by lines & lines of code.

simeon87
April 4th, 2011, 09:48 PM
Those examples are rather limited though, they are no more than if-else statements and API calls. I don't think we'll be out of work anytime soon with this app creator :)

youbuntu
April 4th, 2011, 09:53 PM
Those examples are rather limited though, they are no more than if-else statements and API calls. I don't think we'll be out of work anytime soon with this app creator :)

They're hardly limited, they enable people to access extremely powerful APIs, with no coding experience AT ALL! I could never write a barcode scanning app in ten mins, if at all. I am not saying it is a replacement for Java or the SDK. My point is that this DOES enable people, and exposes Android OS to a far wider creative audience, which can only be a positive thing for the platform.

It's not ALL about making money - some people just want to learn, but lines of code confuse and frustrate them sometimes (me!). They may be limited, but you cannot deny... they do work!

I'm sure I am going to have many "proper coders" sneering down their noses at me for having created this thread. Never mind eh :)

PS: "Lego" may be basic, and you would never build a house from it... but it gets you started, right? ;)

unknownPoster
April 4th, 2011, 09:59 PM
It's not ALL about making money - some people just want to learn, but lines of code confuse and frustrate them sometimes (me!).


Then what have they/you learned from this?

There's no learning involved if a tool does all the work automagically for you.

youbuntu
April 4th, 2011, 10:02 PM
Then what have they/you learned from this?

There's no learning involved if a tool does all the work automagically for you.

Learn logic, and structures of logic. Yes?

Some people won't even want or need to learn, just rapid prototype an app and sell it. A builder can build you a house, so you can sell it and make money; you don't need to know how he does it, as long as it is done, and you have a house which is functional and which you can sell.

I can build a wall from bricks, and then I have a wall. I don't need to know anything about the clay which was used in the bricks or how to fire them, so long as the wall stands, right?

cgroza
April 5th, 2011, 12:12 AM
Ohh, that thing allows for non-programmers play a little. It is next to useless for a above ridiculous to large sized projects.

youbuntu
April 5th, 2011, 12:49 AM
Ohh, that thing allows for non-programmers play a little. It is next to useless for a above ridiculous to large sized projects.

If you don't like it, fair enough. Well who has said it was meant for larger projects? We are not ALL expert programmers (btw, an expert would know that the thing that gets the job done with the least effort and hassle, is best ;)) and if it gets a job done, all is well. We're not all perfectionists

There will always be a favorite way of doing things, and people get stuck in their ways. There is no "wrong" or "right" here - if it works to solve a problem and knock up a functional app, then everyone's happy. How could the average user tell the difference?

:)

PS: Maybe you should abandon Java & Eclipse/<Insert IDE here>, and code your apps in assembley, seeing as that would be the "proper" way to do it, coming from a purists perspective... right?

cgroza
April 5th, 2011, 01:22 AM
If you don't like it, fair enough. Well who has said it was meant for larger projects? We are not ALL expert programmers (btw, an expert would know that the thing that gets the job done with the least effort and hassle, is best ;)) and if it gets a job done, all is well. We're not all perfectionists

There will always be a favorite way of doing things, and people get stuck in their ways. There is no "wrong" or "right" here - if it works to solve a problem and knock up a functional app, then everyone's happy. How could the average user tell the difference?

:)

PS: Maybe you should abandon Java & Eclipse/<Insert IDE here>, and code your apps in assembley, seeing as that would be the "proper" way to do it, coming from a purists perspective... right?

OK, I do not like it. But that does not mean I want to do things in assembly! It simply does not offer the flexibility a real world useful thing requires. So, it can make a cat meawn, and set some button events, but can it iterate over complex arrays and compute them with a complex algorithm which are involved it that "functional" app you mentioned before?

unknownPoster
April 5th, 2011, 03:30 AM
Show me one decent app made with this thing that isn't trivial or childish. Also, this won't take off.

If people create an App but an unforeseen bug pops up, exactly how are they going to support it or fix it if they have no clue how their app actually works.

This is a bad idea on so many levels.

crush304
April 5th, 2011, 05:05 AM
lot of cranky in here

Chimes
April 5th, 2011, 09:04 AM
Well, there wouldn't be any cranky in here if the Original Poster didn't insist on the Total Awesomeness(tm) of this cool new tool he's discovered, and how this is such an improvement on all those old boring things serious coders do. Part of me wonders whether he is a troll, but his enthusiastic FOSS sig dispels that.

Look glossywhite, what we have here is access to a handy closed-source, internet-access-only library that comes with an IDE. What this shows is that APIs and IDEs allow people to take solutions other people have made to high level tasks and adapt them to their own purposes easily. And that's a good thing.

It also makes for a very fun, and hands-off introduction to programming. That's not bad; like many other "easy programming" tools, it will bring more people who might otherwise think of CS as a scary, spooky thing into the field. I remember my first programs involved just plucking around with a very limited understanding of perl for years until I actually got serious about learning more than how to print out text or make a bunch of color pixels dance on the screen.

The point is, if this is a good way for you to have fun and make neat little apps for yourself, good on you. And if it, like thousands of tools before it have, helps spread an interest in people for understanding and developing for the tools they use, great. And if some of those apps prove to be very useful for thousands of users, well I don't think that would bother anyone here.

But to be fair to the other people on this thread, let's not portray using a very closed-off proprietary IDE and library as a bridge in itself to serious learning about programming and how it works. It can be a first step, but that's all.

To use a wall metaphor like you did. Lets say this tool only allows you to make brick walls and allows you to choose the height and width and color. But what if you're making a fence and brick isn't meeting that return on investment that steel would? Or what if you have a tiered foundation or the walls need to be earthquake-safe to a certain amount, or you want a certain brick-layering pattern, or for now you're more for doing interior work and really just looking to attach wooden paneling to the studs of the house.

As Simeon said, this app is limited. Outside of CS, it is not often that one is taught to think of a tool that can do many things and appear many different ways as limited. But it really is. Think of it as the difference between 1. reading the same choose-your-own adventure book over and over and being able to pick different endings, and 2. sitting down with a word processor and writing any book you want.

youbuntu
April 5th, 2011, 01:47 PM
Thank you for a well worded and intelligent reply :). Yes, it is indeed limited, but I never thought it was an alternative to raw source code. I'm just excited that I'm now empowered, and enthused enough that I can transpose the patterns herein to "proper" code in Eclipse, once I'm proficient enough.

One thing that is a bit daft is that you cannot access the source that this thing generates... why not?

Also a bit strange is that you can't upload any App Inventor apps to the market :?

PaulM1985
April 5th, 2011, 01:53 PM
If you could upload the apps to the market I would imagine that it would quickly get flooded and the market could potentially contain more quantity than quality for Google's liking.

Paul

youbuntu
April 5th, 2011, 02:10 PM
If you could upload the apps to the market I would imagine that it would quickly get flooded and the market could potentially contain more quantity than quality for Google's liking.

Paul

Isn't it already flooded with crap? It was last time I looked. Besides, what is the point in App Inventor, if you can't make stuff to sell?

I think Google are "working on the problem" :lol:

sydbat
April 5th, 2011, 02:53 PM
Isn't it already flooded with crap? It was last time I looked. Besides, what is the point in App Inventor, if you can't make stuff to sell?

I think Google are "working on the problem" :lol:You do realize it's a toy, right? It is not designed to make viable, real world apps.

youbuntu
April 5th, 2011, 03:40 PM
You do realize it's a toy, right? It is not designed to make viable, real world apps.

I'd argue it is a little more than a "toy" :?

s.fox
April 5th, 2011, 03:45 PM
Thread closed, at request of original poster.