Supporting Media Computation in Programming Education: A Class Library for Bitmap Processing Using Scala

Aleksi Lukkarinen

Research output: ThesisMaster's thesis

1221 Downloads (Pure)


The objective of the Thesis was to identify opportunities for applying Media Computation in four courses that teach introductory computer science and programming with the Scala programming language and are aimed at computer science majors at Aalto. Media Computation is an approach for contextualizing computer science and programming education to make it appear more interesting and motivating for students.

The main components of this thesis are (1) a classification of the currently available teaching contextualization methods for programming and computer science, with a focus on Media Computation; and (2) a research prototype which supports students by offering cognitive scaffolding and improves the presentation of bitmap-based media on the interactive Scala shell of Scala IDE.

The Thesis examines the foundation of contextualization and Media Computation in theories of motivation. This thesis formulates a classification that provides a coarse-grained overall picture of tool-based contextualization methods and a more fine-grained description of ways to integrate media inside integrated development environments, a form of Media Computation. In addition, on the basis of several textbooks that apply Media Computation, the Thesis presents a classification of current genres of Media Computation. Moreover, it reviews so[ware applications that have already been used, or would be suitable to be used, for Media Computation.

The research prototype consists of two Scala-based class libraries and a bespoke version of the Eclipse-based Scala IDE. The first of the class libraries, SMCL (Scala Media Computation Library), enables the actual bitmap processing. The latter one, in turn, offers an interface for the interactive Scala shell both to query SMCL for and to display metadata, such as bitmaps, that is related to the execution results of code fragments. SMCL enables both pixel- and compositing-based Media Computation with RGBA-formatted (red, green, blue, aplha) bitmaps. It also contains a simple bitmap viewer for cases in which the development environment cannot display bitmaps or does not support SMCL.

The requirements set for the prototype were almost fully realized, and a small-scale pilot testing proved the functionality offered by the prototype to be useful. With further development of the prototype it is most likely possible to produce a tool, with which programming education can be improved to be more diverse, interesting, and motivating.
Translated title of the contributionMedialaskentaa ohjelmointiopetukseen:: Scala-pohjainen kirjasto bittkarttojen käsittelyyn
Original languageEnglish
QualificationMaster's degree
Awarding Institution
  • Department of Computer Science
  • School of Science
  • Aalto University
  • Malmi, Lauri, Supervising Professor
  • Sorva, Juha, Thesis Advisor
  • Seppälä, Otto, Thesis Advisor
Award date23 May 2016
Place of PublicationEspoo, Finland
Publication statusPublished - 17 Jun 2016
MoE publication typeG2 Master's thesis, polytechnic Master's thesis


  • Scala, Media Computation, contextualized teaching, introductory programming education, motivation, bitmap, graphics, class library


Dive into the research topics of 'Supporting Media Computation in Programming Education: A Class Library for Bitmap Processing Using Scala'. Together they form a unique fingerprint.

Cite this