About Me Blog The Project Final Report Links My Mentor

Papers and Links

Engaging Middle School Teachers and Students with Alice in a Diverse Set of Subjects pdf Susan H. Rodger, Jenna Hayes, Gaetjens Lezin, Henry Qin, Deborah Nelson, Ruth Tucker, Mercedes Lopez, Stephen Cooper, Wanda Dann and Don Slater, Fourtieth SIGCSE Technical Symposium on Computer Science Education, p.271-275, 2009.

This paper was a summary of the work done on the Alice project in the summer of 2008. It had some information on why the use of Alice is being encouraged. It can be used to introduce students to programming at a young age. It can also be used as a tool for teachers to teach a wide range of other subjects. This article addressed how it can be used to teach Language Arts/Literature, Social Studies/History, Art, and Technology/Programming. It gave some information on what concepts middle school students used when they had free time with Alice. It was found the students can start using Alice as young as in 3rd grade, going more in depth when they get to 5th grade.


Enhancing K-12 Education with Alice Programming Adventures pdf Susan H. Rodger, Maggie Bashford, Lana Dyck, Jenna Hayes, Liz Liang, Deborah Nelson, and Henry Qin, The 15th Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE 2010), Ankara, Turkey, 2010

This paper is a summary of the work done in 2009 on the Alice project. This paper also addressed why Alice is used and why there is currently a lack of interest in computer science. Tutorials were developed in Alice to get students started with the basics of Alice, making animation effects, creating objects, learning computer science concepts such as inheritance and variables, and making quizzes and games. Alice example worlds were created to educate students in two main areas: Math and Music. The Math worlds taught concepts about rounding, dimensions and area, and converting improper fractions. The music worlds involved identification of instruments, notes, scales. The article discussed what objects would be nice additions to Alice.


Alice: A 3-D Tool for Teaching Programming Concepts pdf W. Dann and R. Pausch. Presented at CCSCNE, Ramapo, NJ, April, 2000.

This paper discussed how Alice can be use to prepare students for programming. In introductory programming courses, there is usually a wide range of abilities of the students. It would be helpful for the teachers to look at what sort of skills the students are missing that do not do as well in CS classes, it is tempting to say that they simply do not have problem solving skills. However, there are some students who succeed in areas such as math but still are not strong problem solver in the specific way needed for programming. Students need to develop the skills to create an algorithm for solving problems. Another problem students have, especially when debugging, is figuring out where the program went wrong. This because it is difficult for them to visualize what step the program goes through. They can sometimes try tracing through the code but this sometimes leads to more confusion. Alice is a tool used to help students these two main issues. It helps them to develop the skills to create algorithms as well as visualize what the code does.

Ithaca College has a summer program for high school students which uses Alice to help students learn the concepts of programming and problem solving. Alice makes it easy for students to make 3D environment without having to write complicated code. It also shows students how to write methods and when it is necessary. For example, in order to make a bunny jump in Alice, there would be several instructions to be called. The student can then write a method called "hop" which causes all of those instruction any time the hop method is called. Alice also teaches students how to use functions and recursion. Recursion is often a difficult concept to grasp but makes it easy to visualize what is actually happening. Alice also has options to use mouse events and user input to make a program interactive. This is especially useful for creating games. Alice also makes it easy to see the state of an object. An Alice user can see the properties of an object such as color and location at any time.

The article then discussed some issues with Alice. However, since the Article is from 2010, some of these issues are outdated. There were multiple issues discussed that are due to the fact the Alice runs multiple processes at the same time. However, in the current version, each line is executed separately and in order unless it is put inside of a DoTogether loop. This, I believe, would alleviate most of the problems discussed in the article.


Developing Algorithmic Thinking With Alice pdf W. Dann and R. Pausch. Presented at ISECON, Philadelphia, PA, November, 2000.

This article discussed the benefits of Alice, mainly how it helps develop skills in creating algorithms. With the rate at which technology is developing, it is becoming more important for people to become Fluent in Information Technology (FIT). One main problem for students learning to program, is that they do not know how to develop good algorithms. Alice focuses on the need to involve the artistic side of the brain as well as the logical side. It does this by providing a 3D visualization for any project that is created. The basics of algorithmic thinking can be taught with simple lessons using Alice. For example, if a world has a snowman and a stool, the students could be assigned to move the snowman to the stool. The students would probably do this by having the snowman move forward several times until it gets to the stool. The next requirement would be to have the snowman move to the stool no matter how far away it is. They could do this by using the distanceTo function and a loop to call move that many times.

