Courses

Undergraduate Courses

For brief descriptions of courses and scheduled instructors, please consult the official Dartmouth Course Descriptions and Requirements published by the Office of the Registrar. For detailed information about the terms and times that courses will be offered, the most reliable source is the Timetables page on the Registrar's site. (Click on Subject Area(s), then search for COSC courses.)

 

Course Dependency Graph

The graph below provides a visual representation of the courses we offer and the prerequisite relationships between them. Click the image below to open an interactive version where each node is a clickable link to the corresponding ORC entry. Last updated Fall 2020.

    cs_course_dependencies_2020.png

    CS course dependency graph

    COSC 94 and 99

     

    COSC 94: Reading Course

    COSC 94 is an independent study of a certain subject and can be taken any term.  It is a custom-designed, faculty-guided, independently operated, course in computer science - and its topic and nature can be drawn from the wide range of course topics and types you see in the curriculum. Examples include reading textbooks, research literature, and tutorial material; watching online lectures from other universities or programs; developing code; designing algorithms; analyzing data; and more.  

    You need Instructor Permission to enroll for these courses. This is given by the Undergraduate Program Director. To get this permission, you need to follow the following steps:

    • First, you need to identify an advisor who will guide and evaluate your independent study. This person must be a CS faculty member. This includes regular faculty members (tenure track / instructors) and adjunct faculty members. Approach the professor early; at least one or two terms in advance is recommended. 

    • Together with the faculty member you need to create a proposal. The proposal must describe the material being learned, and the planned approach.  A typical proposal is 1.5-2 pages long comprising of-

      1. Course goals and objectives + a personal rationale you to pursue this independent study. 
      2. Materials : Textbooks, Notes, Websites, Videos, etc.
      3. A Semi-detailed Schedule. For each of the 9-10 weeks, you should point to the material you will be studying. At the very least, the topic.
      4. Description of evaluation procedure : assignments/labs/projects, etc + when they will be due.

              The workload should be equivalent to a regular course.

    • You need to submit the proposal to the Undergraduate Program Director, cc-ing your advisor. The advisor must confirm that they have approved the proposal and that they will indeed be supervising, and at the termination of the course, grading the student.

     

    COSC 99: Thesis Research

    COSC 99.01 and COSC 99.02 is individual research on a topic carried out with a thesis advisor. This is open only to COSC majors or COSC modified majors with CS as the primary part.  COSC 99.01 and 99.02 constitute a two-course sequence and must be taken in two consecutive terms, either fall/winter or winter/spring, normally in the senior year.  In order to receive credit for COSC 99.01 and 99.02, a written thesis must be approved by the thesis advisor. 

    You need Instructor Permission to enroll for these courses. This is given by the Undergraduate Program Director. To get this permission, you need to follow the following steps:

    • First, you need to identify a thesis advisor and ask them to commit to being your advisor. This person must be a CS faculty member. This includes regular faculty members (tenure track / instructors) and adjunct faculty members. Approach the professor early; at least one or two terms in advance is recommended. 
    • Along with your advisor you must draft a thesis proposal which should be 1-2 pages long. It should contain a tentative title, the proposed problem of research, and an outline of some approaches to tackle these problems. 
    • You need to submit the proposal to the Undergraduate Program Director, cc-ing your advisor. The advisor must confirm that they have approved the proposal and that they will indeed be supervising, and at the termination of the course, grading the student.

     

    Transfer Credits

    Often, undergraduate students take courses in universities other than Dartmouth and wish to get transfer credits for the same. Transfer credits for CS courses are approved by the Undergraduate Program Director. However, for them to do so, the student needs to perform the following steps:

    • First identify which CS courses in the Dartmouth curriculum best fits with the courses they wish to transfer to Dartmouth. Use the ORC and previous offerings of Dartmouth courses to do so.
       
    • Once they have identified a course number, then they will identify a faculty member who has/is/will be taught/teaching it. This information can be readily found for most courses at the "Upcoming Courses" link in the CS website. In case the student has trouble identifying faculty, they should contact the UG Program Director.
       
    • After they have identified the course number and the faculty member, they must write an email to this faculty member cc-ing the UG Program Director, asking if the course outside Dartmouth is suitable for transfer credit. They must provide all the information they have about that course: the course syllabus, website, instructors name, etc. This process can have a back-and-forth between the faculty member and the student, so they are requested to allow enough time for this.

      The faculty member will approve if there is significant overlap (roughly 80%) between the two courses. If they don't think so, they will not give approval, and the student cannot take transfer credit for that course number.
       

    • After the student has heard back from all the professors about all the courses, they should email the UG Program Director with the transfer credit approval form. It would help if they could also copy-paste the final replies of the faculty members to help jog the memory of the UG Program Director.
       
    • If no Dartmouth CS course seems to be a match, and yet they feel it deserves credit for a CS course, then they can simply email the UG Director asking for a transfer to COSC 000. The UG Director will make a call on this. This course, however, won't count towards the student's major requirements.