A fundamental part of the first year of a computing degree is learning programming. In order to become good programmers, students need to be able to concentrate on understanding the problems that they are solving, techniques and algorithms. This can be impeded by the need to learn the syntax of a complex programming language. Teaching languages provide simple syntax, but students are often not happy learning a language which they do not see as having commercial applications.
This report details the design of a teaching language, Kenya, and a translation system for converting code written in the teaching language into Java code. This gives the progressing student a stepping stone to Java, whilst letting the beginner concentrate on the principles of good programming. The report also encompasses the design of a development environment for writing programs in this language.