CS 115: Programming I – Spring 2017

Links: [Course Home] [Assignments] [Schedule] [Resources] [Programming Tools] [Moodle] [CS 115W] [CS @ SSU]

Catalog description

(4 units) Lecture, 3 hours; laboratory, 3 hours. An overview of computer organization; arithmetic and logical expressions, decision and iteration, simple I/O; subprograms; principles of good programming style, readability, documentation, structured programming concepts; top-down design and refinements; techniques of debugging and testing. Use of the above concepts will be implemented in a standard high-level programming language.

This course is currently taught using Python.


GE Math eligibility (satisfaction of ELM requirement) and English eligibility (satisfaction of EPT requirement).

Students who do not meet these prerequisites will be dropped from the class unless they obtain instructor consent.


There are two textbooks, both required. One is online and free. The other one is reasonably priced (about $30), and you will need it for the graphical programs we'll be writing.

Instructor Contact Info

Dr. Mark Gondree
Email: gondree@sonoma.edu
Office phone: 707-664-3854
Office location:Darwin 116H

Meeting Times

MySSU should show that you are enrolled in two consecutive section numbers (for example, sections 3 and 4). The first number is your lecture section. The second number is your lab section.

You are expected to attend your lecture section twice a week, and your lab section once a week, as shown below:


1 and 3Tu/Th 9:20–10:35 AM Darwin 37 Dr. Mark Gondree
5 and 7Tu/Th 10:45 AM–noon Darwin 37 Dr. Mark Gondree


SectionTimeRoomInstructorStudent Assistants
2 Tu 2:00–4:50 PM Darwin 25 Mark Gondree Alissa Greaney, Stephanie Lam
4 W 2:00–4:50 PM Darwin 28 Brian McWilliams Alissa Greaney, Sean Cullen
6 Tu 5:00–7:50 PM Darwin 28 Noah Melcon Gaybi Igno, Nazania Barraza
8 W 5:00–7:50 PM Darwin 28 Noah Melcon Gaybi Igno, Nazania Barraza

Extra help

Mon 5:00–7:00 PM Drop-In Tutoring Darwin 28 Gaybi Igno
Tu 12:00–2:00 PM Drop-In Tutoring Darwin 28 Alissa Greaney
Wed 9:30–11:00 AM Office hours Darwin 116H Dr. Mark Gondree
Wed 12:00–2:00 PM Drop-In Tutoring Darwin 28 Alissa Greaney
Th 2:30–4:00 PM Office hours Darwin 116H Dr. Mark Gondree
Th 5:00–7:00 PM Workshop Darwin 28 Dr. Mark Gondree
F 1:00–3:00 PM Drop-In Tutoring Darwin 28 Gaybi Igno

GE Information

This class satisfies the General Education category B3 requirement (Specific Emphasis in Natural Sciences). As of May 2008, the GE B3 objectives are

  1. Improve understanding of the concepts and theories of science and technology
  2. Understand the interconnected and ever-changing relationships among the natural, physical, and technological sciences
  3. Critically assess the social and ethical implications of science and technology in relations to their daily lives
  4. Improve problem solving and critical thinking skills through application of scientific knowledge using hands-on activities

More information can be found on the SSU GE homepage.

Course Goals and Objectives

  1. Develop algorithms for solving problems.
    • Write programs that interact with the user textually and graphically.
    • Write programs that perform calculations using arithmetic expressions.
    • Write programs that choose which actions to perform using control structures.
    • Apply, program, and evaluate common algorithms for searching and sorting data.
  2. Use design strategies for managing complexity.
    • Design programs that are readable and maintainable.
    • Decompose a complex problem into smaller parts through the use and design of functions.
    • Organize data using standard data structures (e.g. lists, strings, files).
    • Design and use specialized data types (object-oriented programming).

Online Resources


The course homepage is http://www.cs.sonoma.edu/cs115/S17. There, you will find links to the following:

Moodle Gradebook

The course gradebook will be kept on Moodle so that you can check your grades at any time.

Piazza and Email

This term we will be using Piazza for class discussion. The system is highly catered to getting you help fast and efficiently from classmates, tutors and instructors. Rather than emailing questions to the teaching staff, I encourage you to post your questions on Piazza. Find our class page at: https://piazza.com/sonoma/spring2017/cs115/home. You have each received an invitation to Piazza to your sonoma e-mail address. You are responsible for setting up Piazza notifications so you receive all announcement in a timely manner to an address that you check (see my initial post on Piazza).

Course announcements may also be sent to your SSU email address (either directly or via Moodle), so you should check that account frequently.

Coursework and Grading

Course Activities

The assignments page (http://www.cs.sonoma.edu/cs115/S17/assignments.html) describes the different course activities and the policies on collaboration and late work.

Grading Policies

Grade breakdown:

Programming projects30%
Lecture activities and quizzes5%

You must also pass each of the first three components individually (60% or better) to receive a C- or better in the course. In other words, if you fail one or more of these three components, the maximum grade you can earn in the course is a D+.

Your final semester grade will be rounded to the nearest integer.

Grading scale (after rounding)

93-100%90-92%87-89%83-86%80-82%77-79%73-76%70-72%67-69%63-66%60-62%Below 60%

CS majors must take this course for a letter grade.

Up to 3% may be added to your final grade at the instructor's discretion for constructive participation in the class. Constructive participation includes in-class participation; asking good questions or providing helpful responses via Piazza; and doing outstanding or extra work on assignments. No other adjustments of borderline grades will be considered.

Penalties for Academic Dishonesty

Academic dishonesty will be severely penalized; at a minimum, you will receive a grade of 0 on the assignment. For more information, see SSU's cheating and plagiarism policy (http://www.sonoma.edu/UAffairs/policies/cheating_plagiarism.htm) and the Dispute Resolution Board website (http://www.sonoma.edu/senate/drb/drb.html).

University Policies

Disability Accommodations

If you are a student with a disability and you think you may require accommodations, please register with the campus office of Disability Services for Students (DSS), located in Salazar Hall - Room 1049, Phone: (707) 664-2677, TTY/TDD: (707) 664-2958. DSS will provide you with written confirmation of your verified disability and authorize recommended accommodations. This authorization must be presented to the instructor before any accommodations can be made. Visit http://www.sonoma.edu/dss for more information.

Other University Policies

There are important University policies that you should be aware of, such as the add/drop policy, cheating and plagiarism policy, grade appeal procedures, accommodations for students with disabilities, and the diversity vision statement. Go to this URL to find them: http://www.sonoma.edu/uaffairs/policies/studentinfo.shtml.