Advice FOr Degree Completion
Know the requirements and plan your major.
Courses Specification
100 Level to 200 Level
These are entry level courses which aim to teach the basics of what is required in an undergraduate computer science course.
Special Topic Courses
Special topics courses include courses that address a current or timely topic, that are in a “pilot” phase before being offered on an ongoing basis, or that are known to be one time offerings. Special topics course offerings can vary from term to term.
300 Level to 400 Level
These are upper level courses which aim to teach the specialized and explore certain paradigms in more detail overall.
May & January Terms
Earlham’s May Term offers an intense, innovative academic experience on or off campus. These courses are not part of the regular curriculum and are special for the May Term. The January Term provides a similar opportunity for students to engage in unique and focused academic projects. This session allows students to explore topics in depth, participate in hands-on learning, and benefit from a concentrated study period.
Advice for Degree Completion
- The latest a Computer Science major may be started is in the Fall of your sophomore year (unless you have already taken a couple of the math requirements and have some background in Computer Science).
- Students who have an exceptional level of preparation in Computer Science, especially in Python programming, should consider taking CS256 as their first computer science course. Students who are unsure about whether they are prepared for CS256 should contact the CS department faculty to discuss it.
- The core of the curriculum is CS128, CS256, CS310, CS320, CS380, CS388, and CS488.
- CS128, CS256, CS388, and CS488 are offered every term. CS310, CS320, and CS380 are offered every year.
- The rest of the standard curriculum is offered every other year.
- The two required math courses can be taken in any order, but Math Toolkit is a co-requisite for CS256, and students should try to have them all complete before they take CS310.
- The prerequisite structure (see Courses and Prerequisites) requires CS128, CS256, CS310 and CS320 to be taken in that order. CS380 (Theory of Comp.) should normally be taken as early in the program as possible, usually in the second Spring.
- CS388 can be taken any time your junior or senior year. CS488 must be taken your senior year, after you have completed CS388. We recommend that students try to schedule these courses back-to-back, but we recognize that study abroad and athletics can make this difficult, so putting one term between them is acceptable.
- Students should try to complete CS128, CS256, and CS310 as early as possible, as these are prerequisites for many other courses, some of which are required. Students should also try to complete CS320 as soon as they can, as this is a prerequisite for several upper-level courses.
- We recognize that students who start the major after their first term, who are double majors, or who plan to study abroad can sometimes find it challenging to fit all of the requirements in. If this is you, please get in touch with us as soon as possible so we can help you make a plan that will allow you to finish the requirements.