16
Using App Inventor in a K-12 Summer Camp SIGCSE 2013 Denver, CO – March 9, 2013 Amber Wagner, Jeff Gray, Jonathan Corley University of Alabama David Wolber University of San Francisco NSF CAREER 1052616

Using App Inventor in a K-12 Summer Camp

  • Upload
    boyd

  • View
    48

  • Download
    0

Embed Size (px)

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

Page 1: Using App Inventor  in a K-12 Summer Camp

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

Page 2: Using App Inventor  in a K-12 Summer Camp

Overview

Introduction and

Motivation

App Inventor Java Bridge Lessons

Learned

Page 3: Using App Inventor  in a K-12 Summer Camp

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

Page 4: Using App Inventor  in a K-12 Summer Camp

2012 Summer Camps

Page 5: Using App Inventor  in a K-12 Summer Camp

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/

Page 6: Using App Inventor  in a K-12 Summer Camp

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

Page 7: Using App Inventor  in a K-12 Summer Camp

App Inventor

Page 8: Using App Inventor  in a K-12 Summer Camp

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

Page 9: Using App Inventor  in a K-12 Summer Camp

Illustration

Page 10: Using App Inventor  in a K-12 Summer Camp

Illustration

Page 11: Using App Inventor  in a K-12 Summer Camp

Student Projects

AppInventor Java Bridge

Page 12: Using App Inventor  in a K-12 Summer Camp

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

Page 13: Using App Inventor  in a K-12 Summer Camp

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

Page 14: Using App Inventor  in a K-12 Summer Camp

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

Page 15: Using App Inventor  in a K-12 Summer Camp

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

Page 16: Using App Inventor  in a K-12 Summer Camp

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/