The Psychology of Expertise: Cognitive Research and Empirical AI

By Robert R. Hoffman | Go to book overview

16
The Programmer's Burden: Developing Expertise in Programming

Robert L. Campbell, Norman R. Brown, and Lia A. DiBello

Our goal in this chapter is to describe and illustrate a developmental approach to programming knowledge. We argue that the prevailing practice of making binary noviceexpert comparisons is of little value in the psychology of programming. We argue instead for a constructivist developmental approach, which uses Piagetian structural interviews and longitudinal tape diaries to gather information, and which builds multiple-level sequence models to describe the development of programming skill. With clinical interviews, we have elicited information about the learning histories of expert programmers. With tape diaries, we have followed the course of learning by individual programmers for up to 2 months. From these sources, we propose a developmental sequence of types of problems that programmers try to solve when learning the Smalltalk language.

We believe that our approach can lead to more detailed developmental descriptions of programming knowledge, to improvements in programming education, and to the construction of expert systems to aid in learning to program. This chapter presents the case for a developmental approach to expertise in programming and, in a schematic way, charts the evolution of our current research. We establish the importance of expertise in programming as a research area and criticize the current reliance on a binary novice-expert paradigm in psychological research in programming. We describe the basic assumptions of a constructivist developmental approach to expertise in programming.

Because there were no prior developmental analyses of programming skill for us to test, we chose an exploratory research strategy. In Study 1, we gave structured interviews to expert professional programmers in a range of specialties. We found that expert programmers are often able to describe major qualitative changes that occurred in their development.

We found these results encouraging but realized that our investigations needed a sharper focus. It became clear to us that programming is not a unitary developmental domain. We decided to focus on object-oriented programming (specifically the Smalltalk language) as our domain. We found object-oriented programming interesting in part because of widespread reports that experienced procedural programmers "become novices again" when learning Smalltalk. We also wanted to try a prospective, longitudinal research technique that might uncover details of programmers' learning paths likely to be missed in retrospective interviews.

In Study 2, we asked professional programmers who were beginning to learn Smalltalk to keep "tape diaries" of all of their work sessions for periods of up to 2 months. From the tape diaries, we were able to document in detail the programming tasks that the programmers worked on and the difficulties they reported. We found that our professional programmers used learning strategies that required them to take up the "programmer's burden" of understanding what happens in each line of Smalltalk code. Such strategies run counter to the incen

-269-

Notes for this page

Add a new note
If you are trying to select text to create highlights or citations, remember that you must now click or tap on the first word, and then click or tap on the last word.
One moment ...
Project items

Items saved from this book

This book has been saved
Highlights (0)
Some of your highlights are legacy items.

Highlights saved before July 30, 2012 will not be displayed on their respective source pages.

You can easily re-create the highlights by opening the book page or article, selecting the text, and clicking “Highlight.”

Citations (0)
Some of your citations are legacy items.

Any citation created before July 30, 2012 will labeled as a “Cited page.” New citations will be saved as cited passages, pages or articles.

We also added the ability to view new citations from your projects or the book or article where you created them.

Notes (0)
Bookmarks (0)

You have no saved items from this book

Project items include:
  • Saved book/article
  • Highlights
  • Quotes/citations
  • Notes
  • Bookmarks
Notes
Cite this page

Cited page

Style
Citations are available only to our active members.
Sign up now to cite pages or passages in MLA, APA and Chicago citation styles.

(Einhorn, 1992, p. 25)

(Einhorn 25)

1

1. Lois J. Einhorn, Abraham Lincoln, the Orator: Penetrating the Lincoln Legend (Westport, CT: Greenwood Press, 1992), 25, http://www.questia.com/read/27419298.

Cited page

Bookmark this page
The Psychology of Expertise: Cognitive Research and Empirical AI
Table of contents

Table of contents

Settings

Settings

Typeface
Text size Smaller Larger
Search within

Search within this book

Look up

Look up a word

  • Dictionary
  • Thesaurus
Please submit a word or phrase above.
Print this page

Print this page

Why can't I print more than one page at a time?

Full screen
/ 395

matching results for page

Cited passage

Style
Citations are available only to our active members.
Sign up now to cite pages or passages in MLA, APA and Chicago citation styles.

"Portraying himself as an honest, ordinary person helped Lincoln identify with his audiences." (Einhorn, 1992, p. 25).

"Portraying himself as an honest, ordinary person helped Lincoln identify with his audiences." (Einhorn 25)

"Portraying himself as an honest, ordinary person helped Lincoln identify with his audiences."1

1. Lois J. Einhorn, Abraham Lincoln, the Orator: Penetrating the Lincoln Legend (Westport, CT: Greenwood Press, 1992), 25, http://www.questia.com/read/27419298.

Cited passage

Welcome to the new Questia Reader

The Questia Reader has been updated to provide you with an even better online reading experience.  It is now 100% Responsive, which means you can read our books and articles on any sized device you wish.  All of your favorite tools like notes, highlights, and citations are still here, but the way you select text has been updated to be easier to use, especially on touchscreen devices.  Here's how:

1. Click or tap the first word you want to select.
2. Click or tap the last word you want to select.

OK, got it!

Thanks for trying Questia!

Please continue trying out our research tools, but please note, full functionality is available only to our active members.

Your work will be lost once you leave this Web page.

For full access in an ad-free environment, sign up now for a FREE, 1-day trial.

Already a member? Log in now.