CMU logo
Search
Expand Menu
Close Menu

Alice: Making it Fun to Learn Computer Programming

Open in new window

Speaker
Randy Pausch and Caitlin Kelleher
Department of Computer Science, Carnegie Mellon University

When
-

Where
Newell-Simon Hall 1305 (Michael Mauldin Auditorium)

Description

Programming computers is an intrinsically difficult activity, but our current methods and technologies for teaching it could be much better. With the recent drop in CS majors (50% in the last 5 years), the need to attract and retain a larger and more diverse set of students is even greater. We have spent the last ten years developing the Alice environment, which uses interactive 3D graphics and a drag-and-drop interface to make a student’s first exposure to computer programming much easier, while still keeping the full power of a Java/C++ level language. Alice attempts to provide the benefits of a system like Papert’s Logo or Pattis’ Karel-the-Robot without being relegated to being a toy: we provide a system that supports everything most traditional semester-long “Introduction to Programming” courses cover, but remove unnecessary hurdles, and provide a more motivating learning environment.

In trying to increase the number of students who enter computer science, we are focusing on two groups: college students in introductory programming and middle school students, particularly girls. In this talk, We will demo two versions of the Alice system: the first is currently being used to teach Alice in more than 60 universities; the second is a version of Alice designed to support middle school students in creating short animated movies. We will explain how this unique project has evolved and how it has been heavily influenced by time we have spent collaborating with Walt Disney Imagineering and Electronic Arts. Alice succeeds because it:

  1. Avoids the minefield of syntax errors, by providing a drag-and-drop interface where students visually manipulate program elements (“if”, “while”, “for”, etc.).
  2. Shows program state with 3D objects, which reinforces the object-based programming model and makes all changes to data both visible and animated.
  3. Uses 3d graphical characters as a vehicle for storytelling, a great motivator for students.

We have formally shown that Alice works in freshmen college courses and have preliminary data showing that a storytelling version of Alice works as a vehicle for motivating middle-school girls to take an interest in computer programming. The system is provided as a free public service by Carnegie Mellon at www.alice.org

The talk will conclude with our plans for Alice v3.0, which we plan to make the predominant tool for students’ first exposure to computer programming.

Speaker's Bio

Randy Pausch is a Professor of Computer Science, Human-Computer Interaction, and Design at Carnegie Mellon, where he is the co-founder of CMU’s Entertainment Technology Center (ETC). He was a National Science Foundation Presidential Young Investigator and a Lilly Foundation Teaching Fellow. He has done Sabbaticals at Walt Disney Imagineering (WDI) and Electronic Arts (EA), and has consulted with Disney on user interfaces for interactive theme park attractions and with Google on user interface design and testing. Dr. Pausch is the director of the Alice software project (www.alice.org), and has been in zero-gravity.

Caitlin Kelleher did her Bachelors degree at Virginia Tech, where she majored in Computer Science and minored in Physics and Math. She is currently finishing her PhD in Computer Science. Her thesis work is on designing a version of Alice for middle school girls that presents programming as a means to the end of storytelling. Caitlin is a National Science Foundation Graduate Fellow.

Speaker's Website
http://www.alice.org/