Learning to program = learning to construct mechanisms and explanations

Teaching effective problem-solving skills in the context of teaching programming necessitates a revised curriculum for introductory computer programming courses.

[1]  L. Resnick,et al.  Mathematics and Science Learning: A New Conception , 1983, Science.

[2]  EDWINA RISSLAND MICHENER,et al.  Understanding Understanding Mathematics , 1978, Cogn. Sci..

[3]  Roger C. Schank,et al.  SCRIPTS, PLANS, GOALS, AND UNDERSTANDING , 1988 .

[4]  Charles Rich Inspection Methods in Programming: Cliches and Plans , 1987 .

[5]  B. Adelson Problem solving and the development of abstract categories in programming languages , 1981, Memory & cognition.

[6]  J. Reitman,et al.  Knowledge organization and skill differences in computer programmers , 1981, Cognitive Psychology.

[7]  Elliot Soloway,et al.  But My Program Runs! Discourse Rules for Novice Programmers , 1986 .

[8]  Elliot Soloway,et al.  Novice mistakes: are the folk wisdoms correct? , 1986, CACM.

[9]  H. Simon,et al.  Perception in chess , 1973 .

[10]  Roy D. Pea,et al.  Logo Programming and the Development of Planning Skills. Technical Report No. 16. , 1984 .

[11]  Elliot Soloway,et al.  DOES COMPUTER PROGRAMMING ENHANCE PROBLEM SOLVING ABILITY? SOME POSITIVE EVIDENCE ON ALGEBRA WORD PROBLEMS , 1982 .

[12]  Dorothea P. Simon,et al.  Expert and Novice Performance in Solving Physics Problems , 1980, Science.

[13]  Seymour Papert,et al.  Mindstorms: Children, Computers, and Powerful Ideas , 1981 .

[14]  Kate Ehrlich,et al.  Empirical Studies of Programming Knowledge , 1984, IEEE Transactions on Software Engineering.

[15]  John B. Black,et al.  Scripts in memory for text , 1979, Cognitive Psychology.

[16]  Elliot Soloway,et al.  Mental models and software maintenance , 1986, J. Syst. Softw..

[17]  Bill Curtis,et al.  Human factors in software development , 2002 .

[18]  Charles Rich Inspection methods in programming , 1980 .

[19]  B. Adelson,et al.  The Role of Domain Expenence in Software Design , 1985, IEEE Transactions on Software Engineering.

[20]  David Lorge Parnas,et al.  Software aspects of strategic defense systems , 1985, CACM.

[21]  Ruven E. Brooks,et al.  Towards a Theory of the Comprehension of Computer Programs , 1983, Int. J. Man Mach. Stud..

[22]  Allen Newell,et al.  Problem solving techniques for the design of algorithms , 1984, Inf. Process. Manag..

[23]  Elliot Soloway,et al.  Analyzing the high frequency bugs in novice programs , 1986 .

[24]  Ben Shneiderman,et al.  Software psychology: Human factors in computer and information systems (Winthrop computer systems series) , 1980 .

[25]  Elliot Soloway,et al.  A Goal/Plan Analysis of Buggy Pascal Programs , 1985, Hum. Comput. Interact..

[26]  M. Linn The Cognitive Consequences of Programming Instruction in Classrooms , 1985 .

[27]  Elliot Soloway,et al.  Papers presented at the first workshop on empirical studies of programmers on Empirical studies of programmers , 1986 .

[28]  Elliot Soloway,et al.  From Problems to Programs via Plans: The Content and Structure of Knowledge for Introductory LISP Programming , 1985 .

[29]  William Lewis Johnson,et al.  Intention-based diagnosis of errors in novice programs (program understanding, debugging, intelligent computer-aided instruction) , 1986 .

[30]  Allan Collins Explicating the Tacit Knowledge in Teaching and Learning. Technical Report No. 5. , 1978 .

[31]  Jon F. Hueras,et al.  PASCAL with style : programming proverbs , 1979 .