ToolsTipsAndTech

Download Report

Transcript ToolsTipsAndTech

Tools, Tips, and Techniques for
Teaching Difficult Computing
Concepts
Barbara Ericson
Georgia Tech
[email protected]
http://coweb.cc.gatech.edu/ice-gt
Who am I?

Member of the Advanced Placement
Computer Science Development
Committee




Responsible for creating the exam
Co-chair of the NCWIT K-12 Alliance
Member of the CSTA Board of Directors
Director of Computing Outreach for
Georgia Tech's College of Computing
Tools

There are many free tools for teaching
computer science







Scratch
Alice (2.2 and 3.0)
JavaBat
GridWorld
Greenfoot
Media Computation
Alice and Media Computation
Scratch

Free software from MIT for creating 2D
animations and games

http://scratch.mit.edu
Alice 2.2

Free software from CMU for creating 3D
movies and games

http://www.alice.org
Alice 3.0 Beta

Free software from
CMU for creating 3D
movies and games

http://www.alice.org


Includes the
Electronic Arts Sims
characters
Can import into
Netbeans IDE as Java
code
JavaBat

Free website where
you can type Java
code answers to small
problems



And test your solutions
You can create a log-in
and share results with
someone else (teacher)
Created by Nick
Parlante of Stanford
University
http://www.javabat.com/
GridWorld

Advanced Placement
Computer Science
Case Study


Example of a larger
program for students
to learn from
Used to teach objectoriented concepts
Greenfoot

Free software from
the Un. of Kent and
Deakin Un. for
building 2D
simulations and
games in Java
http://www.greenfoot.org

Can do Karel the Robot
and GridWorld in
Greenfoot
Media Computation

Writing textual programs
to manipulate media
http://www.mediacomputation.org
SoupAudio
Collage
Alice and Media Computation

Teaching computing
concepts in Alice
first and then
covering the same
concepts in Java
with Media
Computation

http://home.cc.gatec
h.edu/TeaParty
Tips for Teaching - Recursion

Introduce in Alice



Show realistic uses in
Media Computation




Race method
Towers of Hanoi
Broccoli tree
Triangle subdivision
Directory tree
Show the call stack for
each method call
Tips for Teaching - OO

Role play

Restaurant scenario


You need a customer, greeter, waiter, chef, cashier
Walk through the task of getting a person fed



Who does the action?
What data does s/he need to do the job
How do you classify the objects?
GridWorld role play from David Levine and Steve
Andrianoff of St. Bonaventure University
http://www.cs.sbu.edu/dlevine/RolePlay/roleplay.html

Tips for Teaching - Abstract
Tips for Teaching - Interfaces


Explain the Comparable and
List interfaces
Use the example of spies
that need to communicate


Without knowing who they
are communicating with
Explain that it allows you to
substitute one class for
another

As long as the classes
implement the same
interface.

Substitute ArrayList or
Vector or LinkedList
Techniques for Teaching

Kinesthetic



CS Unplugged
Kinesthetic Learning Activities
Toys






Play-dough and cookie cutters for creating objects
Construct a pass for students to leave the room
See-N-Say for polymorphism
Weekly pill containers for 1-D arrays
Battleship or egg cartons for 2-D arrays
Covered cups with beans for sorting algorithms
CS Unplugged

Free materials for teaching computing
concepts without a computer

http://csunplugged.org/
Binary Numbers
Network Deadlocks
Kinesthetic Learning Activities

Techniques for teaching
using kinesthetic
activities from Un of
California, Berkeley




http://ws.cs.ubc.ca/~kla/
Flowchart Hopscotch
Human Binary Tree
Network Routing on
Strings