Â鶹ÊÓƵ

Here is how to get started with CS at Â鶹ÊÓƵ

Computer science is a broad field—one that encompasses everything from digital logic and advanced mathematical theory to video games and data science. These foundations and applications all require fundamental knowledge of how a computer works as well as the ability to translate processes into working programs.

In keeping with the liberal arts tradition, the computer science major at Â鶹ÊÓƵ gives you the flexibility to combine your computer science studies with your other academic interests while also providing you with the core skills and knowledge you need to pursue advanced studies or start a career in the field.

Download brochure here


Options for Studying Computer Science

Major in Computer Science

A student majoring in Computer Science must take a minimum of 12 courses (48 credits). See Major at a Glance for an overview of these requirements.

Core Coursework for the Major

The following seven courses make up the core of the Computer Science major. All students pursuing this major must complete these courses:

  • Calculus 1: You may also pass or place out of this course in several ways. Please refer to the Mathematics Department website for information about Calculus placement.
  • : Fundamentals of Computer Science (read about placing out of COMP 131)
  • : Mathematical Foundations of Computer Science -OR- both : Discrete Mathematics and : Linear Algebra
  • : Data Structures
  • : Computer Organization
  • : Computer Science Junior Seminar
  • : Computer Science Senior Seminar
Completing the Major

To complete the Computer Science major, students must take an additional six courses on top of the required core coursework. These six additional courses will vary depending on which of the following three pathways through the major the student selects. If you’re interested in the Computer Science major, you should meet with an advisor early on to explore these pathways:

  • Computer Science Pathway: The traditional major
  • Mathematics Pathways: The computer science major with a mathematical emphasis
  • CS + X Pathway: The computer science major with a student-proposed interdisciplinary concentration

The Computer Science Courses and Requirements page provides more information about these three pathways.

Minor in Computer Science

A minor in Computer Science can help prepare students for a variety of opportunities for subsequent employment or graduate work. The minor can also provide students with models of problem solving and theoretical constructs that can shed light on human intelligence and the workings of the mind.

Coursework for the Minor

Students who are pursuing a Computer Science minor must complete the following six required courses:

  • : Fundamentals of Computer Science (read about placing out of COMP 131)
  • : Mathematical Foundations of Computer Science -OR- both : Discrete Mathematics and : Linear Algebra
  • : Data Structures
  • Three 4-unit Computer Science courses at or above the 200-level. These must be in Computer Science.
3-2 Engineering Program

For students interested in engineering, Occidental offers a 3-2 engineering program in partnership with the California Institute of Technology (Caltech) and Columbia University (New York City). After completing 5 years of study (the first three at Â鶹ÊÓƵ; the final two at either Caltech or Columbia), students in this program graduate with two bachelor’s degrees: one from Â鶹ÊÓƵ and the other from the partner institution.

If you’re interested in this program, please contact Prof. Jeffrey Miller in the Computer Science and Mathematics departments. Incoming first-year students should plan to meet with a 3-2 advisor during orientation.

Cooperative Program with Caltech

As a full-time Â鶹ÊÓƵ student, you can take computer science courses at the nearby California Institute of Technology (Caltech). While the program is usually not open to first-year students, you receive credit for all approved courses taken. No additional tuition payments are required.

If you’re interested in this program, please contact Prof. Kathryn Leonard in the Computer Science department.

 

How to Get Started

If you’re new to computer science, the first step in learning more about the major is to take . This course is meant for beginners and assumes you have no prior programming experience. In COMP 131 you will learn to think computationally—how to break processes down into components that can be then fully described—and to develop other habits necessary for a computer scientist. Even if you don’t end up majoring or minoring in Computer Science, this course will count toward your Core requirements for Science and Mathematics, which all students need in order to graduate.

Computer Science Placement

In general, to place out of COMP 131, a student should be proficient in variables, branches (if, else), loops (for, while), functions (parameters, scope, return -vs- print), and object-oriented programming (classes vs. instances, constructors, passing familiarity with inheritance). If you have some computer science experience from either self study, high school, or another college or university, you may be able to place out of COMP 131. Here’s how:

  • Score a 4 or higher on the College Board Advanced Placement Computer Science A examination. This will place you into  (Data Structures) and earn you credit for completion of COMP 131. Students who took the exam a long time ago and wish for a refresher should consider (Advanced Programming).
  •  (evaluated on a case-by-case basis). The department will evaluate your situation individually if you fall into one of the following categories:
  • Students who are self taught
  • Students with transfer credit
  • Students who have taken the AP Computer Science Principles examination

