Towards a theory of the cognitive processes in computer programming
International Journal of Human-Computer StudiesPublished 1 August 1999
Ruven Brooks
Citations193
SJR quartileQ1
SJR score1.39
SNIP2.34
Generate an AI Snapshot to get a quick, structured summary of this paper.
Study Snapshot
ObjectiveStudy objective
MethodsResearch methodology
PopulationPopulation studied
Sample sizeSample sizes
OutcomesStudy outcomes here
ResultsStudy results comes here
LimitationsResearch study limitations comes here
A concise AI-generated summary of the paper will appear here once you click Generate AI Snapshot.
Abstract
While only in the past ten years have large numbers of people been engaged in computer programming, a small body of studies on this activity have already been accumulated. These studies are, however, largely atheoretical. The work described here has as its goal the creation of an information processing theory sufficient to describe the findings of these studies. The theory postulates understanding, method-finding, and coding processes in writing programs, and presents an explicit model for the coding process.
Keywords
PsychologyComputer Science
Cognitive PsychologyUnderstanding natural language
2,802 Citations1972Terry Winograd
A computer system for understanding English that contains a parser, a recognition grammar of English, programs for semantic analysis, and a general problem solving system based on the belief that in modeling language understanding, it must deal in an integrated way with all of the aspects of language—syntax, semantics, and inference.
Psychology Press eBooksHuman Associative Memory
2,036 Citations2013John R. Anderson, Gordon H. Bower +1 more
Thought and Choice in Chess
1,859 Citations1978Adrianus Dingeman de Groot
Communications of the ACMThe humble programmer
686 Citations1972Edsger W. Dijkstra
As a result of a long sequence of coincidences I entered the programming profession officially on the first spring morning of 1952, and as far as I have been able to trace, I was the first Dutchman to do so in my country.
Software Practice and ExperienceAn empirical study of FORTRAN programs
682 Citations1971Donald E. Knuth
The principal conclusion which may be drawn is the importance of a program ‘profile’, namely a table of frequency counts which record how often each statement is performed in a typical run; there are strong indications that profile‐keeping should become a standard practice in all computer systems, for casual users as well as system programmers.
Cognitive PsychologyA simulation of memory for chess positions
437 Citations1973Herbert A. Simon, Kevin Michael Gilmartin
An information-processing model, MAPP, implemented as a computer program, that simulates the processes subjects use to remember and reproduce chess positions they have seen briefly and shows good agreement with the performance of strong chess players in identical tasks.
DSpace@MIT (Massachusetts Institute of Technology)A Computational Model of Skill Acquisition
341 Citations1973Gerald Jay Sussman
Munich Personal RePEc Archive (Ludwig Maximilian University of Munich)Description and Theoretical Analysis (Using Schemata) of Planner: A Language for Proving Theorems and Manipulating Models in a Robot
318 Citations1972Carl Hewitt
PANNER is a formalism for proving theorems and manipulating models in a robot built out of a number of problem-solving primitives together with a hierarchical multiprocess backtrack control structure.
Human Factors The Journal of the Human Factors and Ergonomics SocietyAn Exploratory Study of Computer Program Debugging
136 Citations1974John D. Gould, Paul J. Drongowski
The results suggest that programmers often identify the intended state of a program before they find the bug, and that debugging was at least twice as efficient the second time programmers debugged a program (though with a different bug in it).
International Journal of Man-Machine StudiesHuman Errors in Programming
136 Citations1974Edward A. Youngs
By collecting protocol data from 42 programmers, some insights concerning the relative importance of various programming errors are achieved and are interpreted in terms of programmer experience and the design and redesign of general purpose, compiler-type programming languages.
International Journal of Human-Computer StudiesPsychological Evaluation of Two Conditional Constructions Used in Computer Languages
114 Citations1999M. E. Sime, T.R.G. Green +1 more
It is more effective to compare specific features common to many languages than to compare complete languages, by devising micro-languages stressing the feature of interest, together with a suitable subject matter for the programs.
International Journal of Man-Machine StudiesPsychological evaluation of two conditional constructions used in computer languages
111 Citations1973M. E. Sime, T.R.G. Green +1 more
IEEE Transactions on Human Factors in ElectronicsAn Exploratory Investigation of Programmer Performance Under On-Line and Off-Line Conditions
77 Citations1967E.E. Grant, Harold Sackman
This is the first known study comparing the performance of programmers under controlled conditions for a standard task and coded and debugged two types of programs under on-line and off-line conditions in accordance with a Latin-Square experimental design.
DSpace@MIT (Massachusetts Institute of Technology)Why Conniving is Better than Planning
62 Citations1972Gerald Jay Sussman, Drew McDermott
Communications of the ACMA study of errors, error-proneness, and error diagnosis in Cobol
54 Citations1976Charles R. Litecky, Gordon B. Davis
Data is provided on Cobol error frequency for correction of errors in student-oriented compilers, improvement of teaching, and changes in programming language to imply high potential effectiveness for software-based correction of Cobol.
Communications of the ACMAn experimental comparison of time sharing and batch processing
31 Citations1967Martin Schatzoff, R.F. Tsao +1 more
The effectiveness for program development of the MIT Compatible Time-Sharing System was compared with that of the IBM IBSYS batch-processing system by means of a statistically designed experiment, providing strong evidence of important system differences.
Communications of the ACMTime-sharing and batch-processing
30 Citations1969Michael M. Gold
This study is the first known attempt to evaluate two such systems for what may well be the predominant user population within the next decade—the professionals who, as nonprogrammers, are using the computer as an aid in decision-making and problem-solving rather than as a programming end in itself.
Human Factors The Journal of the Human Factors and Ergonomics SocietySyntactic Errors in Computer Programming
23 Citations1974Stephen J. Boies, John D. Gould
A study of users of a large-scale computer system revealed that only 12 to 17% of the FORTRAN, PL/I, and Assembler Language computer programs submitted to the language processors contained syntactic errors.
Medical Entomology and ZoologyCOMPARATIVE EVALUATION OF PL/I.
17 Citations1968Raymond J. Rubey, Richard C. Wick +2 more
Inefficiencies observed in the language compilers and associated operating systems utilized for the benchmark problems indicated that improvements are required in these areas if the benefits obtainable from the use of higher level languages are to be fully realized.
Communications of the ACMA comparison of batch processing and instant turnaround
17 Citations1967Lyle B. Smith
A study of the programming efforts of students in an introductory programming course is presented and the effects of having instant turnaround as opposed to conventional batch processing with turnaround times of a few hours are examined.
