Computer Programming Tools in Schools

Computer Programming Tools in Schools (CPTS) is a multi-language curriculum that uses ScratchStarLogo TNG, and Etoys to teach fundamental computer science concepts and programming skills in the context of homeland security-relevant topics including food safety and risk models. These three tools are beginner-friendly programming tools developed by different labs at MIT and University of Illinois but share a drag-and-drop graphical interface. The CPTS curriculum is designed for use in an introductory course for middle or high school students with no prior programming experience, with the goal of engaging students' interest in computer science and preparing them for further studies in this and related fields. All the activities are project-based and student-centered, using a variety of formats, including games, simulations, and interactive media.

The curriculum includes an Intro Unit that involves at least two of the three tools, and 4 topical units. The materials are presented as a menu of activities that teachers can select from and adapt for their particular contexts. The Intro unit can take from 4 to 7 days while each unit activity can take between one to three 45-55 minute class periods. Although the unit is designed for computer classes, the activities also highlight the value of simulations modeling in modern science and the use of a design process to build programming projects (see image below).

 

The pilot materials (below) were developed during the summer of 2011 and being tested during school year 2011-2012 by computer teachers from the Boston and greater Boston area. More activities will be added in the middle of the school year to bring the total topical units up to 4.

For more resources on each of these tools and to download the tools, please visit their respective websites: Scratch, StarLogo TNG, Etoys.

CPTS is an 18 month project funded by the Department of Homeland Security (DHS), which has within its mission a goal of increasing underrepresented groups like women and minorities in computer science and related technical fields.

Intro Unit

(back to the top)

The goal of the CPTS Introductory Unit is to introduce three beginner-friendly computer programming tools to students with no prior programming experience. It’s also possible to just introduce and compare two tools, if three feels like too many. A project is “passed” from tool to tool to illustrate each programming tool’s strengths, following a progression from “one” to “many.”  See table below for a description of each project. On days 1-2, students make a simple project using Scratch and then play with already built projects to experience a range of possible programs (games, simulations, puzzles). They repeat this process for StarLogo TNG and Etoys. Finally, on day 7, students reflect on and discuss the similarities and differences between the three tools. After completing the Intro unit, students (or teacher) can choose a tool and work through any of the topic-based units.

Scratch

Etoys

StarLogo TNG

Draw an insect and program it to move in response to a spacebar press (like tapping a jar with an insect in it); add randomness to movement.

               

In this interactive project, students estimate how long it will take one beetle to eat the leaf and also how many beetles would be needed to eat the leaf in less than 30 seconds.

Create a breed of insects, create lots of agents of that breed and scatter them, program them to move on their own; add food agents using the same process and program insects to “eat” the food and reproduce. 

 Play with Scratch Demo Projects

 Play with Etoys Demo Projects

 Play with SLTNG Demo Projects

 

Food Safety Unit

(back to the top)

Scratch Etoys StarLogo TNG

Explore product recalls - when it is not safe to eat certain foods. (Build up a project while reusing modified example code.)          

Safe Cherries - uses Etoys to make a public service announcement suitable showing on YouTube or for local TV stations to broadcast

Program a bacteria growth model using a step-by-step tutorial.

Add game elements, keyboard control and sound. (Also, conditional statements and variables)

  • See above

Egg Drop Soup: a game that uses facts about egg freshness to increase game’s level of difficulty. The project models a simple home test for freshness.

Virtual lab investigating the relationship between temperature and bacteria growth 

Introduce a character that can temporarily relieve outbreaks like Mad Cow disease. (Interobject communication through broadcasting)

  • See above

From Farm to Fork: a schematic model of a food distribution network in the form of a game. The game uses keyboard input to move an egg from chicken to table.

Extend the basic bacteria model by adding (programming) moisture conditions as a parameter 

 

Amazing Farm to Fork: an egg travels a maze guided with a joystick. The project’s flap raises questions about the cost of shipping millions of tons of eggs.

Design and program an extension to basic bacteria model

 

Food Distribution: models a good distribution network and cycles of supply and demand.

Design and program a game based on the bacteria model

 

Food Safety Sudoku: a game that uses a set of icons from the web site Food Safety.gov to teach safe food handling practices.

 
 

Bacteria Colonies: a simulation of the growth of three kinds of bacteria colonies under a variety of conditions. A graph plots changes in the number of each type.

 

Transportation Unit

(back to the top)

Scratch Etoys StarLogo TNG

Explore the concept of keeping travelers safe using Scratch. (Break down how key elements of an example project works.)        

Flight Plan Chicago: the challenge in this game is to land a plane on a digital image of a local runway.  The player controls the plane’s motion with a joystick.

Investigate the relationship between food growth rate and the number of houses that can be sustained in a food transportation and consumption model.

Extend the security screening example to keep track of search statistics. (Introduce variables and conditional statements.)

  • See above

Skywriter School: a game that visualizes the flight path of an aircraft to a runway. The pilot drags the aircraft to the runway and then that path is flown by the aircraft automatically. Web site references include airman test information from faa.gov and career information from dhs.gov 

 

Analyze (break down) and interpret the code in the model.

  • See above

Modify the gameplay of the security screening example to include screening inbound and outbound passengers. (Delve into sensing.)

  • See above
Etoys

Brainstorm ideas for extensions or further investigations. Implement one extension using the design process.

Computer Security Unit

(back to the top)

 

Scratch

Etoys

StarLogo TNG

Cryptography - encrypt and decrypt messages                   

Steganography: this project shows the names of a number of kinds of steganography in current use.  

Why does my download speed vary? How do hackers attack websites? Use a network simulation model to investigate these and other questions. Also introduces students to graph theory, an area of discrete math.

Placeholder text

Cloudy Day: Make a project that uses Morse Code to conceal a message. Include reference web sites as clues to solve the puzzle.

 Placeholder text
Placeholder text

Cyber Careers Info: Use a quotation of basic information from www.dhs.gov in a puzzle that challenges the plyaer to solve a simple ciphered message.

 Placeholder text
Placeholder text

Mr. Morse's Class Snack: Create an illustrated book for children that conceals coded messages.

 Placeholder text

Design Process Support

(back to the top)

Kernel Design

The Kernel Design Process is a multi-level iterative framework to guide students in developing their ideas from "spark" (brainstorming) to "serve" (communicate).

 

 

Game Design

(Materials created for SLTNG but can be adapted for other tools)

Most up-to-date materials can be found at SLTNG Game Design webpage
  • starter project
  • special game blocks reference sheet
  • student worksheet - design and planning
  • game elements design cards
  • "best" game rubric