Skip to main content
Caltech Course Catalog / 2025-2026 Catalog / Courses 2025-26 / Software Design Practicum

CS 18 - Software Design Practicum

CS 18

Software Design Practicum

6 units (1-0-5)   |  third term
Prerequisites: CS 3(c) or instructor's permission.
CS 18 is a practical introduction to designing large programs in a low-level language. Heavy emphasis is placed on group work, documentation, testing, and software architecture. Students will work in throughout the term to create their own physics engine and open-ended game using the C programming language. Software engineering topics covered include code reviews, testing and testability, code readability, API design, refactoring, and documentation. Prior experience with the C programming language at the level of CS 3(c) is required and assumed.
Instructors: Ordentlich, Blank
Published Date: Aug. 28, 2025