Undergraduate Program

Computer science majors at Columbia study an integrated curriculum, partially in areas with an immediate relationship to the computer, such as programming languages, operating systems, and computer architecture, and partially in theoretical computer science and mathematics. Thus, students obtain the background to pursue their interests both in applications and in theoretical developments.

Practical experience is an essential component of the computer science program. Undergraduate students are often involved in advanced faculty research projects using state-of-the-art computing facilities. Qualified majors sometimes serve as consultants at Columbia University Information Technology (CUIT), which operates several labs with microcomputers and terminals available at convenient locations on the campus.

Upper-level students in computer science may assist faculty members with research projects, particularly in the development of software. Ongoing faculty projects include algorithmic analysis, computational complexity, software tool design, distributed computation, modeling and performance evaluation, computer networks, computer architecture, CAD for digital systems, computer graphics, programming environments, expert systems, natural language processing, computer vision, robotics, computational biology, computer security, multicomputer design, user interfaces, VLSI applications, artificial intelligence, combinatorial modeling, virtual environments, and microprocessor applications. Students are strongly encouraged to arrange for participation by consulting individual faculty members and by attending the Computer Science Research Fair held at the beginning of each semester.

Most graduates of the computer science program at Columbia step directly into career positions in computer science with industry or government, or continue their education in graduate degree programs. Many choose to combine computer science with a second career interest by taking additional programs in business administration, medicine, or other professional studies.

For further information on the undergraduate computer science program, please see the home page and the Quick Guide.