Overview
- Editors:
-
-
Enrica Lemut
-
Istituto Matematica Applicata, C.N.R., Genova, Italy
-
Benedict Boulay
-
School of Cognitive and Computing Sciences, University of Sussex, Falmer, Brighton, UK
-
Giuliana Dettori
-
Istituto Matematica Applicata, C.N.R., Genova, Italy
Access this book
Other ways to access
Table of contents (25 papers)
-
Front Matter
Pages I-VIII
-
Introduction
-
- Enrica Lemut, Benedict du Boulay, Giuliana Dettori
Pages 1-5
-
Understanding Programming
-
General Theory of Programming Knowledge
-
- Janine Rogalski, Renan Samurçay
Pages 6-19
-
-
-
-
-
Theory of Particular Aspects of Programming Knowledge
-
-
- Francisco C. Simplicio-Filho
Pages 80-93
-
-
-
Environments for Learning Programming
-
Intelligent Tutoring Systems
-
-
- Haider Ramadhan, Benedict du Boulay
Pages 125-134
-
- Albert T. Corbett, John R. Anderson
Pages 135-144
-
- Mark K. Singley, John M. Carroll, Sherman R. Alpert
Pages 145-155
-
- M. Felisa Verdejo, Isabel Fernández, M. Teresa Urretavizcaya
Pages 156-171
-
- Simon P. Davies, Adrian M. Castell
Pages 172-184
-
Pure Programming Environments
-
- Gordon I. McCalla, Jim E. Greer
Pages 185-197
-
- Paola Forcheri, Maria Teresa Molfino
Pages 198-209
-
About this book
At present, there is a general consensus on the nature of
learning programming, but there are different opinions on
what forms an effective environment for it. It is generally
recognized that the development of a mental model is a
formidable task for the student and that learning
programming is a complex activity that depends heavily on
metacognitive skills.
This book, based on a NATO workshop, presents both pure
cognitive models and experimental learning environments, and
discusses what characteristics can make a learning model
effective, especially in relation to the learning
environment (natural or computerized). The papers cover
cognitive models related to different aspects of
programming, classes of learners, and types of environment,
and are organized in three groups: theoretical and empirical
studies on understanding programming, environments for
learning programming, and learning programming in school
environments.
Comprehension, design, construction, testing, debugging, and
verification are recognized as interdependent skills, which
require complicated analysis and may develop independently,
and indifferent orders, in novices. This book shows that
there is unlikely to be asingle path from novice to expert
and that the structure of the final product (the program)
may not constrain the process by which it comes into being
as much as some would advocate.