skip to main content
10.1145/989863.989924acmconferencesArticle/Chapter ViewAbstractPublication PagesaviConference Proceedingsconference-collections
Article

Example-based programming: a pertinent visual approach for learning to program

Published:25 May 2004Publication History

ABSTRACT

Computer Science introductory courses are known to be difficult for students. Kaasboll [1] reports that drop-out or failure rates vary from 25 to 80 % world-wide. The explanation is related to the very nature of programming: "programming is having a task done by a computer" [2]. We can notice three internal difficulties in this definition:• The task itself. How do we define it, and specify it?• The abstraction process. In order to "have it done by..." students need to create a static model covering each task behavior.• The "cognitive gap". It is difficult for novice programmers to model the computer, and its "mindset", which is required to express the task model in a computer-readable way. The bad usability of programming languages increases this difficulty.The lack of interactivity in the editing-running-debugging loop is often pointed as an important aggravating factor for these difficulties. In the mid-seventies, Smith [3] introduced with Pygmalion another programming paradigm: Programming by Examples, where algorithms are not described abstractly, but are demonstrated through concrete examples. This approach involves several advantages for novices. It allows them to work concretely, and to express the solution in their own way of thinking, instead of having to embrace a computer-centered mindset. The programming process becomes interactive, and as PbE languages are "animated" languages, no translation from the dynamic process to any static representation is required.In this paper we investigate both the novice programmer and existing PbE languages, to show how visual and example-based paradigms can be used to improve programming teaching. We give some elements of a new Example-based Programming environment, called Melba, based on this study, which has been designed to help novice programmers learning to program.

References

  1. Kaasboll, J., Learning Programming,. 2002, University of Oslo.Google ScholarGoogle Scholar
  2. DUCHÂTEAU, C. From "DOING IT.." to "HAVING IT DONE BY ..": The Heart of Programming. Some Didactical Thoughts. in NATO Advanced Research Workshop "Cognitive Models and Intelligent Environments for Learning Programming". 1992. S Margherita, Italy.Google ScholarGoogle Scholar
  3. Smith, D. C., A Computer Program to Model and Stimulate Creative Thought. 1977, Basel: Birkhauser. 187p.Google ScholarGoogle Scholar
  4. Kahn, K., How Any Program Can Be Created by Working with Examples, in Your Wish is My Command, H. Lieberman, Editor. 2001. p. 21--44.Google ScholarGoogle Scholar
  5. Smith, D. C., Novice Programming comes of Age. Communications of the ACM, 2000. 43(3): p. 75--81. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Example-based programming: a pertinent visual approach for learning to program

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Conferences
          AVI '04: Proceedings of the working conference on Advanced visual interfaces
          May 2004
          425 pages
          ISBN:1581138679
          DOI:10.1145/989863

          Copyright © 2004 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 25 May 2004

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • Article

          Acceptance Rates

          Overall Acceptance Rate107of408submissions,26%

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader