tools, tips, and techniques for teaching difficult computing concepts
DESCRIPTION
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 - PowerPoint PPT PresentationTRANSCRIPT
Tools, Tips, and Techniques for Teaching Difficult Computing Concepts
Barbara EricsonGeorgia Tech
[email protected]://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.or
g 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 Universityhttp://www.javabat.com/
GridWorld Advanced
Placement Computer Science Case Study Example of a larger
program for students to learn from
Used to teach object-oriented concepts
Greenfoot Free software
from the Un. of Kent and Deakin Un. for building 2D simulations and games in Javahttp://www.greenfoot.org
Can do Karel the Robot and GridWorld in Greenfoot
Media Computation Writing textual
programs to manipulate media
http://www.mediacomputation.org
Soup-Audio 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.gatech.edu/TeaParty
Tips for Teaching - Recursion
Introduce in Alice Race method Towers of Hanoi
Show realistic uses in Media Computation
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 Universityhttp://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 NumbersNetwork 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