The MCM Theater package was developed as a vehicle to teach computer programming to older middle students as well as high school students. Its concepts are heavily influenced by Turtle Logic, which has been developed at MIT to teach programming to even younger students. MCM Theater enables students to develop visually appealing programs with a minimal amount of Java code. The hand above, for example, that draws a series of squares, is realized by a program with eight statements only. Students can post their programs as applets on the Internet or compile them as screensavers for Windows and Unix platforms.

MCM Theater is a small self contained package that contains just enough features to enable beginning programmers whithout distracting them with too many features and options from the task at hand. It provides an excellent platform for an introductory course to Java programming.

MCM Theater and the software it depends upon is free of charge. Students can store the package as well as their own programs on a JumpDrive and carry their work between school and home. Programs developed can be setup to run as applets in any browser, as screensavers on Windows and Unix platforms, and as applications, which is useful while developing and testing.

Whether a program is visually appealing depends in no small part on the images and colors used. This opens opportunities in cross curricular teaching, connecting programming with art and image editing. The moving boat collage in the gallery is such an example.

MCM Theater uses a theater metaphor. Each program contains a Stage which shows Actors moving about. Their movement is programmed in terms of move forward and turn statements, which are intuitively understandable actions. Thus, when students are presented with a small example program, they are immediately ready to dive into the edit-compile-test cycle of programming.

Students can be lead through a series of examples that teach them about parameterization, control structures, methods, variables and state, and even the concepts of object oriented programming. First steps include setting an Actor's trail width or color, changing an actor's movement speed,, asigning different shapes in various sizes, ... In each further step students produce ever more complex pattern drawing actors. Since there are no limits to what one can do with the Java programming language MCM Theater can be stretched to teach the most able students. At the same time its basic concepts are intuitive enough to accomodate novice programmers as well.