On this page:
Major and Minor Maps
Why study Computer Science? What’s required for a degree? It’s all summarized in our College of Arts and Sciences major and minor maps.
- Top Ten Reasons to Major in Computing
- Computer Science major map
- Math and Computer Science major map
- Computer Science minor map
- Computer and Information Technology minor map
Welcome to Computer Science Advising!
Advising for Computer Science majors is provided mainly by Tykeson Hall Scientific Discovery and Sustainability Team Academic and Career Advisors.
You may schedule an appointment with a Tykeson Academic and Career Advisor via Navigate: https://uess.uoregon.edu/navigate, send email to SDS Flight Path Advisors, or call to book an appointment through Tykeson Hall Reception: 541-346-9200.
You may send short, specific questions with short answers to firstname.lastname@example.org. Petitions and requests to add or drop Computer Science majors and minors may also be sent to this address. (New majors should have met with a Tykeson Hall advisor, who should be cc'd on the email.) Please be aware that replies may take a few days.
CS upper-division students may schedule major progress review advising appointments with a CS faculty advisor, as early as possible after starting upper-division courses. CS students interested in the CS Accelerated B.S./M.S. program (AMP-CS) may also schedule an appointment with a faculty advisor.
Major Progress Reviews must be scheduled with a Computer Science faculty advisor; appointments are 30 minutes long. Use the schedule below to reserve a time that works for you. You will receive a confirmation email.
CS Forms and Advising Documents
Students may begin the Introductory Sequence during Fall or Winter of their freshman or sophomore year. These pathways are suggestions for moving through the curriculum requirements. Other course orders are possible.
Declaring the CS and MACS Majors
Students who wish to declare a CS or MACS major should first schedule a meeting with an academic advisor who will help with course selection and overall planning. Don't forget to bring your student ID card.
Declaring the CS and CIT Minors
Students who wish to declare the CS minor should do so before enrolling in CS 313 or other upper division CS courses.
Students who wish to declare the CIT minor should do so before enrolling in CIT 381 or other upper division CIT courses.
To declare a CS or CIT minor, stop by the CS Department Office (bring your student id) or send email to email@example.com.
Satisfactory Progress in the CS / MACS Major
Students must earn grades of B- or higher in CS 210, 211, 212 and in Math 231 and 232 for automatic advancement to upper-division CS courses.
Students with at most one C (any level) in the lower division required courses and no other warning signs regarding preparedness for upper division courses (for example, repeated courses or other low grades) may submit a prerequisite override request to continue in the major. Students should be aware that requests are not automatically approved; approval depends on individual circumstances and will be conditional.
Students who receive a prerequisite override to register for a 300-level class must earn a grade of B- or better in that class. Any grade below B- in a class for which an override was given, will be treated as a grade below C- in an upper division core course.
All upper-division coursework must be completed with a grade of C- or better. Unless otherwise indicated, all required coursework used to satisfy major requirements must be taken graded. At least 12 credits of CS upper division elective courses numbered 410 or higher must be taken graded.
Students who receive two grades below C- in upper-division core courses, or three grades below C- in upper division elective CS classes, will be removed from the major.
Minimum Grade Requirements for CS and CIT Minors>p>Lower division coursework for the CS and CIT minors must be completed with a grade of B- or better. Upper division courses must be completed with a grade of C- or better. Unless otherwise indicated, all coursework used to satisfy the CS and CIT minors must be taken graded.
Major Progress Review
CS majors are required to meet with an advisor and file the CS Major Progress Review form while enrolled in the 300-level upper-division core. If you have not already done so, you must specify your track at that time.
MACS majors are required to meet with an advisor and file the MACS Major Progress Review form while enrolled in the 300-level upper-division core, including at least one course from the CS and the Math department.
Exceptions or modifications to departmental requirements may be requested via written CS Petition form to the Undergraduate Education Committee. It is expected that you will have discussed the matter with a CS Faculty advisor.
Admission to a given CS course requires completion of all the prerequisites listed in the UO Catalog. Waiver of a prerequisite is possible only through a CS Prerequisite Override Request form to the Undergraduate Education Committee.
Prerequisite Override Requests
Prerequisite Override Requests should be submitted 10 days before the registration time for which the student needs that exception.
Students with at most one C in the lower division required courses may submit a prerequisite override request to continue in the major. Other warning signs regarding preparedness for upper division courses for example, repeated courses or other low grades are taken into consideration.
Students who receive a prerequisite override to register for a 300-level class must earn a grade of B- or better in that class. Any grade below B- in that class for which an override was given will be treated as a grade below C- within major requirements. (See Satisfactory Progress Policy above)
Students should be aware that requests are not automatically approved; approval depends on individual circumstances and will be conditional.
When you turn in a paper with your name on it, you are stating that it is your work (or your team's work, in the case of team learning) exclusively, so please make sure that it is.
To turn in another's work under your name is plagiarism, and qualifies as academic dishonesty. The results can be quite serious. Basing your assignment on work done in a previous year is also prohibited, as is using the work of students not presently enrolled in the course. Also, do not hand your work over to another student to read. If you allow anyone to copy your work, in part or in whole, you are liable as well.
Academic dishonesty (e.g., plagiarism, cheating on exams, etc.) is a serious violation of the rules of fair play; the consequences can be both severe and permanent, up to and including expulsion.
Preparing for a CS or MACS Major at UO
UO Computer and Information Science / Math and Computer Science major lower-division requirements are as follows:
- CS 210 (CS 161)
- CS 211 (CS 162)
- CS 212 (CS 260)
- Math 231 and 232 (Discrete Math)
- Math 251 and 252 (Calculus)
- Three additional math classes are required for the major. Students may take upper division classes at the UO; Math 253 and/or Math 260 (Linear Algebra) can also count toward this computer science major requirement. (Note: Math 253 is required for the MACS major.)
- One of the following science sequences: [PHYS 201, 202, 203] or [CHEM 221, 222, 223] or [BIOL 211, 212, 213] or [GEOL 201, 202, 203 (ERTH 201, 202, 203)]. (Other options for the additional science sequence are available at the UO.)
Students transferring to the UO as Computer Science majors will usually have taken some, though not necessarily all, of these courses. It is important to schedule an appointment with an advisor to develop an academic plan for the CS major at the UO. You are welcome to meet with a Tykeson Academic and Career Advisor (Scientific Discovery and Sustainability team) in Tykeson Hall to develop an academic plan for the CS major at the UO.
Appointments can be scheduled by sending email to firstname.lastname@example.org. You may also schedule an appointment with a Tykeson Academic and Career Advisor via Navigate: https://uess.uoregon.edu/navigate or call to book an appointment through Tykeson Hall Reception: 541-346-9200.
Programming Languages in the CS Major
CS 210 and 211 are taught using Python, and CS 212 is taught using C. Students who have taken CS 210, 211, and 212 course equivalents at their current school may want to take a course in Python and/or C.
Discrete Math Requirements
Math 231 and 232 are prerequisites for most 300-level CS courses, and should be taken with the equivalents of CS 210, 211, and 212 if possible. CS 250 and CS 251 Discrete Structures may substitute for Math 231 and 232 by CS Petition form. If the transfer institution does not offer these courses, then they must be taken during the first two terms at the UO. Students should consult with a CS advisor to develop an academic plan for their first year in the program.
The equivalents of CS 210, 211, 212, and Math 231, 232 must be completed with grades of B- or better to register for 300-level CS courses at the University of Oregon.
CIT Minor and Lane Community College Transfer Students
LCC students who are interested in the Computer Information Technology (CIT) minor at the UO should be aware that the following courses may be able to substitute for UO minor requirements by CS Petition form to the Computer Science Undergraduate Education Committee.
- LCC 195 Web Authoring for CS 110 Fluency with Information Technology
All courses must have been completed with grades of B or better.
A student who has completed the appropriate lower division courses at LCC will be able to complete the CIT minor in one year at the UO:
- CIT 381 Database Systems* (Fall)
- CIT 382 Web Applications Development II (Winter)
- CIT 383 Networking Fundamentals (Spring)
*Students who have taken CS 275 Database Systems and Modeling and CS 276 Database SQL Programming and received grades of B+ or better should talk to a UO Computer Science advisor about possibly substituting another upper division Computer Science class for CIT 381.
Opportunities and Resources
- Activities and Student Groups
- Research Opportunities
- CS Internships
- CS Departmental Honors
- CS Scholarships, Awards
- Seminars and Individual Study Courses
Many good students find that tutoring can be the extra boost needed to do well in classes. Students may be able to locate a qualified tutor by checking the CS Student Tutor Board in Deschutes 100.
Student tutor forms are posted with CS instructor approval, and include phone and email contact information. Reimbursement arrangements are negotiated between the student and the tutor. The CS office serves only as a contact point and makes no guarantee about services.
Students should also be aware that individual classes have office hours and/or other help hours where students can seek help from the course instructor or other instructional staff such as GEs and LAs. Computer Science strongly encourages students to take advantage of class resources.
If you are interested in tutoring students in classes that you have already taken for a grade of B+ or better, you may fill out a tutor application form in the CS office.