Here is how to get started with CS at 海角社区
Computer science is a broad field鈥攐ne 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.
- Options for Studying Computer Science
- How to Get Started
- Opportunities for Computer Science Majors
- FAQ
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鈥檙e 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鈥檚 degrees: one from 海角社区 and the other from the partner institution.
If you鈥檙e 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鈥檙e interested in this program, please contact Prof. Kathryn Leonard in the Computer Science department.
How to Get Started
If you鈥檙e 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鈥攈ow to break processes down into components that can be then fully described鈥攁nd to develop other habits necessary for a computer scientist. Even if you don鈥檛 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鈥檚 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
鈥婽he 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鈥檚 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