MIT App Inventor in Education
MIT App Inventor (http://appinventor.mit.edu/) is a cloud-based programming environment that allows you to create apps in a web browser that can be tested on an Android emulator and then uploaded to an Android device.
App Inventor’s app building environment uses puzzle-like shapes, they call blocks, that fit together to create computer code in a way that the programmer can see by the shapes if the commands go together or do not fit.
Here is the code for my first app:
I created a button on the Designer screen of the app with Robert DeNiro holding his finger out. Here it a screenshot of my app:
When the button is pushed, you can see from the enclosing block that a sound will be created as well as a vibration. The sound is a fart and the vibration is a second long.
Also, the next block will create the fart sound if the phone is shaken. I tried to make the fart continue in a loop until the phone was shook but was not successful. I do not have an Android phone so I am unable to test the shake so I just kept it simple for this first app.
If you would like to test the app, here is a link to it:
You have to enable app downloads from other than just the Android Store in order for it to work. I also have a QR code if you have a reader.
App Inventor is a great way to ease students into programming where traditional text-based programming is just too abstract and to easy to get wrong with a simple semi-colon missing or a bracket out of place. App Inventor has some very advanced functions, such as accessing the accelerometer and much more, where the learner does not have to know the libraries, include codes, and that tedium in order to use the functions in a program. This allows some very advanced functions to be used at a very early stage in learning. The barriers to just creating a sprite in a language like C++ are hard to overcome in an introductory computer science course but App Inventor jumps right over these complications and allows students to build what they envision right after a couple hours of learning.