Many moons ago when I was in elementary school, using Logo Writer on an Apple IIe was my introduction to programming. Since then and still today I think that Logo and it's offspring like Scratch and Turtle Art are powerful tools for introducing programming to students of all ages. So when Gary Stager reached out to me this week to share the Turtle Art Tiles Project Guide, I knew that I had to check it out.
The Turtle Art Tiles Project Guide walks you through a complete project in which your students learn how to use Turtle Art on the web and design patterns to be cut into tiles with a laser cutter or 3D printer. The guide even provides step-by-step directions for moving students work into Tinkercad for 3D printing.
If you're not familiar with Turtle Art, it's a web-based tool that anyone can use to learn and develop programming skills through a kid-friendly interface. Students use blocks to create a program in which a turtle draws on the screen. The Turtle Art Tiles Project Guide begins with a short lesson on drawing squares in Turtle Art before giving a little guidance, but not too much guidance, on how to make other shapes and patterns.
The ISTE 17 presentation that I was looking forward to more than any other was Dr. Gary Stager's 50th Anniversary of Logo. I got there early because I genuinely thought the ballroom would be packed. Instead, there were maybe three dozen of us in the room. That's a shame because ISTE attendees missed out on a fantastic tour through the history, development, and role of Logo and programming in general in schools.
For those that don't know, Logo is the basis of some of the most popular programming tools in school today. Scratch, Snap, MIT App Inventor, and many other tools are all rooted in Logo.
Logo Writer was my introduction to computers when I was an elementary school student. As I've said in many presentations over the years, getting to use Logo Writer was the first time that I wanted to stay after school and come in early for academic reasons. I spent a lot of hours in sixth grade programming various animations. Here's a screencast of someone using Logo Writer. (Public domain video from Archive.org).
Turtle Art is software that you can get today for free to do many of the same things that I was doing in Logo Writer. A helpful tip about Turtle Art that I learned from Gary was that you can drag a completed Turtle Art project from the gallery of examples into the software on your desktop and have the program revealed. The challenge to then give to your students is to change the program to create a new design. Gary gave the example of turning stalactites into stalagmites. Go to Turtle Art, get the software and try it for yourself. It's a fun challenge.
Last week on Twitter I mentioned that Logo was my introduction to computers and programming. Today we have many more ways to introduce students to programming and coding. Here are some good resources that you can use to introduce students to programming and coding.
When the conversation amongst educators turns to programming, Scratch is often the first resource that is mentioned. Scratch allows students to program animations, games, and videos through a visual interface. Students create their programs by dragging together blocks that represent movements and functions on their screens. The blocks snap together to help students see how the "if, then" logic of programming works. If you haven't seen Scratch before, watch the short overview in the video below.
Scratch Jr. is based on the aforementioned online Scratch program. Scratch Jr for iPad and for Android uses the same drag and drop programming principles used in Scratch. On Scratch Jr students can program multimedia stories and games. To program a story or game on Scratch Jr. students select background settings for each frame of the story. Then in each frame students select the actions that they want their characters to take. Students snap programming pieces together to make characters move and talk in their stories and games.
Snap! is a drag-and-drop programming interface designed to help students learn to program. Snap! uses a visual interface that works in your browser on your laptop as well as on your iPad. To design a program in Snap! drag commands into a sequence in the scripts panel. The commands are represented by labeled jigsaw puzzle pieces that snap together to create a program. You can try to run your program at any time to see how it will be executed. After previewing your program you can go back and add or delete pieces as you see fit. Snap! may remind some people of Scratch. That is because the Snap! developers call their program "an extended re-implementation of Scratch." The potential benefit of Snap! over Scratch is that teachers who have a mix of iPads, Android tablets, and laptops in their classrooms can have all of their students use the same programming interface.
The MIT App Inventor allows students to create and publish their own Android applications. The MIT App Inventor works in your web browser (Chrome is recommended). The only download that is required for App Inventor 2 is the optional emulator. The emulator allows people who don't have Android devices to text their apps on their desktops. If you have an Android device then the emulator is not required and you don't need to worry about installing it. MIT provides excellent support documentation and curriculum for classroom use for new users of App Inventor. Click here to read about a great app developed by students using the MIT App Inventor.
Google Blockly's interface will remind you of the MIT App Inventor and Scratch. Google Blockly, like Scratch and the MIT App Inventor, uses jigsaw pieces containing commands that you can snap together to create an application. The blocks can be dragged, dropped, and rearranged as many times as you like. Google has five working demonstrations of Blockly that you can try right now. Google Blockly could be a good tool for students to use to play with logic commands in a relatively easy to understand environment. Blockly doesn't require any typing, just clicking, dragging, and dropping with a mouse or on a touch screen.
Crunchzilla is a service that students can use to learn to write Javascript programs. There are two versions of Crunchzilla; Code Maven and Code Monster. Code Monster is designed forstudents of middle school age. Code Monster contains 58 short lessons that take students from the very basics of things like resizing and repositioning objects to complex creation of animations. Students can work through the lessons in sequence or jump directly to any of the lessons. Students receive instant feedback on each lesson because the code that they write and the results of the code are displayed side by side.
Code Maven offers 59 lessons for students to work through at their own pace to learn programming fundamentals. After completing the Code Maven tutorials students are ready to move on to Game Maven where they can work through 37 lessons in which they will create three simple online games.
TouchDevelop is a great platform through which students can learn to program simple animations and games. On TouchDevelop students program a series of actions by entering sequences of commands such as "move forward" and "turn right" that are carried out on the screen by a chosen figure such as a turtle. In addition to the direction commands students program the distances covered on screen, the colors, the animations, and the images to appear on screen. All commands have to be entered into correct sequences of "if, then" logic in order for everything to display as intended. TouchDevelop works on most modern web browsers including Chrome for iPad. Students completed programs can be saved online and or exported for use as Windows apps or HTML5 applications.
CodeMonkey is a fun game through which students learn some basic programming skills. In the game students have to help a monkey get his bananas. The game presents students with a series of thirty progressively more difficult challenges in which they have to help a monkey reach his bananas. Students help the monkey get his bananas by correctly programming the movements of the monkey. CodeMonkey provides little tutorials for to help students through the challenges.
Thunkable is a free platform for designing, testing, and publishing your own Android apps (support for iOS apps is coming soon). Through Thunkable you can create your apps even if you don't know how to write code. That is possible because Thunkable uses a drag-and-drop design framework. That framework, based on the MIT App Inventor, shows you jigsaw-like pieces that have commands labeled on them. Your job is to put the pieces together to make your apps work. Thunkable offers detailed written tutorials and video tutorials.
Daisy the Dinosaur is a free iPad app designed to introduce young students to some programming basics. The app asks students to create commands for Daisy the Dinosaur to carry out. There is a free play mode in which students can make Daisy do whatever they want. But to get started you might want to have students work through the beginner challenges mode. Daisy the Dinosaur asks students to enter commands in the correct sequence in order to make Daisy complete tasks correctly. Daisy the Dinosaur could be used with students as young as Kindergarten age.
Hopscotch is a free iOS app that introduces students to programming logic. The app originally launched as an iPad-only app. Last week the developers released an iPhone-friendly version of the free app. In Hopscotch students put command boxes into order to make cartoon avatars move and draw lines. Students can program one or all of the cartoon avatars to move and follow commands based on touch or on the movement of their iPads.
Automatoon is a free service for creating simple to complex animations that you can reuse anywhere on the web. There are three basic steps to using Automatoon. First, you draw and color your images. Second, you break apart each element of your drawing. And third, you specify the animation action for each part of your drawing. For example, when I made a simple animation of a face I started by drawing the face then separating the elements and finally specified the sequence in which I wanted the face to be reassembled as an animation.
You can add as many parts to your Automatoon animations as you like. There are three basic animation actions that you can specify; bend, change, and move. Each part of your drawing can have one, two, or all three of those actions. The tricky part is putting together the correct sequence of actions.
Automatoon uses HTML5 so that you can create and view your animations on devices like the iPad 2 that don't support Flash.
Watch the video below for a tutorial on creating animations using Automatoon.
Applications for Education Automatoon reminded me a tiny bit of the old Logo Writer program that I used to create animations in elementary school. What I remember about making those animations with Logo Writer is that I had to make sure my sequences were correct in order to have my animations display the way that I wanted them to. In that sense Automatoon also requires users to specify sequences correctly in order to produce an animation as they envisioned it. So in that sense Automatoon could be used as a way for students to see the importance of proper sequencing. But that's about where the similarities between the two programs end.
Automatoon could also simply be used as a tool for students to develop animations for websites and other multimedia projects that they're developing. Perhaps you could have students build animations to explain things like a lunar eclipse or volcanic eruptions.