13
Google Workshop: App Inventor Jeff Gray, Ph.D. - Associate Professor Carnegie Foundation Professor of the Year (Alabama, 2008) University of Alabama Department of Computer Science [email protected] http://www.cs.ua.edu/~gray University of Alabama July 26, 2011

Google Workshop: App Inventor Jeff Gray, Ph.D. - Associate Professor Carnegie Foundation Professor of the Year (Alabama, 2008) University of Alabama Department

Embed Size (px)

Citation preview

Google Workshop: App Inventor

Jeff Gray, Ph.D. - Associate ProfessorCarnegie Foundation Professor of the Year (Alabama, 2008)

University of AlabamaDepartment of Computer [email protected]://www.cs.ua.edu/~gray

University of AlabamaJuly 26, 2011

Overview

Sample outreach activities Science Fair project examples Summer Camp Summary

App Inventor CS Unplugged

Location of resources for today http://www.cs.ua.edu/~gray/outreach/google-cs4hs/

Motivation: Teaching CS – 1980s style Typical example was text-based, trivial, and

uninspiring

Motivation: New and Exciting Contexts Media Computation (Georgia Tech)

Programming in a more exciting context by manipulating images and sounds

Robots Lego NXT

2D/3D Animation Environments Alice, Scratch, AgentSheets

Motivation: Newest Context Teen cell phone adoption at 84% March 3, 2011

Android marketshare (29%) passes Apple (27%) Android sales soar 888%

Social networking and crowd sourcing a daily activity

Increasing adoption of smartphones in science and medical applications

App Inventor Overview URL: http://appinventor.googlelabs.com Purpose

Teaching Prototyping

Components of App Inventor Designer

GUI builder Block Editor

Provide behavior behind the GUI Based on MIT OpenBlocks and Scratch

App Inventor Overview

Installing and Running

http://appinventor.googlelabs.com/learn/setup/index.html#setupComputer Requires Java 1.6 Install App Inventor setup

App Inventor environment loads in a web browser Login using Google account

Run from a phone or the Android emulator Stores programs in the cloud

Designer Provides a WYSIWYG editor for designing the

visual parts of the app Also provides ability to attach non-visual

components

Blocks Editor Provides an ability to give behavior

to an app; the programming part Typical and expected basic

predefined constructs (logic, conditionals, iteration)

Ability to refer to the components and their properties from the Designer

Very similar to Scratch Built on Open Blocks library from MIT

Limitations

File I/O Custom objects Printing your code! Reliability

Examples Many tutorials available:

Developed by Dave Wolber (Univ. San Francisco) http://appinventor.googlelabs.com/learn/tutorials/index.html

Standard Google Kitty app (embarrassing!) http://appinventor.googlelabs.com/learn/setup/hellopurr/

hellopurremulatorpart1.html

Other Examples Where’s My Car, No Text While Driving

CS Unplugged URL

http://csunplugged.org/ Free Book

http://csunplugged.org/sites/default/files/activity_pdfs_full/CS_Unplugged-en-10.2006.pdf

Overview of Unplugged Activities Error Correction (lead-in from Google Magic Trick) Binary Numbers (and WHY they are important) Sorting Searching Compression