2017 SPIS Academic Program

The academic program focuses on the foundations of computer science and engineering, (in short, FoCS, Foundations of Computer Science) where students will

  • learn basic concepts such as abstraction, computation, algorithm, programming, interaction with the physical world,
  • gain competency in mathematical reasoning, algorithm design, programming, and hardware skills,
  • apply the concepts and skills to solve problems in domains such as image processing, computer vision, cryptography, data mining, and
  • bring together all the ideas to succeed in an open-ended project.

In addition, students will participate in the Facets of Computer Science and Engineering seminar, where they will be exposed to the larger world of computing and learn the tools and techniques needed to make a smooth transition to UC San Diego.

SPIS 2017 faculty include Paul Cao, Gary Gillespie, Curt Schurgers, Ben Cosman and Mohan Paturi.

FoCS: Foundations of Computer Science

This course is an exciting introduction to the field of computer science and engineering which gives students a head start on the knowledge and skills they will need to succeed in UCSD's introductory computing courses (CSE 8A or CSE 11), discrete math courses (CSE 20 and CSE 21), and calculus sequence (MATH 20).

The course will cover basic Computer Science skills such as algorithm development and programming with an emphasis on logical thinking and debugging. Students will implement programs in Python (a high-level language) and may work with the Raspberry Pi.  Throughout, we will emphasize the connections between low-level hardware, programming, and abstract algorithms as tools for solving problems.  Students will work on projects extending these ideas in the areas of data science, robotics, web development.

Primary Instructors: Paul Cao, Gary Gillespie, and Curt Schurgers

APS: Algorithmic Problem Solving

Though programming is the most visible aspect of how Computer Science is applied, the basis of Computer Science is a way of thinking about problems and solving them algorithmically before one starts implementing them as programs. Several lectures will be devoted to algorithmic problem solving (APS), where students will think about problems and algorithms and write the solutions precisely and coherently in plain English. The types of problems encountered in APS are similar to the ones often presented to prospective employees at job interviews for companies such as Qualcomm, Google, Microsoft, Facebook, as well as start-up companies.

Primary Instructor: Ben Cosman

Facets: Facets of Computer Science and Engineering

Facets is a series of interactive lectures where students will
  • explore exciting ideas in computer science and engineering,
  • learn about opportunities in industry,
  • interact with departmental and college advisors for course planning, and
  • gain the knowledge about various resources at UC San Diego.

The lectures will be presented by UC San Diego faculty, alumni, college/departmental advisors, and industry professionals.

Organizer: Mohan Paturi


Students will receive a copy of the book, Introduction to Computation and Programming Using Python: With applications to understanding data (by John Guttag), 2016 edition, and an iClicker on Welcome Day (August 6, 2017) when they arrive on campus.

    Daily Schedule

    Embed gadget

    Notes to students regarding daily schedule:

    • FoCS Depth / FoCS Breadth: These parallel Friday sessions offer an opportunity for you to make a choice. If there are aspects of the FoCS program from Monday-Thursday of that week that are still a bit hazy, and you'd like some review, the FOCS Depth sessions will recap what you learned that week, and go a bit deeper. If you feel pretty confident about what you've learned, the FoCS Breadth sessions provide an opportunity to learn about something new and different.
    • Open Lab Hours: These sessions are led primarily by the undergraduate student mentors and are a chance to work on the lab assignments given during FoCS sessions, or to step away from the computer and work on the APS problems.
    • Extra Mentor Hours: These optional mentor-led sessions provide additional time to work on your FoCS lab assignments, APS problems, and final projects.
    • Faculty One-on-One Meetings: These are individual meetings scheduled with faculty. You'll work in the lab on your FoCS and APS assignments until your appointment time, and then you'll come to your meeting.  After your meeting, you may return to the lab to continue working, or if you are finished with your work for the week, you are free to go explore the UCSD campus.