Computer Applications | Coding and Programming | Middle School
How To Teach Middle School Programming Lessons with Alice.org
Frank DiMaria is a middle school computer teacher in Fort Mill, SC. Frank has written an number of guest articles for AES to help other teachers be more effective in the classroom.
Many computer teachers struggle to keep students engaged, so finding ways to increase interest in lessons is often at the top of our minds. One of the most exciting tools that I have found sparks student creativity and interest is Alice Programming. It’s perfect for middle school programming lessons, and can even be used by other teachers in cross-curricular projects.
Alice is a free block-based programming environment (that means you don’t need to know how to write computer code to use it) that makes it easy to create animations, build interactive narratives or program simple games – all in 3D.
Unlike many of the puzzle-based coding applications, Alice motivates learning through creative exploration. It’s designed to teach logical and computational thinking skills, fundamental principles of programming, and to expose your students to object-oriented programming. Although characters cannot speak audibly in Alice, they can communicate with text bubbles. Characters' limbs are articulated so they can gesture and move throughout their 3D environment.
Elementary, middle school, and high school teachers can use Alice to teach visual arts, language arts, science, math, social studies, computer science, and just about any other subject. For the past seven years I’ve been teaching my middle school computer students the basics of computer programming using Alice with positive results.
Which Version of Alice Programming Should You Use?
When looking on the website, you will notice that currently Alice comes in two versions: Alice 2 and Alice 3. Here’s a little bit of information about each version:
Alice 2 offers students a great first experience and a glimpse into the Alice environment. For some users Alice 2 will be the perfect fit, especially if they are new to programming. Because it does not have as many advanced options as Alice 3, it’s a great springboard into programming.
When I began teaching with Alice seven years ago, Alice 3 had not yet been released. At that time Alice 2 offered my students six “worlds” in which to create their animations, and enough characters to pique their interest in programming. With no formal training and only a using textbook I found on the Internet, I was teaching Alice 2 to my students just a few minutes after downloading the software.
Alice 2 is a good place to start if:
- You’ve never taught coding to students before
- You’re teaching elementary or middle school students
Alice 3 is the newest version of the Alice programming language. It has all the features of Alice 2 with an added emphasis on object-oriented concepts.
Alice 3 can serve as a great early learning tool, as well as extending to assist in a full transition to the Java programming language. Alice 3 offers 20 worlds and takes a bit more time to learn than the previous version.
The Alice website has a Resources Area to help you get started, no matter which version you choose to teach.
Getting Started with Alice 2 in Your Computer Classes
For my middle school computer lessons that use Alice, I like to start off with a short dialog between two characters and some simple head movements. The first lesson I teach students features a snowman and a snow woman in an icy scene.
Once I choose the world and add the characters, I teach students to program the two characters so they look at one another, the snowman’s hat flies off, and they talk.
When students complete this animation, I teach them how to make a biped or quadruped character walk, how to make a plane fly, and how to make a merry go round loop so it continues to go around.
Moving Up to Alice 3 for Your Middle School Computer Lessons
Once you and your students have mastered Alice 2, you may want to give Alice 3 a shot. That’s not to say you can’t bypass Alice 2 and start off with Alice 3. If you’re confident in your ability to teach coding and your students’ abilities to think sequentially, try Alice 3.
This latest version of Alice has all the features of Alice 2, with an added emphasis on object-oriented concepts. Alice 3 has a new rich gallery of models that includes everything you need to spark creativity, including a full Sims character builder. The new gallery has been built on a shared class joint structure, which lets you share animations between different characters of the same type.
Before introducing my students to Alice 3, I watched a number of tutorials offered by the Duke University Computer Science Department: Duke University Alice 3 Tutorials
The first set of tutorials I watched for Alice 3 was “The Introduction to Alice 3: Witch’s Cauldron.” It took 30 minutes to watch the videos, and there are extra resources included. It taught me how to make a witch who lives in a swamp summon her baby dragon and fly away on its back. This later became the lesson I used to introduce my middle school students to Alice.
These tutorials are easy to follow and chunked into bit-sized portions. As I watched the video and replicated the coding on my computer, I created a document with the procedural steps, screen captures, and the actual code. This document became an indispensable tool when I taught this lesson to my students. By using the included PowerPoint or handout you practically have a ready-to-use set of middle school computer lesson plans!
Next I viewed a tutorial called Princess and Dragon Version 2, which I found here: Duke University Alice Materials Repository
In this tutorial I learned how to program a dragon to flap its wings and fly, how to change camera angles, and how to create a procedure that the software can call at any time.
This tutorial is more in depth, with 3 parts each taking about 45 minutes to complete. This became the second lesson I used from Alice to teach middle school programming. Like the other tutorial, there is an included PowerPoint for each part which you can use as a resource in your classroom.
Using Alice for Cross-Curricular Projects for Middle School
Core teachers who have access to a computer lab or a cart of laptops can use Alice in any number of creative ways. A Language Arts teacher can instruct her students to program a set of characters to act out a scene from a classic piece of literature.
A social studies teacher can have his students write their own presidential speech based on current events and program a character to deliver that speech in Alice, complete with gestures and movements.
All teachers, no matter their subject area, can design an assignment in which students create a simple quiz in Alice using functions and variables. Doing this is a great way to promote programming and the use of technology in any classroom in your school.
More Middle School Programming Resources
I hope this article gave you some ideas on how you can teach programming in your computer classroom by using Alice. If you want even more ideas for your middle school programming lessons, read this article: 8 Place to Find Free Middle School Computer Science Resources