Modern web technologies have enabled new ways of producing interactive learning content. This content can be embedded into course materials on the web. Still the process to produce and distribute online activities is challenging for instructors. In this thesis, we introduce three new systems to support the process of producing learning content, distributing it, and letting instructors customize the content to their particular teaching goals and contexts. More specifically, we explore the topic in the domain of computer science education. We use program animations as a central theme. In addition to describing the technical aspects, we report preliminary results from CS1 courses which have used these systems to provide interactive content for learners. The first part of the thesis presents the Jsvee library for creating program animations which gives a visual representation of a notional machine and shows how the program state changes when a program is executed step-by-step. Animations are aimed at novice programmers who are learning the execution model. The library supports expression-level visualization, and because of its extensibility, it can support programming language specific visualizations.In addition to the technical discussion, we present preliminary results how learners in two different CS1 courses used the animations made with Jsvee. We use automatically collected log files as a primary data source to analyze the usage. Although learners did not receive any points, over 80% of novices voluntary viewed animations throughout the CS1 course which tightly integrated over 50 animations with other course materials. The second part introduces Acos server for hosting and distributing reusable online learning content. We describe a new way to reduce the workload of developers by separating the content and the required communication between the content and learning management systems (LMS). Acos acts as a proxy which provides a uniform interface for the content but can use different interoperability protocols to communicate with the LMSs. In this way, the same content can be used with multiple LMSs, and the developer does not have to know which interoperability protocol is in use between Acos and the LMS. Acos has been successfully used to provide interactive content for CS1 courses, and the initial feedback from developers is promising. The third part presents the Kelmu toolkit to tailor existing interactive animations. The animations are typically generic and often automatically produced. By using Kelmu, instructors can add, for example, textual explanations on top of the original animation to emphasize the integral parts of the animation and give explanations which are important in the instructor's pedagogical context. This kind of signaling is supported by multimedia learning principles to enhance learning. Log data and eye-tracking traces give preliminary results that learners read annotations and pay more attention when annotations are present.
|Translated title of the contribution||Ohjelma-animaatioiden luominen, mukauttaminen ja jakelu|
|Publication status||Published - 2017|
|MoE publication type||G5 Doctoral dissertation (article)|
- program animation
- program visualization
- expression-level visualization
- online learning activities