Below you will find advice specific to first year students, including help with course selection and information on AP credit.
You never know until you try. If you are at all interested in Computer Science: take a class and talk to the department faculty. Additionally, 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.
The Department of Computer Science offers two Majors and two Minors, providing students different levels of access to the area of computer science. Briefly, 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; and 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.
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 advised that first year students take Logic (PHIL 200) during the first fall semester and 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.
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.
Once the initial courses are complete, the ABCS program should be completed at a pace appropriate with the goals of students’ planned curriculum in collaboration with their advisers.
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).
Once the initial course is complete, the CS minor program should be completed at a pace appropriate with the goals of the students’ planned curriculum in collaboration with their advisers and computer science faculty.
Students pursuing a Minor in Computational Methods are suggested to complete Introduction to Computational Science (CM 151) in their first year.
Once the initial course is complete, the CM minor program should be completed at a pace appropriate with the goals of students’ planned curriculum in collaboration with their advisers and computer science faculty.
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. What this means is that you have credit for the introductory course, but it will not count as a Natural Science course for the Common Course of Study. This will allow you to take CS 150 (the second course in the computer science curriculum) your first semester.
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 adviser and the instructor for CS 150 when considering this option. If you have enough background, you will be allowed to progress, but 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.
If you are very advanced and wish to not take the first two courses, this is a very rare situation and you will be required to get approval from the department. For this option, talk with your Department of Computer Science adviser and/or contact the Department Head for details about the process.
Contact the Department Head, they will help you thru the process of determining your place in the department curriculum.