Alice is an interactive block-based drawing software that lets you build simple animations, create interactive stories, or program complex games in 3D. Unlike many of today's puzzle-based computing applications, Alice encourages learning through creativity. The basic controls are simple: left click to draw, a right click to erase, and a shift key to combine blocks into larger shapes. In addition to drawing, you can also manipulate the colors and patterns on the screen by clicking on them. Occasionally you'll have to pick up an object, such as a pencil, to move it. When you pick up an object, it becomes highlighted in yellow, helping you better find where it is.
Alice is aimed at those who are interested in implementing an object-oriented programming environment (OOP), but may not be comfortable with creating visual illusions or working in a virtual world. While the block-based graphics are fairly simplistic compared to those found in some of today's more impressive gaming applications, the main feature of Alice is its ability to make you feel like you're part of a much bigger game. The blocks are actually arranged in a grid, and when you pick up an object within a certain range of another, you shift that object's position in the grid, making it easier to manipulate.
One of the most attractive features of Alice is the way that it stimulates you to think about and explore the way that ordinary objects are structured in nature. Computer science is very advanced, but many of today's programs are still built on very primitive computer models. If you're interested in developing an object-oriented programming environment where you can explore the inner workings of a computer, Alice is a great place to start. It is relatively easy to get started, and will provide hours of entertainment while teaching you all about computers and their algorithms.