Computing Practice and Theory


Spring 2015 quarter

Taught by

Paul Pham
computer science, electrical engineering, creative writing
computer science


Computer Science Foundations (including discrete mathematics) or equivalent experience.

This project-oriented program for intermediate and advanced computer science students will weave together the theory and practice of two cross-cutting topics in computer science, pattern analysis and modeling, in the context of eScience . The overriding question of the program is how pattern analysis and modeling, broadly defined, advance the natural and physical sciences.  

The program will meet for lectures, seminar, workshops and labs. Particularly in seminar, students will share responsibility for presenting and discussing concepts from the readings and lectures. This program might include a guest lecture series that focuses on how computers are used in modeling complex systems. In addition to seminar and lecture, the program will have two disciplinary components and a project. The disciplinary components will focus on: 1) data mining, machine learning and pattern recognition, and 2) statistics, modeling and visualization. 

Students will also be expected to apply the computing sub-discipline of their choice to a research paper, or a programming or statistics project, and present their work orally and in written reports. To facilitate projects, faculty will organize small affinity groups that meet twice weekly (once with a faculty advisor) to discuss progress and questions. Projects will begin with a proposal and bibliography, and should be either small enough in scope to be completed in one quarter or a self-contained part of a larger project. While faculty will encourage project work in the areas related to program themes (data mining, machine learning, database systems, data visualization—especially visual analytics—networking, security, algorithmic complexity), they will approve well defined and promising projects that have a significant computer science or programming component. Projects can be either individual or small group.

This program aims to give students from Computability and Computer Science Foundations opportunities to continue work begun in those programs. Students who have taken Computability will be expected to complete more advanced work to earn upper division credit.

Program Details

Fields of Study

Preparatory for studies or careers in

computer science and mathematics.

Location and Schedule

Campus location



Offered during: Day


Buy books for this program through Greener Bookstore.

Online Learning

Enhanced Online Learning: Access to web-based tools required, but use of these tools does not displace any face-to-face instruction.

Upper Division Science Credit

Students seeking to earn upper division credit must complete the "Seeking Upper Division" form during the first week of the quarter. This form will ask questions that allow students to describe the area of their proposed project work and their competency to complete work at the upper division level (e.g., completion of 2 quarters of Computability).  The form will be posted on the program web site about mid March.

Registration Information

Credits: 16 (Spring)

Class standing: Sophomore–Senior

Maximum enrollment: 50


Course Reference Number not yet available.

Need Help Finding the Right Program?

Contact Academic Advising for help in answering your questions, planning your future and solving problems.