An enticing environment for programming

From IOI Wiki
Jump to: navigation, search
Pub article.png
  • Article: An enticing environment for programming
  • Author(s): Tom Verhoeff
  • Journal: Olympiads in Informatics 4 (2010), 134-141

Abstract: While teaching a course on the foundations of informatics to non-CS students, the author wanted to offer a programming challenge without burdening the participants with the numerous details that typically accompany the use of practical programming languages and tools. In particular, there should be no need to install an editor and execution environment (compiler or interpreter). Furthermore, the programming language should be sufficiently simple and clean. However, the author did not want to design a completely new language with tools.

This article presents Tom's JavaScript Machine as an attempt at providing a simple and enticing environment for programming, and reports some experiences. Tom's JavaScript Machine is freely available on-line and only requires a web browser that supports JavaScript. It includes a simple 3D-variant of Turtle Graphics (for browsers that support the HTML5 canvas element) and an instructive programming challenge with extensive (inter)active hints.

The ideas behind Tom's JavaScript Machine can also be applied to create problem-specific environments for informatics contests. However, the current implementation still has some shortcomings that need to be addressed.

Keywords: programming tools, JavaScript, self-reproducing programs, study material development

Download: (free)