This week is Computer Science Education Week. I’ve long thought that every student should have some experience with computer science. After all, computer science is what powers so much of what kids do in their daily lives today. I was introduced to some computer science concepts when I was in elementary school in the 1980’s through the use of Logo and that experience is still beneficial to me today.
If you would like to have your students get a little computer science experience this week, here are some good resources for you.
MIT App Inventor
The MIT App Inventor is a free app development tool that I’ve used with students and teachers for over a decade now. It’s a great tool to use to introduce students to some programming concepts while letting develop apps that they can actually use on their phones. While it might seem complicated at first glance, after they have mastered a few basic concepts students can create some amazing applications through the MIT App Inventor. Here’s my video overview of how to create your first app with the MIT App Inventor.
Daisy the Dinosaur
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.
Scratch & Scratch Jr.
Scratch like the MIT App Inventor has been around for over a decade and is still the first thing that many people mention when talking about introducing students to programming concepts. 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. Watch the video here to learn more about Scratch. And check out the ScratchEd team’s curriculum for teaching with Scratch (link opens a PDF).
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.
The best aspect of CodePen is that it is a real-time editor. That means you can change any aspect of the HTML, CSS, or JS and immediately see the effects of those changes in the preview panel. This is a great way to see what happens when a variable is changed in an application. If the change didn’t work as anticipated, a quick “CTRL+Z” on your keyboard reverts it back to the previous state. The same is true when you edit an aspect of the HTML or CSS.
CodePen does have a gallery of publicly shared projects that you can copy and modify. Those public projects make it easy for students to get started using CodePen as I demonstrate in this short tutorial video.
Final note: Anyone who is truly interested in using computers in the classroom should take the time to read Seymour Papert’s Mindstorms.