Alice’s Adventure: a 2D adventure game making tool for teaching game design and introducing programming concepts.  Eunkyeol Kim, Jiajun Liu, Vasant Menon, Miao Ren, Rui Tang, Tianyi Zhao;CMU 2017

Alice’s Adventure was a one semester graduate team project challenged to create an adventure game creation tool that could be used to teach game design and came programming concepts. They have completed a beta of the platform and have also shared their code. You can view their development blog, download the tool, have access to basic how to materials to support usage, and even play example games created using the tool.

Curioser: A VR Game to Teach CS  Daniel Cohen, Mengyang Li, Le Ma, Sunil Nayak, Griva Patel, Matthew Stone;CMU 2017

CuriouSer was a one semester graduate team project challenged to create a VR game for the Google Daydream. They chose to create a game aimed at teaching the value of using functions through the metaphor of a pizza parlor. You can view their development blog, trailers of the game play, and see their accompanying lesson plan on the project site.

Wonderland: Prototyping CS Education in VR  Zhi Ai, Nick Guan, Miriam Harries, Jiawen Liang, Luqing Zhang, Guanqiao Wang, CMU 2017

This was a one semester graduate school client driven project at Carnegie Mellon University’s Entertainment Technology Center. The Wonderland project worked to bring the core principles of Alice into virtual reality by exploring what VR might have to offer the world of computer science education. The team did so by rapid-prototyping six virtual reality experiences that each illustrate one significant computer science concept in a visual, interactive way. The team found that the strength of virtual reality is in visualizing high level concepts in a uniquely immersive, interactive form that enables students to explore the concepts freely without needing to worry about syntax. The team has made available their findings, recommendations, and even the source code to their prototypes for use by the community.


Mediated Transfer: Alice 3 to Java (PDF) Wanda Dann, Dennis Cosgrove, Don Slater, Dave Culbya

In this paper, we describe a pedagogy for an undergraduate programming course using Alice 3 and Java. We applied the educational theory of mediated transfer to develop a new version of the Alice system and accompanying instructional materials. The pedagogy was implemented and tested over two years. Student test scores in experimental course sections showed a dramatic jump of at least one letter grade over test scores in more traditional sections of the same course.

Influence of Alice 3: Reducing the Hurdles to Success in a CS1 Programming Course Tebring Daly

Learning the syntax, semantics, and concepts behind software engineering can be a challenging task for many individuals. This paper examines the Alice 3 software, a three-dimensional visual environment for teaching programming concepts, to determine if it is an effective tool for improving student achievement, raising self-efficacy, and engaging students. This study compares the similarities and differences between a Fundamentals of Programming course with and without Alice integrated into the curriculum. Both the treatment and control Groups are using the same Java materials, assignments, and exams. The treatment group also completes Alice activities for each programming concept throughout the course; as well as two Alice assignments.

Evaluating the Effectiveness of a New Instructional Approach (PDF) Barb Moskal, Deborah Lurie, Stephen Cooper

This paper describes the evaluation of an NSF-sponsored educational research project. The primary focus of this project was to develop and evaluate a course curriculum designed to improve retention and performance for “at risk” introductory computer science majors. The results of this research suggest that the newly developed course and curriculum materials did improve students’ performance and retention in computer science and their attitudes towards computer science.

Teaching Objects-First In Introductory Computer Science (PDF) Stephen Cooper, Wanda Dann, Randy Pausch, SIGCSE 2003

An objects-first strategy for teaching introductory computer science courses is receiving increased attention from CS educators. In this paper, we discuss the challenge of the objects-first strategy and present a new approach that attempts to meet this challenge. The new approach is centered on the visualization of objects and their behaviors using a 3D animation environment. Statistical data as well as informal observations are summarized to show evidence of student performance as a result of this approach. A comparison is made of the pedagogical aspects of this new approach with that of other relevant work.

Alice: a 3D Tool For Introductory Programming Concepts(PDF) Stephen Cooper, Wanda Dann, Randy Pausch, Journal of Computing Sciences in Colleges

In learning to program, many students struggle with developing algorithms, figuring out how to apply problem solving techniques in their programs, and with how to use common programming constructs. In this paper, we present a new tool that provides a possible approach to actively engage students in increasing their knowledge and skills in these areas. The tool is Alice, a 3-D interactive animation environment.

Alice: Lessons Learned from Building a 3D System for Novices (PDF) Matthew Conway, Steve Audia, Tommy Burnette, Dennis Cosgrove, Kevin Christiansen, Rob Deline, Jim Durbin, Rich Gossweiler, Shuichi Kogi, Chris Long, Beth Mallory, Steve Miale, Kristen Monkaitis, James Patten, Jeffrey Pierce, Joe Schochet, David Staak, Brian Stearns, Richard Stoakley, Chris Sturgill, John Viega, Jeff White, George Williams, and Randy Pausch, CHI 2000

We present lessons learned from developing Alice, a 3D graphics programming environment designed for undergraduates with no 3D graphics or programming experience. Alice is a Windows 95/NT tool for describing the time-based and interactive behavior of 3D objects, not a CAD tool for creating object geometry. Our observations and conclusions come from formal and informal observations of hundreds of users. Primary results include the use of LOGO- style egocentric coordinate systems, the use of arbitrary objects as lightweight coordinate systems, the launching of implicit threads of execution, extensive function overloading for a small set of commands, the careful choice of command names, and the ubiquitous use of animation and undo.

Alice: Rapid Prototyping System for Virtual Reality Randy Pausch (head), Tommy Burnette, A.C. Capeheart, Matthew Conway, Dennis Cosgrove, Rob DeLine, Jim Durbin, Rich Gossweiler, Shuichi Koga, Jeff White, IEEE Computer Graphics and Applications, May 1995

We are developing Alice, a rapid prototyping system for virtual reality software. Alice programs are written in an object-oriented, interpreted language which allows programmers to immediately see the effects of changes. As an Alice program executes, the author can update the current state either by interactively evaluating program code fragments, or by manipulating GUI tools. Although the system is extremely flexible at runtime, we are able to maintain high interactive frame rates (typically, 20-50 fps) by transparently decoupling simulation and rendering. We have been using Alice internally at Virginia for over two years, and we are currently porting a “desktop” version of Alice to Windows 95. We will distribute desktop Alice freely to all universities via the World Wide Web

PhD Dissertations