Teaching introductory computer science as the science of algorithms

Doug Baldwin · ACM SIGCSE Bulletin · 1990

I discuss an introductory computer science course based on the idea that computer science is fundamentally the study of abstract computation (i.e., algorithms) rather than concrete mechanisms that carry out computations (i.e., programs or computers).The course surveys correctness and resource analysis computability and complexity, and hardware and software systems for turning algorithms into programs.The lessons that have been learned include (1) students can be introduced to the fundamental theory of computer science without being mathematically sophisticated, (2) students expect computer science to be about programming; the conflict between this expectation and the reality of the course has to be controlled somehow, and (3) while an important goal is to help students understand the relation between programming and theory, programming should be a relatively minor activity in the course.

Read the paper · More papers on PaperTik