Yale University.  
Computer Science.  
Computer Science
Main Page
Graduate Program
Undergraduate Program
Course Information
Course Web Pages
Our Research
Research Areas
Technical Reports
Graduate Students
Research and Technical Staff
Administrative Staff
Degree Recipients
Computing Facilities
CS Talks Mailing List
Yale Computer Science FAQ
Yale Workstation Support
Computing Lab
AfterCollege Job Resource
Graduate Writing Center
Department Information
Contact Us
Life in the Department
Life About Town
Job Openings
Faculty Positions
Useful Links
City of New Haven
Yale C2: Creative Consilience of
Computing and the Arts
Social Robotics Lab
Yale Faculty of Engineering
Yale GSAS Staff Directory
Yale University Home Page
Google Search
Yale Info Phonebook

The Undergraduate Program

The Department of Computer Science offers both Bachelor of Science and Bachelor of Arts majors in Computer Science and a combined Bachelor's / Master's program. It also offers joint majors with the Departments of Electrical Engineering, Mathematics, and Psychology.

Students working together.

Each program provides a solid technical education yet allows students to take the broad range of courses in other disciplines that is an essential part of a liberal education. As a result the total number of required courses is somewhat lower than at other schools. Some students use this freedom to complete a second major, such as Economics, Music, Political Science, or Theater Studies.

All of these programs are built around a common core of five computer science courses. The first, CPSC 201 Introduction to Computer Science, is a survey that illustrates the breadth and depth of the field to students who have already completed a one-term introductory course in programming. The others cover discrete mathematics; data structures; systems programming and computer architecture; and algorithm analysis and design. Together they include the material that every student of computer science should know.

This core is supplemented by a set of electives (and for the joint majors, a set of core courses in the other discipline). The electives give students great flexibility in tailoring the program to specialize in particular areas of computer science or to broaden their knowledge in a variety of areas.

The capstone of each program is the senior project, which lets students experience the challenges and rewards of original scientific research under the guidance of a faculty member. These projects deal with problems that cross the boundaries between courses and can involve complex and imaginative use of computers. Recent projects include:

  • Moonscape: Procedural Planetary Terrain Rendering
  • The Traveling Spaceman Problem: Moving-Body TSPs and Their Consequences
  • AnonTalk---an Anonymous Communication Application Powered by Dissent
  • Keys to Victory: Predicting NFL Outcomes via Machine Learning

There are also research opportunities for underclassmen, both during the academic year and over the summer.

The Bachelor of Science program is designed for students who plan to continue in computing after graduation, including technical management and consulting. The Bachelor of Arts program provides a solid computer science background as preparation for work in other fields such as finance, law, management, or medicine. The B.S. / M.S. program allows exceptionally able and well-prepared students to earn both Bachelor and Master of Science degrees after eight terms of enrollment.

The joint major in Computer Science and Mathematics is intended for students who are interested in computational mathematics, the use of computers in mathematics, mathematical aspects of algorithm design and analysis, and theoretical foundations of computing.

The joint major in Computer Science and Psychology allows students to integrate work in these two fields, with each providing tools and theories that can be applied to problems in the other. Such interactions include artificial intelligence, biological perception, cognitive science, and neural modes of computation.

The joint major in Electrical Engineering and Computer Science is designed for students interested in computer engineering and other areas at the interface between these two fields. It also covers discrete and continuous mathematics; algorithm analysis and design; digital and analog circuits; signals and systems; and systems programming.

Our majors are heavily recruited by leading software companies, as well as for jobs as consultants and on Wall Street. Some students start their own companies or attend graduate or professional school.

The computer science educational facility (affectionately known as the Zoo and the site of regular late-night pizza parties) is located on the third floor of the Arthur K. Watson building, which houses the Department. Its Intel workstations running Linux and Windows are available via both console and remote login 24 hours a day, 365 days a year, giving students in computer science essentially unlimited access.


Top of Page.