Computer Science Department


Choosing classes can be complicated.  Below we have a sample schedule for a computer science major, as well answers to some of the most frequent questions students have about choosing classes.  Remember you can always talk to any of the computer science professors about any issues you have.

Sample schedule

Below is a sample schedule for each semester for a "typical" Reed computer science major.  Almost no one is completely typical, and every student does something a little bit different, but this is a good starting point for thinking about how your schedule might look.  Group requirements can easily be moved around.  "Csci elective" refers to computer science classes numbered 300 or higher (other than 382, 387, and 389).  "Elective" is just a completely free course in the schedule.  Students can use these to take computer science (or math) beyond what is required for the major, or they can use them to pursue interests in other fields (or more often, a combination of the two).

Year 1 Fall         Year 1 Spring      
Hum 110 Hum 110
Math 111 Math 113
Csci 121 Group 1


Year 2 Fall         Year 2 Spring      
Csci 221 Csci 382
Math 112 Math 201
Group 1 Csci 389
Group 3 (lab) Group 2


Year 3 Fall         Year 3 Spring      
Csci 387 Csci elective
Csci elective Csci elective
Group 1 Group 2
Group 2 Elective


Year 4 Fall         Year 4 Spring      
Csci 470 Csci 470
Csci elective Elective
Elective Elective
Elective Elective


Frequently Asked Questions

Can I skip CSCI 121?

You should talk to us about your background.  There is no "automatic" way to skip CSCI 121, and the AP Computer Science test covers less than our course.  That said, it's always possible that you've seen enough that you should skip it, and we'll talk to you about what you've seen before and figure out what's best for you.

Can I skip MATH 111?

We recommend you talk to a math professor.  Generally a good score on the AP Calculus test qualifies you to skip MATH 111.  Other courses you might have taken also sometimes qualify but require case-by-case consideration.

If I skip CSCI 121, what should I take my first year?

We generally recommend you take some hands-on computer science class your first year, so if you don't need to take CSCI 121, it's probably best to replace it with CSCI 221.

If I skip MATH 111, what should I take my first year?

Usually the best thing to do is make more progress on your math requirements and take MATH 112 in addition to MATH 113.  Of course, you could also take something else and still be on a perfectly reasonable schedule.

I'm considering both computer science and another major.  How should I keep my options open?

You should talk to professors in both majors, but this is generally not too hard.  If you're considering math, you can simply take MATH 112 instead of MATH 113.  If you're considering a major that doesn't expect students to take courses for the major their first year, then everything is easy.  If you are considering a major that requires two courses of first year students (ex., a science) then you could put off MATH 113 until your second year, or you could simply take four courses in your spring semester.

I'm a sophomore and I want to switch to a computer science major.  Can I do that?

Yes!  If you've taken some computer science or math classes already, it will be very easy.  If you haven't, it will mean your schedule is tight and you won't have a lot of freedom about what you take, but it can still certainly be done.  Please come talk to us so we can work with you to make sure everything goes well.

What does the computer science junior qualifying exam cover?

The qual covers the material in CSCI 121, CSCI 221, and MATH 113.  You should definitely make sure you have taken those classes before the end of your second year.

Can I spend a semester abroad?

Yes, but you need to plan for it.  The most common destination is the Aquincum Institute of Technology in Budapest, Hungary, as its program specializes in computer science and software engineering. They offer courses equivalent to our 300-level core, as well as several other 300-level computer science electives. Our students have gone to a variety of other locations as well.  Generally you can fulfill some of the computer science elective requirement while abroad.  Some but not all of the core courses might be possible to fulfill abroad, but you should talk with your adviser about a plan.

Can I do an interdisciplinary major?

Yes, students frequently combine computer science with another field in an interdisciplinary major. There is a standing interdisciplinary major with math, which is very popular. (See requirements here.) Other interdisciplinary majors can be proposed on an ad-hoc basis. We're happy to talk to students who are interested in an interdisciplinary major with any other field. We encourage you to talk to us as soon as possible about your potential interest. (Formal proposals are normally divised and approved near the end of sophomore year.) Keep in mind that an interdisciplinary major requires a truly interdisciplinary thesis. This generally means that it should make use of content from upper-level courses in both majors.