Skip to content

CPSC 110 Syllabus

Course Information

Item Details
Course CPSC 110: Introduction to Computer Science
Instructor George Foster
Meeting times Online asynchronous
Office hours To be announced
Course site https://courses.hilltopstudio.org/cpsc110
Course LMS Canvas: https://canvas.umw.edu/courses/1607546

Canvas is the official location for grades, submissions, private feedback, and official student-specific communication.

Course Description

CPSC 110 is an introductory programming course for students who are new to computer science or are building a stronger foundation. Students learn to translate everyday problems into algorithms and then implement those algorithms in Python.

The course emphasizes:

  • Reading and writing small programs with confidence.
  • Tracing program state step by step.
  • Using variables, expressions, branching, loops, functions, strings, and lists.
  • Testing code with carefully chosen examples.
  • Communicating technical work clearly.

Learning Outcomes

By the end of the course, students should be able to:

  • Identify the inputs, outputs, and processing steps in a problem.
  • Design straightforward algorithms using sequence, selection, iteration, and functions.
  • Write Python programs that use numeric values, text, Booleans, strings, and lists.
  • Use input and output effectively in interactive programs.
  • Break larger tasks into manageable functions.
  • Test programs with normal, boundary, and error-prone cases.
  • Read course notes, language documentation, and assignment specifications with purpose.
  • Discuss responsible use of code, online help, and AI tools in a course setting.

Course Materials

The public course site provides notes, lab descriptions, project briefs, and workflow resources. When zyBooks is used, the public zyBooks access page provides the course link, while Canvas identifies the required sections or activities for enrolled students.

Participation and Preparation

Students are expected to:

  • Attend class prepared to practice.
  • Keep up with reading, notes, and assigned activities.
  • Ask questions when specifications, tools, or feedback are unclear.
  • Bring a working programming environment when one is required.

Missed work, attendance procedures, and class-specific accommodations will follow official course guidance communicated through Canvas and university policy.

Assessment Categories

The final grading scheme will be published through official course channels. Typical work in this course may include:

Category Purpose
Labs Short, focused practice with new ideas
Projects Larger programming tasks that combine topics
Exams or quizzes Individual checks on understanding
Participation or preparation Course-specific engagement expectations

Collaboration and Academic Integrity

Students may discuss concepts, planning strategies, and debugging approaches when collaboration is allowed. Submitted work must still represent the student's own understanding and follow the rules for that specific assignment.

Unless an assignment says otherwise:

  • Do not copy code from classmates or public solutions.
  • Do not submit generated code that you cannot explain.
  • Cite or acknowledge outside help when the course policy requires it.
  • Ask before using tools or collaboration patterns that are not clearly permitted.

Accessibility and Support

Students who use approved accommodations should coordinate through the appropriate university process and connect with the instructor as early as possible. The goal is to make course participation clear, workable, and respectful.

Course Communication

General public-facing materials live on this site. Canvas is the place for:

  • Grades and submission records.
  • Private feedback.
  • Student-specific questions.
  • Official announcements directed to enrolled students.