Welcome to the home page for CS 115.005/006, Programming I !
All sections of CS 115 are based on the following SSU Catalog description:
This course gives 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.
Within this framework, the course is offered with two main variations:
- Section CS 115.001, with lab section CS 115.002, and
section CS 115.003, with lab section CS 115.004, follow an
approach used at SSU for several years:
- The course has separate lectures and labs.
- Lectures meet 3 hours/week
- Labs meet 3 hours/week.
- Programming and problem solving is supported by the Python programming language.
- Consistent with the selection of Python, the course emphasizes high-level views of problem solving and program development—Python requires little discussion of machine-related issues.
- Section CS 115.005/006 establishes a new approach for the
course.
- Lectures and labs are integrated, meeting 6 hours/week.
- All class sessions meet in the lab, with discussion combined with lab work.
- Programming and problem solving is supported by the C programming language.
- The control of robots provides a semester-long application theme.
- Consistent with the selection of C, the course balances high-level views of problem-solving and programming with a range of low-level, machine-related issues.
Since CS 115/005.006 is quite different from the other CS 115 sections, students cannot mix another lecture or lab section of CS 115 with class meetings for sections 115.005 and 116.006. Further, class attendance for all meetings of CS 115.005 and CS 115.06 is mandatory.
Materials for this course have been developed and refined since the summer, 2011. Please browse the syllabus, course details, schedule, and other elements of this course site for course details.
Features of this Web site: supporting this course
-
By default, the navigation on the left of this home page shows class-session information, based on today's date. To find data for another date, add a query string with the desired date in the format yyyy-mm-dd. For example: to obtain course information, based on February 3, 2022, use the URL:
https://blue.cs.sonoma.edu/~hwalker/courses/115-sonoma.sp22/schedule.php?date=2022-02-03 -
Following the format used in several recent semesters, the course is organized into segments, and segments contain one or more sessions (with readings, examples, a lab, and other resources). Both course and scheduling information are stored in a central database, so all views of the course (e.g., schedule, deadlines, information for a specified day) are synchronized. Of course, only the course instructor is authorized to update the database.
-
All navigation links should now function, although refinements are underway. Please report problems or provide feedback to walker at cs.grinnell.edu or to walkerhe at sonoma.edu.