Getting+Started

Brainstorming Ideas for a possible CSILM (Computer Science Interactive Leaning Module like those at csilm.usu.edu) to cover the basics in one location to get students up to speed with MIT Appinventor:

The CSILM could consist of several activities.

a) Users must have a google account to authenticate/log in b) The system is web-based and located at appinventor.mit.edu c) Some installation may be required at explore.appinventor.mit.edu/invent d) Appinventor is made up of three components--designer, blocks editor, emulator e) The programming is event-driven rather than procedural
 * 1) The first activity:** include basic background information for Appinventor including:

It could basically be at text-based intro like the following activity for minimal spanning trees [] and would not need to be much more than the material after the first paragraph on this wiki's home page.

For example, the scenario might be to create an applet that would display a "minnie mouse" image and the year she was created (1942) if the user presses the left button, or a "goofy" image and the year he was created (1932) if the user presses the right button.
 * 2) The second activity:** describe a very basic scenario for which an android app will be created in activities 3 and 4.

Ignoring the arrangement widgets, there are four components--an image, some accompanying text and two buttons.
 * 3) The third activity:** given a very basic "designer" screen layout picture in the right-hand CSILM window, create an applet for the left CSILM window to have the students assemble the blocks (implemented emulating the Appinventor blocks editor on a very small scale.)

Then a java applet spontaneously appears that allows the student to build the following from a pallet of three different components (Button,Image, and text)



Then when the student tries it out by clicking the left and right buttons on a barely functional mock-up of the emulator, they would see one of the two following scenarios if they did things correctly:
 * [[image:emulator_left_button_basic_app.jpg caption="State after left button is pressed"]] || [[image:emulator_right_button_basic_app.jpg caption="State after right button is pressed"]] ||


 * 4) The fourth activity:** (the reverse of activity three) given a very basic "blocks editor" picture, to have the students assemble the designer components (again implemented emulating the Appinventor designer on a very small scale.) This might require a different scenario so they can't use activity three to answer activity four.

It is possible to install your own app server but we do not know if it could be run entirely separately so that you could get the whole functionality of Appinventor tied into a CSILM rather than simulating a small part of it. The emulator can also run separately, but we do not know if you could get it to coordinate things inside of a CSILM.