Students new to computer science at UCSD often ask which course to enroll in first. It is important that each student select the starting point that is right for them. A majority of CSE majors do not start in CSE 11, and these students are at least as successful as those who do start in CSE 11. Regardless of which of these courses you start with, you will be on track to complete the major. The following suggestions are rough guidelines based on prior experiences with our students:
- Students who have significant prior programming experience (for instance, a score of 4 or 5 on the AP CSA exam; or an object-oriented programming course in a community college) should consider beginning with CSE 11.
- Students who have not taken an object-oriented programming course, but might have taken other high school computing courses (including AP CSP) and are comfortable with using computers, should consider beginning with CSE 8A.
- Students can also consider beginning with CSE 3 or CSE 5A.
To reiterate, these are merely suggestions, and regardless of which path you choose, you will be on track. For each track there is a defined plan to graduate in four years. Ultimately, it is up to the individual to determine a suitable starting point in CSE. A good strategy is to pick a starting course according to the above rubric, but to change it as early as possible if it turns out to be too elementary or too difficult. If you are at all unsure about what course to start out with, we highly encourage you to meet with an advisor as soon as possible: https://cse.ucsd.edu/undergraduate/undergraduate-advising
- CSE 3 - Fluency in Information Technology
- CSE 8A - Introduction to Computer Science Programming: Java Language
- CSE 11 - Introduction to Computer Science and object-Oriented Programming: Java Language
- For students who have completed the equivalent of CSE 11 at another institution: CSE 12 - Data Structures and Object-Oriented Design (CSE 15L must be taken the same quarter as CSE 12)