Below you will find advice specific to first year students, including help with course selection and information on AP credit.

Should I Study Computer Science?

You never know until you try. If you are at all interested in Computer Science, take a class and talk to the department faculty. Even if you decide CS is not for you, computer science introductory courses (CS 104, CS 105, CS 106) and the computational methods introductory course (CM 151) count as Common Course of Study Natural Science credit for non-majors.

What If I Know I Want to Study Computer Science?

The Department of Computer Science offers two majors and two minors. The Bachelor of Science degree is a requirement-heavy curriculum for individuals interested in focusing on core computer science fields; the Bachelor of Arts degree takes a broader approach to computer science, replacing requirements with course work in other disciplines of interest.

The Computer Science minor is for students that would like to complement their primary area of study with computer science; the Computational Methods minor allows students from other disciplines to complement their primary discipline with computational methodology.

Below are courses you should be taking in your first and second semester for a normal schedule based on the degree program you wish to follow.

Bachelor of Science in Computer Science (BSCS)

All students pursuing a BSCS curriculum should complete the two initial CS courses in their first year. This includes both one of the various introductory courses (CS 102, CS 104, CS 105, or CS 106) and Data Structures and Algorithms (CS 103, CS 150).

It is typically advised that first-year students take Discrete Structures (MATH 182) during the first spring semester. If a math dual degree is also being considered, there are replacement options for MATH 182, which are detailed on the Department Policies page.

Students arriving with introductory course credit (see questions below) will have an advanced curriculum. Specifically, if a student begins with the Data Structures and Algorithms (CS 150) course, then they will be taking the Software Engineering (CS 205) course their second semester.

Bachelor of Arts in Computer Science (ABCS)

All students pursuing an ABCS curriculum are recommended to complete the two initial CS courses. This includes both one of the various introductory courses (CS 102, CS 104, CS 105, or CS 106) and Data Structures and Algorithms (CS 103, CS 150).

It is also suggested that ABCS students complete Logic (PHIL 200) their first fall semester and Discrete Structures (MATH 182) during the first spring semester.

Minor in Computer Science

Students pursuing a Minor in Computer Science are suggested to complete one of the initial CS courses in their first year. This will be either one of the various introductory courses (CS 102, CS 104, CS 105, or CS 106) or Data Structures and Algorithms (CS 103, CS 150).

Minor in Computational Methods

Students pursuing a Minor in Computational Methods are suggested to complete Introduction to Computational Science (CM 151) in their first year.

Does AP Computer Science Count?

Currently the department accepts an AP Computer Science A exam score of 4 or 5 as credit for the introductory course, providing credit for CS 102. This will not count as a Natural Science course for the Common Course of Study. You will be able to take CS 150 (the second course in the computer science curriculum) your first semester.

What If I Have Computer Science Experience But No AP Credit?

If you have enough experience to skip the introductory computer science course, but do not have AP credit, you can start in the second CS course (CS 150) with instructor approval. This is a decision to be considered carefully; please talk with your computer science faculty adviser and the instructor for CS 150 when considering this option. You will be required to take an upper-level elective in your third or fourth year as a replacement for the introductory course you did not take.

What If I Have the First Two Courses Covered?

This is a very rare situation, and you will be required to get approval from the department. For this option, talk with your computer science faculty adviser and/or contact the Department Head for details about the process.

What If I Am a Transfer Student?

Contact the Department Head, who will help you navigate the process of determining your place in the department curriculum.