Program development by stepwise refinement
Communications of the ACM
Introduction to Programming and Computer Science
Introduction to Programming and Computer Science
A survey of the literature in computer science education since curriculum '68
Communications of the ACM
A new environment for teaching introductory computer science
SIGCSE '83 Proceedings of the fourteenth SIGCSE technical symposium on Computer science education
A study of the first course in computers
SIGCSE '78 Proceedings of the ninth SIGCSE technical symposium on Computer science education
Implementing a computer science curriculum merging two curriculum models
SIGCSE '78 Proceedings of the ninth SIGCSE technical symposium on Computer science education
Another approach to service courses
SIGCSE '79 Proceedings of the tenth SIGCSE technical symposium on Computer science education
Programming languages for introductory computing courses: a position paper
SIGCSE '78 Papers of the SIGCSE/CSA technical symposium on Computer science education
Hi-index | 0.02 |
The common instructional approach in first programming courses is to consider jointly programming technique and coding in a particular language. This has the inherent disadvantage of focusing on language details at the expense of the skills of problem solving. As an alternative, a separated, but coordinated, course in programming concepts and a laboratory on language coding are proposed. We submit that this approach allows emphasis to be placed on the creative aspects of problem solving and programming, and that it allows an efficiency in concepts instruction, through avoidance of language details, and an efficiency in language instruction by using algorithms developed in the concepts course. A suggested selection of concepts is given, and the separation of responsibilities between the program development and coding are illustrated.