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 100 Introduction to Computing and Programming,
taught jointly with Harvard University, teaches
students majoring in any subject area how to
program a computer and solve problems in a variety
languages (C, Python, SQL, and JavaScript, plus
CSS and HTML). No prior experience is required.
Web Page
-
CPSC 110 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 112 Introduction to Computing and Programming
teaches students majoring in any subject area how
to program a computer and solve problems using the
language Java. No prior experience is required.
-
CPSC 200 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 200
without taking CPSC 100 or 112.
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 201
without taking CPSC 100 or 112. (These courses meet at
the same time so that students may easily change levels if
necessary.)
Of these only CPSC 201 counts toward the
computer science majors.
Which "First" Programming Course Should I Take?
If you have
- never programmed before or have minimal
experience, you should take CPSC 100 or 112;
- taken AP Computer Science or have equivalent
programming experience, you should take CPSC
200 or 201 (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 their entire academic career. 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 is what will make you stand out from the crowd later. A transcript full of STEM-only classes shows a 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 2024/10/26