Few disciplines will open as many doors in the twenty-first century as computer science (CS). To spark and grow students' interest in this important field of study, Oracle funds Alice and Greenfoot, two development environments that support early CS learning.
Alice is a free platform from Carnegie Mellon University designed to teach students object-oriented programming by engaging them in something funmaking animated movies and games. By dragging and dropping graphic tiles that contain standard Java programming statements, students create programs to animate 3-D objects that populate a virtual world. They can run their programs immediately and see the relationship between the programming statements and the behavior of objects in their animations.
Suitable for students ages 8-22 and downloaded more than a million times a year, Alice is the subject of 11 textbooks. Through Alice, students gain experience with all the constructs typically addressed in an introductory programming course. However, because Alice presents programming as a means of storytelling, it attracts a much wider cross-section of students than conventional programming courses.
Studies show that middle school girls are more interested in learning to write computer software when it is presented as a storytelling activity. Some research shows that exposure to Alice prior to or concurrent with CS1 improves performance in the course by as much as a full letter grade and helps 88 percent of students advance to CS2.
After Alice, Greenfoot forms the next rung on the learning ladder. Greenfoot is a free platform from the University of Kent. It is an integrated development environment (IDE) suitable for students ages 14-25 and the only tool available today that teaches standard Java in a visual manner. Students write standard Java syntax to create games, simulations, and applications, while visualization tools allow them see their programs executed graphically so they can immediately confirm that their code works.
Although Greenfoot includes all the tools professional developers use, its interface is designed for beginners. Computer science students who use it early in their CS learning are able to advance more easily to professional IDEs such as NetBeans and Eclipse.