Aalto University, School of Science
Department of Computer Science and Engineering
The home networking market is growing rapidly and wireless technologies play an important role in the most home networks. This paper identifies and describes the main areas of networking. Using a service-oriented approach, we determine... more
This study focuses on CS minor students' decisions to drop out from the CS1 course. The high level of drop out percentage has been a problem at Helsinki University of Technology for many years. This course has yearly enrolment of 500-600... more
The educational impact of visualization depends not only on how well students learn when they use it, but also on how widely it is used by instructors. Instructors believe that visualization helps students learn. The integration of... more
In this paper, we present some experiences on using automatic assessment in large scale courses of introductory programming, data structures, and algorithms over a period of 10 years. Automatic assessment provides an effective method for... more
This paper presents results from three interrelated studies focusing on introducing TRAKLA2 to students taking courses on data structures and algorithms at the University of Turku and Åbo Akademi University in 2004. Using TRAKLA2 they got... more
Three decades of active research on the teaching of introductory programming has had limited effect on classroom practice. Although relevant research exists across several disciplines including education and cognitive science,... more
Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active... more
Many individual instructors-and, in some cases, entire universities-are gravitating towards the use of comprehensive learning management systems (LMSs), such as Blackboard and Moodle, for managing courses and enhancing student learning.... more
Visualization is a useful aid for understanding the working of algorithms. Therefore many interactive algorithm animation tools have been developed. However, students may misinterpret the visualization and therefore the correctness of... more
Automatic assessment of programming exercises has become an important method for grading students' exercises and giving feedback for them in mass courses. We describe a system called Scheme-robo, which has been designed for assessing... more
Interaction and feedback are key factors supporting the learning process. Therefore many automatic assessment and feedback systems have been developed for computer science courses during the past decade. In this paper we present a new... more
In this paper, we present a taxonomy of algorithm animation languages, and apply it to evaluate a set of current languages. The taxonomy can be used by algorithm visualization system designers as a tool to compare visualization system... more
The process of solving a programming assignment is generally invisible to the teacher. We only see the end result and maybe a few snapshots along the way. In order to investigate this process with regard to Parsons problems, we used an... more
Research into programming education has led to the development of a multitude of tools to support teaching and learning programming. The tools typically focus on a certain aspect of learning. Visualization tools support building... more
Atropos is a software tool for visualising concurrent program executions intended to help students debug concurrent programs and learn how concurrency works. Atropos supports a slicing debugging strategy by providing a visualisation of... more
In this article, we present a system intended to help students understand and debug concurrent Java programs. The system instruments Java classes to produce execution traces. These traces can then be used to construct a dynamic dependence... more
Several Web-based learning environments which can automatically give immediate feedback to the students have been reported within the past few years. The quality of feedback can be relatively high in these systems, but it does not achieve... more
Data structures and algorithms include abstract concepts and processes, which people often find difficult to understand. Examples of these are complex data types and pro. cedural encoding of algorithms. Software visualization can... more