Computer science majors choose between two options: Computer Science (CS) and Applied Computer Science (ACS). Both options require a common core set of courses designed to give students a fundamental understanding of both theoretical and applied computer science, and an introduction to current topics and practices in the industry. Upper-level courses within each option build on these concepts to provide depth in particular areas. As such, all computer science majors are prepared for computer science careers and, if they desire, further graduate study in computer-related fields.