ADVICE FOR FIRST-YEAR STUDENTS INTERESTED IN COMPUTER SCIENCE
What "First" Programming Courses Are Offered?
The Department of Computer Science offers a range of
"first" programming courses:
-
CPSC 1001 Introduction to Programming,
develops computer programming skills, problem-solving methods, and selected applications/ No previous experience with computers necessary. Many students who have no experience in programming, or want a refresher in programming, start here and then go on to become CS majors.
-
CPSC 1100 Python Programming for Humanities and Social Sciences
teaches students to apply computing techniques in the fields of social sciences & humanities by analyzing data. No previous programming experience is required. This course is intended for students of social sciences & humanities majors, but other majors are also welcome.
-
CPSC 2000 Introduction to Information Systems
is a survey course for nonmajors that teaches Python
and focuses on practical applications of computing
technology, while examining topics including computer
hardware, computer software, and related issues such
as security and software engineering. Students with
sufficient programming experience may elect CPSC 2000
without taking CPSC 1001.
Web Page
-
CPSC 201 Introduction to Computer Science
teaches the basic concepts (e.g., algorithms), techniques
(e.g., recursion), and applications of computer science,
including systems (computers and their languages) and
theory (complexity and computability). Students with
sufficient programming experience may elect CPSC 2010
without taking CPSC 1001. (These courses meet at
the same time so that students may easily change levels if
necessary.)
Of the above, only CPSC 2010 counts toward the CS major requirements.
Which "First" Programming Course Should I Take?
If you have
- never programmed before or have minimal
experience, you should take CPSC 1001;
- taken AP Computer Science or have equivalent
programming experience, you should take CPSC
2000 or 2010 (the latter if you are considering one
of the computer science majors below);
If you fall between these levels of preparedness, shop
both courses. If you enroll in the more advanced one
but a week or two later feel that you have overreached,
you may be able to switch to the less advanced one.
(But check with both instructors before you enroll to
ensure that you have this option.)
How Can I Major in Computer Science?
The Department of Computer Science offers five majors:
Each major program not only provides a solid technical
education but also allows students either to take a
broad range of courses in other disciplines or to
complete the requirements of a second major. For more
details, see the descriptions in the links to the Yale
College Programs of Study above.
What Other Advice Do You Have For Prospective Majors?
Here are some do's and don'ts:
- Do take a course in computer science during your
first year if you are considering any of the
computer science majors,
- Do take a course in the other discipline during
your first year if you are considering any of our
joint majors,
- Don't take more than one computer science course
per term during your first year. You chose Yale
because you wanted a liberal education; you need
not sacrifice that goal by rushing to satisfy the
requirements of your major.
- Don't be that student who takes nothing but technical
classes. Yale is not one
of great science & engineering universities in the world;
it is one of the great liberal arts universities in the world.
Getting a wide education across the arts and humanities will make you stand out from the crowd later. A transcript of STEM-only classes shows wasted opportunity.
If you have questions about the advice above, contact
the First Year and Sophomore Class Advisors.
How Can I Get More Information/Advice?
Consult
Version 2025/08/25