To request an exemption, you must first take the Computer Science self-placement, which is designed to evaluate the skills necessary for COMP 229. The self-placement is a two-hour programming exercise, to be completed in Java. Detailed instructions, as well as the self-placement questions, can be found on the self-placement page.

Transfer Credit

You may earn  for general computer science units or as course substitutions for specific Â鶹ÊÓƵ courses. If you are a continuing student, please obtain transfer credit authorization before the course begins. To obtain authorization for transfer credit, please submit the following course information by email to Prof. Kathryn Leonard (leonardk@oxy.edu):

  • course syllabus
  • textbook selection
  • project list
  • the Â鶹ÊÓƵ course (if any) you are proposing to replace

​The department will determine if the course is appropriate for COMP credit, and at what level. The registrar will determine how many Â鶹ÊÓƵ units the course will be allocated. Please note that lower-division computer science courses without significant programming are unlikely to be approved for COMP credit, though they may be eligible for Â鶹ÊÓƵ credit.

 

Opportunities for Computer Science Majors

Travel Funding

 to support your travel to professional conferences.

Employment

Gain a deeper understanding of computer science by serving as a tutor, mentor, or TA for computer science. To apply for a TA position, complete the Student Employment Application available from Human Resources and return it to the computer science department chair.

Internships

Develop your skills with hands-on industry experience. Our students have completed internships at many firms, including JPL, Facebook, Twitter, and local start-ups. We often post these opportunities to a mailing list, which you can sign up for:

Student Research

Explore a new direction in computer science research by working on original research projects in collaboration with other students and our excellent faculty.

Awards

The department invites nominations from faculty and students (including self-nominations) for a series of topical awards, which are given at the end of each academic year. Junior and senior computer science majors are eligible. Nominations are due by midnight on April 15 annually: 

  • :  This prize recognizes exceptional achievement by a computer science major in building community for computer science students and affiliates at Â鶹ÊÓƵ, or using computer science to contribute significantly to building or enhancing lives in another community. Awardees will receive a certificate, campus recognition, and a small stipend. Juniors and seniors are eligible for this prize. There is no minimum GPA requirement. Nominations will be evaluated based on impact to the community of the student's work. Nominations are due by April 15 each year.
  • : This prize recognizes exceptional achievement by a computer science major in integrating computer science with another discipline. Awardees will receive a certificate, campus recognition, and a small stipend. Juniors and seniors are eligible for this prize. There is no minimum GPA requirement. Nominations will be evaluated based on the thoughtfulness,  depth and synthesis of the interdisciplinary work, and its value to the respective fields. Nominations are due by April 15 each year.
  • : This prize recognizes exceptional achievement by a computer science major in either research or application of computer science. Awardees will receive a certificate, campus recognition, and a small stipend. Juniors and seniors are eligible for this prize. There is no minimum GPA requirement. Nominations will be evaluated based on the thoughtfulness and depth of the research or application, and its value to the field of computer science &/or to society. Nominations are due by April 15 each year.

 

FAQ

Q: What kind of computer will I need?

It’s useful to have your own laptop, and more RAM and faster processors are always better, but you can get started with a very basic set-up. You might want to choose a machine that can be upgraded in the future if necessary. The operating system is up to you. Battery life and weight will likely be important to you.

Q: Do I have to be a programmer already?

No. Our intro class () does not assume any prior experience.

Q: Do I need to know a lot of math?

No. Computer science requires some math, and certain areas such as machine learning and data science require substantial math, but you can be a very successful computer scientist without advanced math coursework. If you are math-wary, please take  as soon as you can.

Q: Where can I join a fun group of people who are interested in technology?

Join Â鶹ÊÓƵ Open Source, our student-run group. They hold social activities, workshops, and other great events. We have a Slack channel that you can join with your oxy.edu email at

Contact Computer Science
Swan Hall B101