View
49
Download
0
Category
Preview:
DESCRIPTION
Using App Inventor in a K-12 Summer Camp. Amber Wagner, Jeff Gray, Jonathan Corley University of Alabama David Wolber University of San Francisco. SIGCSE 2013 Denver, CO – March 9, 2013. NSF CAREER 1052616. Overview. Summer Camps at UA. - PowerPoint PPT Presentation
Citation preview
Using App Inventor in a K-12 Summer Camp
SIGCSE 2013Denver, CO – March 9, 2013
Amber Wagner, Jeff Gray, Jonathan CorleyUniversity of Alabama
David WolberUniversity of San Francisco
NSF CAREER 1052616
Overview
Introduction and
Motivation
App Inventor Java Bridge Lessons
Learned
Summer Camps at UACamp Pre-requisites Content Attendance
Week 1: Intro to Java
No experience needed;
Grades 9-12
Taught intro to Java using
Greenfoot and Media Comp
2011: 282012: 33
Week 2: Robotics
Existing knowledge of Java or attendance of
the first camp
Taught Java using Lego NXT and
Lejos
2011: 122012: 25
Week 3: Android App
Inventor
Existing knowledge of Java or attendance of
the first camp
App Inventor Block Language
and App Inventor Java Bridge
2011: 162012: 24
• Residential camps with both commuter and dorm options• 2012 Camps had students from 12 states, plus students from Beijing and Hong Kong• http://outreach.cs.ua.edu/camps
2012 Summer Camps
Why App Inventor?• Smartphone adoption around 58%1 (ages 13-17)• Android has largest market share (70% in 4Q-12) 2
• Novel ways to engage through the “creative hook” and tinkering; “I wish I had an app for that”
Social networking and crowd sourcing a daily activity among teens
Increasing adoption of smartphones in science and medical applications
1http://www.bizreport.com/2012/09/smartphone-adoption-in-us-led-by-teens.html#2http://www.forbes.com/sites/chuckjones/2013/02/13/android-solidifies-smartphone-market-share/
Camp ItineraryDay Task
Monday • Introduction to App Inventor: “HelloPurr”, “PaintPot”, “MoleMash”
Tuesday • Final project explanation• More projects from Dave’s textbook
Wednesday • Introduction to the Java Bridge: “PaintPot”• Students present project ideas
Thursday • Final project time
Friday • Project presentations
App Inventor
Java Bridge
import com.google.devtools.simple.runtime.components.HandlesEventDispatching;import com.google.devtools.simple.runtime.events.EventDispatcher;import com.google.devtools.simple.runtime.components.android.*; public class MyApp extends Form implements HandlesEventDispatching{ /* Declaration of GUI components goes here */
void $define() { /* GUI components constructed and added to Form */
EventDispatcher.registerEventForDelegation( this, "MyApp", "SomeEvent" ); }
public void dispatchEvent(Object component, String id, String eventName, Object[] args) { if( eventName.equals( "SomeEvent" ) ) if( component.equals( someComponent )) someComponent_DoAction(); /* Other event dispatching goes here */ }
private void someComponent_DoAction() { /* Some specific event handler code here */ }}
• Created by Mark Friedman (Google) as a way to explore App Inventor in Java• http://app-inventor-for-android.googlecode.com/svn/trunk/samples/BridgeToJava
Illustration
Illustration
Student Projects
AppInventor Java Bridge
Artifact AssessmentLearning Objective Number of projects
How Android apps can be written 23Objects 23
Programming environments(Block Language and Java)
23
Events 23
Decision statements 15
Loops 3
Method calls 23
Method creation 7
Understanding how to read documentation 14
Creating a GUI 23
Using components 23
Successes• Creativity soared• Students really engaged• Team projects highly collaborative• Grasped concepts well (from artifact assessment)
– Objects– Events– Decision statements– Method calls– Creating a GUI– Using components
Improvements• Begin the series of camps with AI at the
end of the first week (during Java camp), as a teaser for the App Inventor week
• Introduce Java Bridge earlier in the week, perhaps, afternoon of Day Two
• More focus on the following concepts:– Loops– Method creation– Reading documentation
ConclusionApp Inventor•Provides a relevant context igniting creativity•Students can learn programming concepts first
Java Bridge•Provides smooth, natural progression to Java•Components in App Inventor translate well
Next Steps•Offer as teaser in first week•Give students more time to work in Java
For More Info
• App Inventor Website– http://www.appinventor.org
• Java Bridge– http://app-inventor-for-android.googlecode.com/svn/trunk/samples/BridgeToJava
• USF site to automatically generate Java code– http://usfaicg.appspot.com
• Site of translated apps to Java Bridge– https://
code.google.com/p/appinventor-java-translation/downloads/list • UA Summer Camps Website
– http://outreach.cs.ua.edu/camps/
Recommended