There are several benefits to using Alice. It makes it easy to see immediate feedback. When writing a program using a regular programming language, a student has to write code to create output if they want to see anything. With Alice, it is automatic. Alice also gets students excited about programming. They often spend more time than is required modifying their projects to make the animation seem more realistic. It also makes it easier to see the state of each object in the world. Students also tend to work well in groups, creating better projects than they do individually. One thing that makes Alice simple is that each instruction is very similar to an English sentence. Alice also teaches students object-oriented concepts such as inheritance and information hiding.


Using visualization to teach novices recursion pdf W. Dann and R. Pausch. Presented at ITiCSE 2001, Canterbury, England, July, 2001.

This paper discusses the overall benefits of using Alice as an introduction to programming as well as specifically how it can be used to teach recursion. Recursion is one of the most difficult programming concepts to learn. The article gave two example recursion problems in Alice. The first involves a Rabbit chasing a butterfly. In this example, the base case is when the rabbit is close enough to the butterfly and the chase ends. If that is not the case, the rabbit moves toward the butterfly while the butterfly flies in a random new direction. Then the whole method is recursively called again. The second example is a little more complicated but involves developing an algorithm for solving the Towers of Hanoi problem. When a recursive call is made in Alice, the SetAlarm method is used, which takes as parameters the method and wait time. If this wait time is not used, Alice sometimes run several instructions at once, which is usually not what is intended. Coming up with an algorithm to decide how long to wait each time can be very difficult. However, it also helps the students to understand recursion even more. In their experience using these methods in programs at Ithaca College, the students find it very easy to use recursion.
Using 3D Animation Programming in a Core Engineering Course Seminar pdf W. Dann and R. Pausch. Presented at Program Visualization Workshop, Aarhus, Denmark, June, 2002.

This paper was written the instructors of a 3 week seminar teaching Alice to engineering students at Bucknell University. The course was mainly for students who had no previous programming experience. The seminar consisted of a total of 5 hours of lectures and labs each week. During the 3 week period, several computer science concepts were taught to a group in which two-thirds of the students had little or no programming experience. These concepts included objects, methods, loops, parameters, inheritance, events, and conditionals (If/Else). These were all taught using Alice. It also encouraged group collaboration. Groups would assign certain members to work on a the movement and animation of a particular object. They would then put all of their objects together into one project. At the end of the seminar, several of the students said it had increased their interest in computer science. Most of the students also said they would recommend the seminar to other students.
Evaluating the Effectiveness of a New Instructional Approach pdf B. Moskal and D. Lurie. SIGCSE 2004, Norfolk, Va., March, 2004.

This paper presents the information found from a study done which evualuated Alice as a preparational tool for CS classes. The study was done at Saint Joseph's University and Ithaca College. The researchers had noticed the performance gap between CS students with strong backgrounds in Math and CS and those with limited experience (at risk students). They were hoping to bring the less experienced students to a level where they could learn to program as well as the other students. The students were put into three groups. The first group had the at risk students who did take the Alice course. The second group were at risk students who did not enroll. The third group consisted of students who were not at risk or low risk and did not enroll in the course. The performance in later CS classes, retention rates, and the attitudes toward CS were monitored. It was found that the grades of the high risk students taking the Alice course were about the same as low risk students. This was a great improvement over the at risk students who did not take the course. Learning Alice helped the retention rates of the at risk students so much that their rates were even higher than the low risk students. The attitudes of the control group toward programming were also higher in most areas that were studied.
Camping with Alice pdf Bonita Adams, Alka Harriger, and Sandra Doran. Alice Symposium, Duke University, Durham, NC, June 17 2009.

This article gave information on the benefits of having after-school programs which teach Alice. It discussed various aspects such as after-school safety, creativity, critical thinking, and self confidence. It also gave some tips one how to get a program like this started.
Critical Thinking with Alice: A Curriculum Design Model for Middle School Teachers pdf Marie Sontag. Alice Symposium, Duke University, Durham, NC, June 17 2009.

