Teaching Children to Program
One of the major difficulties in the field of children and programming is to express intention in the programming language itself. Yet, the programming activity intends to reinforce creative thinking and problem solving skills that nowadays become more and more important. Although children are not programmers, they still have the desire to create and develop their own programs; especially those that have to do with games and simulations. With a suitable environment, we believe it bears a great potential to engage children in learning and enjoying their interaction with technology.
According to constructive learning theories, children learn while actively being engaged in problem solving activities. Constructionists have noted that, instead of embedding the educational part directly into the games, children can learn more and better by creating the games for themselves. Then, the opportunity to construct their own games facilitates the motivation to design and develop games and eventually learn how to program. In game-making activities, the children do not only act as players, but also as games producers. They start begin to develop computer literacy, knowledge about software tools and develop new ways of thinking and creativity.
Typically, children can polish their creative thinking and problem solving skills with the help of appropriate tools. But to develop suitable tools for children is not easy. Nearly all commercial and powerful programming environments are clearly inappropriate because they have been designed for formal learning rather than for exploration and discovery learning and are far to complication for children.
Since the early 60’s, numerous programming language environments have been built by researchers with the motive to make programming accessible to novice programmers of all ages. In the field of interaction design and children, the focus was on programming tools especially claimed to be designed for children.