CS 115: Programming I – Spring 2014

Links: [Course Home] [Course Info] [Schedule] [Resources] [Programming Tools] [Moodle] [CS 115W]

Instructors Dr. Suzanne Rivoire, Dr. Tia Watts, Noah Melcon
Meeting times Lecture:TTh 9:20–10:35Darwin 102Rivoire
Lab (Sections 1/2):T 4:00–6:50Darwin 25Watts
Lab (Sections 3/4):W 1:00–3:50Darwin 25Rivoire
Lab (Sections 5/6):W 5:00–7:50Darwin 25Melcon
Workshop:Th 2:00–3:50Darwin 25Students
Textbook John Zelle, Python Programming: An Introduction to Computer Science, 2nd edition (ISBN: 978-1-59028-241-0)
It is very important to get the correct edition of this textbook!


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 to take CS 115.

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 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.
  2. Use design strategies for managing complexity.

Consolidated Syllabus

You may download the course description, objectives, syllabus, and schedule in a consolidated pdf: