Intro to Computer Science
A gentle introduction to designing programs (recipes) for systematically solving problems. Students learn to build programs including designing, coding, debugging, testing and documenting them. An introduction to block-structured procedural control flow including branching, iteration and functions, using primitive and simple data types (lists). Students learn the high-level internal operation of computer systems (inputs, outputs, processing and storage) and their applications. Students are exposed to the social and historical aspects of computing.