Reichert, Raimond: Theory of Computation as a Vehicle for Teaching Fundamental Concepts of Computer Science. Dissertation, ETH Zürich, 2003
In today’s Information Society, knowledge of the fundamentals of information and communication technology (ICT) is a key qualification and must become part of general education. The concepts of formalization and programming are at the heart of computer science. Teaching these concepts as part of general education is a difficult challenge. Existing approaches are typically time-consuming, yet time is a scarce resource in school. There is a need for intuitive, user-friendly, high-quality educational software environments to support teaching and learning the basics of ICT within the limited time available. Our approach uses the theory of computation as a vehicle for teaching selected fundamentals of computer science. The main contributions of this dissertation are the Kara programming environments described in this text. One goal of the environments is to allow users to write their first program successfully within an hour. The environments are based on finite state machines and offer:
The widespread use of the Kara environments in many schools at different levels, and the highly positive feedback from teachers and students, have convinced us that our theory-based approach is successful and worth pursuing.