CS 10. The Beauty and Joy of Computing

Catalog Description: An introductory course for students with minimal prior exposure to computer science. Prepares students for future computer science courses and empowers them to utilize programming to solve problems in their field of study. Presents an overview of the history, great principles, and transformative applications of computer science, as well as a comprehensive introduction to programming. Topics include abstraction, recursion, algorithmic complexity, higher-order functions, concurrency, social implications of computing (privacy, education, algorithmic bias), and engaging research areas (data science, AI, HCI). Students will program in Snap! (a friendly graphical language) and Python, and will design and implement two projects of their choice.

Units: 4.0

Credit Restrictions: Students will receive no credit for 10 after having taken W10, 61A, 61B, or 61C.

Fall: 2 hours of lecture, 1 hour of discussion, and 4 hours of laboratory per week
Spring: 2 hours of lecture, 1 hour of discussion, and 4 hours of laboratory per week
Summer: 4 hours of lecture, 2 hours of discussion, and 8 hours of laboratory per week

Grading basis: letter

Final exam status: Written final exam conducted during the scheduled final exam period

Class Schedule (Spring 2019):
MoFr 3:00PM - 3:59PM, Stanley 105 – Daniel Garcia

Class Schedule (Fall 2019):
MoWe 10:00AM - 10:59AM, Li Ka Shing 245 – Daniel Garcia

Spring 2016 class homepage on bCourses

Class homepage on inst.eecs

General Catalog listing

Related Areas: