Wouldn't it be great if you could learn how to create your own computer programs and have fun at the same time? That's just what some computer programming tools aim to do. Developed to make the fundamentals of programming accessible and entertaining, Scratch and Alice are free programs that encourage students to go to programming school, or help current students brush up on their skills.
In response to the decline in computer science graduates, the main goal is now to make computer programming schools fun. By encouraging exploration, schools introduce students to computer skills and concepts while also drawing them into the creative side of programming.
Computer Programming with Scratch
It's no surprise that Scratch is easy and fun to use, because it's primarily aimed at children in elementary and middle school. But it's not kids' stuff. Scratch introduces fundamental computer programming school concepts through play and experimentation that are necessary at any age. Students use Scratch to make interactive animations, music or art, and the process is simplified with easy code building blocks students put together in creative combinations.
A Scratch program is created by dragging and dropping sections of a language similar to Java between different "palettes" on the screen. The program blocks are color-coded according to their type of statement, to make it easier to follow. Your code in Scratch will always use correct syntax and have no typing mistakes, so you can focus on what you want the program to do.
Sharing your programs is an equally important part of Scratch. The creators' website encourages students to post projects online for others to see so they can share their input. This social media feature is an important part of the program's learning philosophy, encouraging students to "love" and remix projects.
Tell Your Stories with Alice
The Alice system, first introduced by Carnegie Mellon University in 1999, has a great deal in common with Scratch. It also uses a drag-and-drop interface to build computer programs in a language similar to Java, and provides a sizable library of stock objects that you can combine and control. Directed at high-school and college students, Alice is a more sophisticated tool. Students create 3D computer animations and decide how characters will interact with one another within the program.
In Alice, students create a short and simple video game where the emphasis is on storytelling rather than computation. This approach has proven less intimidating to new students in computer programming schools.
Along the way, students become familiar with the fundamentals of object-oriented programming, including essential concepts of inheritance and event-driven code. This natural connection to video games has encouraged studio Electronic Arts to team up with Carnegie Mellon, and Alice 3 will use elements from "The Sims2" video game.
Sources: alice.org; scratch.mit.edu