Software Design

Software Design

Prof. Allen B. Downey
Spring 2007

Software Design is an introductory class at Olin College that teaches basic programming and software design using the Python programming language. It is called "Software Design" because it is based on the idea that programming is more than just translating a well-understood solution into code; it is the process of solving a problem by designing a language for expressing the solution.

During the first 8 weeks, students work on series of exercises that include topics in graphics, animation and graphical user interfaces, networking and concurrent programming. During the next 6 weeks, students work in small groups on an extended project that applies software design to an application or problem of the students' choice. In previous semesters, projects have included network applications and games, and tools for creating and manipulating images and sound.

Regular class meetings and lab times will be used for lectures, hands-on work and collaborative work, as well as written exercises and other forms of evaluation.

Students with no programming experience and students with background comparable to the CS AP should both find this course interesting and worthwhile.

Class meetings: TBA
Lab meetings: TBA

For more information, contact