Great Ideas in Computer Science
COMPSCI 1
Subject & Catalog Number
Course Information
Description
An introduction to the most important discoveries and intellectual paradigms in computer science, designed for students with little or no previous background. Explores problem-solving and data analysis using Python, a programming language with a simple syntax and a powerful set of libraries. This course covers basic data types and collections (lists, dictionaries, tuples, and sets), control flow, recursion, supervised machine learning via regression, visualization, information hiding and encapsulation using classes and objects, and introduces the analysis of program performance. Presents an integrated view of computer systems, from switching circuits up through compilers, and examines theoretical and practical limitations related to unsolvable and intractable computational problems. Other topics include the social and ethical dilemmas presented by such issues as software unreliability, algorithmic bias, artificial intelligence, and invasions of privacy.
Course Notes
May not be taken for credit after completing Computer Science 50.
Available for Harvard Cross Registration
NOTE: This course requires additional sections; you will be prompted to choose secondary components during the Add to Cart process