Experiences in using animations in introductory computer science lectures (original) (raw)

Integrating algorithm animation into a learning environment

Computers & Education, 1997

Algorithm animation would seem to be a useful tool for teaching algorithms. However, previous empirical studies of using algorithm animation have produced mixed results. This paper presents an empirical study in which the subjects programmed the algorithm which they had seen animated. The results of the experiment indicate that combining the animation with the implementation of the algorithm was an effective way to teach the animation, and also produced transfer effects for general recursion problems.

Automatic generation of algorithm animations in a programming environment

30th Annual Frontiers in Education Conference. Building on A Century of Progress in Engineering Education. Conference Proceedings (IEEE Cat. No.00CH37135), 2000

The design and analysis of algorithms is one of the core fields of computer science, and their study is an intellectually demanding task. Animations are promising educational aids for the study of algorithms, but the main obstacle for an extensive educational use is the technical difficulty of producing them. This fact dissuades many teachers and most students from building animations. In the paper, we report the facilities for algorithm animation we have integrated in a functional programming environment. One of our main concerns was to simplify the generation of animations to the extent of being as simple as handling an office application. In addition, the integration of animation generation with the programming environment produces synergy benefits. From the point of view of user interaction, our programming environment allows producing automatically, graphical, customizable visualizations of different instants of the algorithm execution. In a second step, an animation is built by arranging sequentially such visualizations, as a cartoon.

Integrating animations into courses

1996

Abstract This paper describes two ways we have integrated algorithm animations into several computer science courses. First, we use previously existing animations during lectures to aid in explaining algorithms, and second, our students write programs with animations. Different types of animations are written depending on the level of the student.

AlgorithmExplorer: a student centered algorithm animation system

Proceedings 1996 IEEE Symposium on Visual Languages

Algorithm animation can be an efective tool for understanding the behavior of programs. However, most approaches towards algorithm animation have focused on evermore sophisticated graphical depictions of programs, and not on the process of how students can develop and make use of animations in an educational setting. In this paper we describe the AlgorithmExplorer, a flexible algorithm animation system targeted towards classroom, laboratory and individual student use. The AlgorithmExplorer provides an open system architecture for integrating student programs, mechanisms for supporting user input, and a three tiered animation command interface that provides rich animation constructs while also supporting a wide range of student programming abilities.

Algorithmic Animation in Education—Review of Academic Experience

Journal of Educational Computing Research, 2008

This article is a review of the pedagogical experience obtained with systems for algorithmic animation. Algorithms consist of a sequence of operations whose effect on data structures can be visualized using a computer. Students learn algorithms by stepping the animation through the different individual operations, possibly reversing their effect. Algorithmic animation seems to improve the student's understanding of algorithms, but mainly when they can become active participants, not just spectators. Students who write their own algorithmic animations are more engaged and can profit more from them. At the end of this article, we extract some consequences for the development of future algorithmic animation systems.

Evaluating animations as student aids in learning computer algorithms

Computers & Education, 1999

We conducted two experiments designed to examine whether animations of algorithms would help students learn the algorithms more eectively. Across the two studies we used two dierent algorithms Ð depth-®rst search and binomial heaps Ð and used two dierent subject populations Ð students with little or no computer science background and students who were computer science majors Ð and examined whether animations helped students acquire procedural and conceptual knowledge about the algorithms. The results suggest that one way animations may aid learning of procedural knowledge is by encouraging learners to predict the algorithm's behavior. However, such a learning improvement was also found when learners made predictions of an algorithm's behavior from static diagrams. This suggests that prediction, rather than animation per se, may have been the key factor in aiding learning in the present studies. These initial experiments served to highlight a number of methodological issues that need to be systematically addressed in future experiments in order to fully test the relationship between animation and prediction as well as to examine other possible bene®ts of animations on learning.

Algorithms Visualization Tool for Students and Lectures in Computer Science

arXiv (Cornell University), 2013

The best way to understand complex data structures or algorithm is to see them in action. The present work presents a new tool, especially useful for students and lecturers in computer science. It is written in Java and developed at Bordeaux University of Sciences and Technology. Its purposes is to help students in understanding classical algorithms by illustrating them in different ways: graphical (animated), formal, and descriptive. We think that it can be useful to everyone interested in algorithms, in particular to students in computer science that want to beef up their readings and university lecturers in their major effort to enhance the data structures and algorithms course. The main new thing of this tool is the fact of making it possible to the user to animate their own algorithms.