This course is about computing, programming, and how they go together. Its major goal is to introduce students to the principles of systematic problem solving through programming and the basic rules of computation.
The course does not assume any prior programming experience. It is therefore suitable for all students—majors and non-majors alike—who want to learn more about computing and programming. We will assume basic familiarity with arithmetic and algebra, and the course requires curiosity, self-discipline, and willingness to work with others for everyone.
Prerequisites: This course has no official university prerequisites.