The Java programming language is used for the courses Introduction to Computer Science I and II (CSCI-UA.0101 and CSCI-UA.0102). Well prepared freshmen who want to major in Computer Science and who have some programming experience, either from high school or the workplace, are advised to take CSCI-UA.0101 and CSCI-UA.0102 in their freshman year. Although Java is taught from the beginning, students are expected to have some basic programming experience before entering CSCI-UA.0101. Students with little or no experience in programming must take Introduction to Computer Programming (CSCI-UA.0002), a basic introduction to programming using Python, before taking CSCI-UA.0101. In order to place into CSCI-UA.0101 or more advanced courses, students must take either the departmental placement exam or the ETS Advanced Placement exam. Click here for more information on placement exams.
In Computer Systems Organization I (CSCI-UA.0201), students use both assembly language and the C programming language. In Computer Systems Organization II (CSCI-UA.0202), students typically use Java, C or C++. Upper level electives use a variety of languages, most commonly Java or C++. See the course web pages for more information.