J.F. Pane and B.A. Myers, "Usability Issues in the Design of Novice Programming Systems," Carnegie Mellon University, School of Computer Science Technical Report CMU-CS-96-132, Pittsburgh, PA, August 1996, 85 pages.
In addition to providing a checklist of issues that should be considered in the design of future systems, this report can be used to help researchers identify fruitful topics of future novice programming research.
I haven't read all of this yet (it is way to long for my current work schedule) but some items caught my attention: Choose an Appropriate Metaphor, Effectiveness of Notation is Task Dependent, Support Direct Manipulation and Definition by Example, Choosing a Paradigm, Modularity and Abstraction, Support Secondary Notation, and Aesthetic and Minimalist Design.
Each topic is classified according to its source of justification, be it expert opinion or empirical studies. This is vrey helpful. Each topic also includes a list of references.
But perhaps the most important thing is that each suggestion includes a section the lists exceptions to the proposed guideline.
Designing guidelines for language and IDE design is hard to do well, it seems these guys managed to stay clear of some of the obvious traps.
Posted to teaching/learning by Ehud Lamm on 12/3/02; 2:10:57 AM