This paper discussed how Alice can be used to teach students core subjects as well as 21st century skills. The instructional model it uses is called Critical Thinking with Alice. It uses the construct of TPACK (technology, pedagogy, and content knowledge). It mentioned that after creating an Alice animation, students who had previously shown little or no interest in social studies could barely contain their excitement to share their 3D worlds with the class. TPACK focuses on two main processes of learning: social-connectedness and cognitive-connectedness schemata. Alice supports both of these processes.
Do Roadshows Work? Examining the Effectiveness of Just Be Joseph A. Cottam, Samantha S. Foley, and Suzanne Menzel. Indiana University, Bloomington, IN.

This article discussed the results of an outreach program called Just Be. The program was started by the Women in Informatics and Computing (WIC) group at Indiana University. The program addresses stereotypical attitudes towards computing and tries to shift them to a more positive attitude. They are very carefull because sometimes discussing stereotypes can actually lead to enforcing them.

The presenters usually start of by introducing themselves and talking about what they do in computing and what else they enjoy doing. This helps the students see that they are well rounded and there are many different career possibilities in computing. Then the students' stereotypes of computing professionals are discussed. Pictures of various professionals are shown and the students are asked to identify what the people do based on their appearances. After this discussion, the students realize that the stereotypes they have, are not always true. Then the presenter discusses different occupations that employ computing. Then some group activities are done and the students are asked for input. They emphasize that a variety of viewpoints are needed to come up with the best solutions. They finish by giving the students information on careers in computing.

To evaluate the results of this program, a survey is given to the participants before this presentation and the same one is given after. These surveys showed that Just Be created more positive views toward computing and reduced the stereotypes. The effect was especially strong for girls, who tended to have more negative views and stereotypes to begin with.


Connecting K-16 Curriculum & Policy: Making Computer Science Engaging, Accessible and Hospitable for Underrepresented Students Joanna Goode. SIGCSE 2010, Milwaukee, Wisconsin, March 2010

This paper discussed a program called Exploring Computer Science. Results from a one year pilot study suggest that the program increased interest in computing for diverse groups. In Los Angeles, an AP readiness program was launched so AP Computer Science students could go to the UCLA campus and recieve supplemental instruction. It was also a place for professional development and collaboration for the teachers. This greatly increased the number of students enrolled in APCS especially for underrepresented groups. Instructors soon learned, however, that the learned curve in this class was too steep. Another class was needed to engage students in CS topics. It also needed to be a college-preparatory course so that students would find it worthwhile to take. They started making curriculum for this course. During the pilot course, almost 300 students enrolled in 7 different high schools. Almost have were female and a large portion were African American or Latino. It was found that the students attitudes toward Computer Science were positively changed in many ways.


Digital Visualization Tools Improve Teaching 3D Character Modeling Mark van Langeveld and Robert Kessler. SIGCSE 2010, Milwaukee, Wisconsin, March 2010

This paper compared the use of digital visualization tools to the use of traditional visualation tools such as anatomy drawings and 3D models. The experiment was done in a course taught at the University of Utah. The course was taught to both Art majors who had little technology experience and to Techology or Engineering majors who had little Artistic experience. The purpose of the course was to introduce students from both areas to 3D modeling. One section of the course was taught using traditional visualation tools. The other section was taught using digital visualization tools. The results showed that the digital tools greatly helped the students to understand the form, structure, and anatomy of anthropomorphic characters.


Expanding the Frontiers of Computer Science: Designing a Curriculum to Reflect a Diverse Field Mehran Sahami, Alex Aiken, and Julie Zelenski. SIGSE 2010, Milwaukee, Wisconsin, March 2010

This paper described the motivation for and the design of a new Computer Science curriculum at Stanford University. The field of Computer Science has been rapidly changing in recent years. The goal at Stanford was to reform the curriculum to adjust to these changes. They also wanted to increase students' awareness of the wide breadth of career options with a CS major. An increase in CS majors was not one of the goals but it ended up happening anyways. It led to an increase of over 40% in the number of CS major declarations. The new structure had core courses that everyone must take, different tracks each CS major could choose from, each with its own additional courses, and a list of electives.