| |
Programming with Scratch
Check out the Ormondale Scratch Arcade
Scratch is billed as an entry into the world of computer programming. Scratch programmers create objects called sprites, define how their sprites look, and create scripts to control how the sprites act on the screen. As this explanation may suggest, Scratch is often used by young programmers to create computer games. However, one can do much more. For example, Scatch can be used to make a variety of mathematical calculators and even animate a story with narration and background music.
Scratch works on both Windows and Apple computers. Download the program from the MIT media lab. At the Scratch website, you will find several short articles on how Scratch addresses 21st century educational needs. However, we have found that Scratch programming provides great math practice:
- Objects are placed on a four-quadrent X-Y plane. If a students wishes to place an object in the upper-left part of the screen,
then she would use the Go To command:

- Object move in relation to one another and possibly to a goal. Students need to keep
track of locations and compare locations: above, below, left, right.
- Object move across the screen at different rates. d = r / t and r = d / t become second nature.
Besides using math skills, students can create math programs. For example, one group of third graders is developing a addition
game for the kindergarten.
Scratch programmers share their work on the MIT website. If you register at the site, you can download the programs to your computer and view the code. Analyzing how others manipulate their sprites is a great way to learn Scratch essentials.
Speaking of code, programmers do not enter computer instructions into an editor but rather snap together code pieces. Here is some code for the pong game written by one of our creative third graders.
Our first completed program is a pong game by a student in Mrs. Woolfe's third grade class: Play
Scratch is an excellent tool in the math curriculum. Regardless of the implemented program, the Scratch developer practices
using positive and negative numbers, absolute values, basic arithmetic, decimals, operator precedence, modular arithmetic (aka clock
arithmetic), comparing values (inequalities), working in the Cartesian (X-Y) plane, disatances, time, and more. Besides basic math, Scratches teaches logical and presentation skills, sequencing, and attending to details. It is also fun.
As an example of both using math to write a program and incorporating Scratch into a math lesson, here is a joint effort by five second grade students in Ms. Jacquot's class. Ms. Jacquot
introduced the Fibonacci series to her class and we could not pass up the opportunity to use Scratch as a Fibonacci series generator. Note that in a "traditional" programming class (e.g., Pascal, Java, or C++), the output would likely be a column of numbers. To add some excitment, the teacher may ask for two columns of numbers! Compare the traditional output with our Scratchers. Not only do they implement the mathematical principals introduced in class, they present the pricipals in a refreshingly yoouthful way.(See the program.)
The November challenge was to create a program that draws regular polygons. Read the challenge details and check out the programs that produce the patterns. Third grade math content standards include several geometry entries:
2.1 Identify, describe, and classify polygons (including pentagons, hexagons, and octagons).
2.2 Identify attributes of triangles (e.g., two equal sides for the isosceles triangle, three equal sides for the equilateral triangle, right angle for the right triangle).
2.3 Identify attributes of quadrilaterals (e.g., parallel sides for the parallelogram, right angles for the rectangle, equal sides and right angles for the square).
2.4 Identify right angles in geometric figures or in appropriate objects and determine whether other angles are greater or less than a right angle.
Students have the opportunity to experience the rules of geometric properties when they compose a program with the number of sides as input. Those students who participated in the challenge learned that the angles of a regular polygon with four or more sides can be computed by dividing 360 by the number of sides. This relationship is not part of the standard lesson, but is derived (with help, of course) by the students as they direct their sprites to draw the shapes.
Look here later to see examples of acute, right, and obtuse angles.
A popular visual aide when learning multiplication is to create an array of N rows, each row consisting of M items, to demonstrate M x N. We can interpret this array as adding M things, N times (M + M + M + ... + M), which we tell our children is the "shortcut" multiplication offers us. See how two second graders generate the arrays.
Check out what first graders are doing.
Several students tried their hand at Scratch to make Valentine's Day Cards. Read about the activity and see their cards here.
How about me? Teachers periodically ask if a Scratch program can be written for a specific problem, and not always in math. For example, one offering I hope to share is a digital story. In the meantime, here's a math one: write a program to draw spirolaterals.
Finally, here are some fun examples.
Try out a third grader's dreidel game.
|