It is argued that the teaching of programming is central to the education of skilled computer professionals, that the teaching of programming languages is central to the teaching of programming. that these topics must include the specification, structuring, and verification of software, and that they should be taught with the same regard to rigor and precision as in traditional mathematics. Categories and Subject Descriptors K.3 [2]: Computer Science Education, Curriculum, also D.3 [0] Keywords programming, programming languages, teaching, undergraduate curriculum The question of what to teach about programming languages raises the prior question of what to teach about programming. In fact, the ability to construct reliable and efficient software is the central hallmark of the skilled computer professional, and the present-day rarity of this ability is a major cause of the sad prevalence of bug-ridden computer systems. Our educational institutions must help to solve this problem rathe...
John C. Reynolds