ACM Home Page
Please provide us with feedback. Feedback
Digital Library logoTake a look at the new version of this page: [ beta version ]. Tell us what you think.
Example-based programming: a pertinent visual approach for learning to program
Full text PdfPdf (184 KB)
Source AVI archive
Proceedings of the working conference on Advanced visual interfaces table of contents
Gallipoli, Italy
SESSION: Designing better visual interfaces table of contents
Pages: 358 - 361  
Year of Publication: 2004
ISBN:1-58113-867-9
Authors
Nicolas Guibert  ENSMA - University of Poitiers, Futuroscope, France
Patrick Girard  ENSMA - University of Poitiers, Futuroscope, France
Laurent Guittet  ENSMA - University of Poitiers, Futuroscope, France
Sponsors
: Regione Puglia
: Provincia di Lecce
: Comune di Corigliano d'Otranto
: Camera di Commercio di Brindisi
: Monte dei Paschi di Siena
: Università degli Studi di Bari
: Università degli Studi di Lecce
SIGMULTIMEDIA: ACM Special Interest Group on Multimedia
: Università degli Studi dell'Aquila
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 8,   Downloads (12 Months): 64,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/989863.989924
What is a DOI?

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

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Kaasboll, J., Learning Programming,. 2002, University of Oslo.
 
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.
 
3
Smith, D. C., A Computer Program to Model and Stimulate Creative Thought. 1977, Basel: Birkhauser. 187p.
 
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.
5

Collaborative Colleagues:
Nicolas Guibert: colleagues
Patrick Girard: colleagues
Laurent Guittet: colleagues