EVALUATION OF THE EXAMPLE USAGE FOR THE PROGRAMMING LEARNING IN THE MELBA ENVIRONMENT Loé SANOU, Sybille CAFIAU, Patrick GIRARD, Laurent GUITTET LISI-ENSMA (Laboratory of Applied Computer Science) 1 avenue Clement Ader - BP 40109 – Futuroscope, France ABSTRACT This paper describes the validation or an example-based approach to learn programming. This validation was made by a controlled experiment in real conditions. With a computer assisted learning environment, MELBA (Metaphors-based Environment to Learn the Basic of Algorithmic), users were required to follow an experimental protocol that describes programming through examples. The evaluation focused not only on the feasibility and ease of programming tasks, but also on the acquisition procedural than declarative programming skills, which could be easily reusable with another tool. KEYWORDS Programming by example, Computer-dided learning and teaching, Experimentations, Evaluation, Usability, User testing. 1. INTRODUCTION Many studies have shown that it is difficult for a novice programmer to realize programs (Boulay 1989). The programming includes not only learning a programming language, but also the ability to create an algorithm for solving the problem. It concerns three types of knowledge (Blackwell 2002): syntactic, semantic and schematic. The syntactic knowledge covers the lexical and syntactic elements of the programming language. The semantic knowledge refers to the concepts of variables, appeals, and object instantiation. Schematic knowledge uses previous knowledge to define generic structures of solution. To assist the novice programmer in learning programming, several techniques have emerged including learning programming “based on the example". The programming “based on the example” is characterized by the manipulation of concrete examples to build a program (Lieberman 2001). The use of an approach based examples for learning to program is the hallmark of programming called "practical". In contrast to the classic "abstract" approach, which uses a posteriori games of tests to evaluate a finished program, "an approach based on the example" allow you to specify the lead in the first. The context objects are either used to provide a progressive assessment (known as visualization program and programming with example), or manipulated by the programmer to create the program (programming on example). In the latter case, the program may be represented built literally, through a visualization tool or completely hidden (Booth 1992). Following research carried out in order to identify problems related to programming (Boulay 1989; Canfield et al. 2001), solutions have been proposed to facilitate the learning of programming, both in terms of methodology and on the tools (Soloway 1985; Kahn 2001). The result is the provision of user environments integrating various techniques to make a simple abstraction of different concepts. Most of these environments provide examples on which the novice programmer must rely to produce her programs. Several studies have demonstrated the relevance of these systems, especially in terms of the final result. Learners, especially pure novices benefit greatly from the use of the tool. But learners do appreciate this method? The systems can be used in a mode where the example is the support of learning. Are they being used in this mode (Pane 2002)? To answer these questions, we conducted a study in the context of an introductory course in programming. This study focused on the learning environment for programming “based on example" MELBA (Metaphors-based Environment to Learn the Basic of Algorithmic) (Guibert 2006), which has been used 3 years ago in the teaching at University of Poitiers.