CPSC 290 Directed Research

Recent Projects

See https://zoo.cs.yale.edu/classes/cs290 (Yale only).

YCPS Description

Individual research. Requires a faculty supervisor and the permission of the director of undergraduate studies. May be taken more than once for credit.

Enrolling in CPSC 290

To enroll in CPSC 290, you must:

  1. Find an advisor.
  2. Prepare a three-page description of your planned project. This is a written document, negotiated with your advisor, that must include a list of deliverables for your project.
  3. Submit your project description, as approved by your advisor, by email in plain text or PDF format to the DUS. You should CC your advisor on this message.
  4. Register for CPSC 290. You will not be able to do this until you have completed the preceding requirements.

You must complete these requirements and have your project approved by the DUS at least two days course before your course schedule is due.

End-of-Term Requirements

The following requirements must be completed by noon on the last day of reading period:

  1. Use the script /c/cs290/bin/abstract to submit your abstract. Just type the command and it will ask for your name, the title of your project, your advisor’s name, and a 250-to-300-word abstract. This information will be added to the on-line database of recent CPSC 290 projects.
  2. Use the script /c/cs290/bin/submit to submit a set of web pages describing your project. Type the command, followed by a list of files/directories as arguements. These web pages: These pages will become part of the on-line database of recent CPSC 290 projects.

A best way to check your submission is to check the on-line database to verify the content.

Note: You must satisfy these requirements even if you plan to continue your project next term. The only difference is that your electronic abstract, final report, and web pages should constitute an interim progress report (i.e., the level of detail must be the same as in the final versions, but the work described need not be complete).

Frequently Asked Questions

  1. How do I choose a project?

    There are two general approaches

    and a host of possibilities in between.

  2. What kind of project is appropriate?

    The project should be more than just an extended homework assignment or final course project and should require that you learn more about some area of computer science. To give you some idea of the possibilities, the titles, abstracts, and web pages of recent projects are available online.

    Regular courses meet 2 1/2 hours per week and require 2 to 3 additional hours per week for each hour of class. Using this as a guideline for what it takes to earn a course credit at Yale, the project should be something that you can complete in one semester (i.e., 14 weeks) working approximately 7 to 10 hours per week (i.e., in a total of 100-140 hours).

    Note: You cannot be paid for your work on the project. Moreover, to allow others to build on your results, all code and data must be made available to the Yale community.

  3. Who may advise a CPSC 290 project?

    The official advisor (and thus the person who evaluates the work and assigns the grade) must be a faculty member with an appointment in the Department of Computer Science. However, the de facto advisor need not be, as long as the student meets with the official advisor at least once a month.

  4. How can I learn more about projects from past semesters?

    The course web page contains the titles, abstracts, and web pages for recent projects. Copies of the written reports are kept in a circulating library managed by the departmental registrar (AKW 003).

  5. Does CPSC 290 count as an advanced elective for the CS major or related majors?

    No. CPSC 290 only gives you credit toward your 36-credit graduation requirement.

  6. How often may I take CPSC 290?

    You may take CPSC 290 more than once for Yale credit.

  7. May I do a two-term project?

    Yes. However, you must satisfy the end-of-term requirements at the end of each term, and your grade for each semester will be assigned at the end of that semester and will reflect what you accomplished. Thus in effect a two-term project is equivalent to two one-term projects, except that the work may be incomplete at the end of the first semester and the electronic abstract, written report, and web pages for the second semester describe the entire project.

  8. Are group projects allowed?

    Yes. However, each member of the group must work on a different part of the project, and your description, electronic abstract, final written report, and web pages must focus on your own contributions.

  9. What are the “deliverables”?

    Whatever you and your advisor decide you must complete by the end of the project. Possibilities include (but are not limited to) code, theorems, simulation studies, data analysis, written reports, and oral presentations.

  10. How is CPSC 290 graded?

    CPSC 290 is graded pass/fail. Typically your advisor will decide your grade.

  11. Does my grade in CPSC 290 affect Distinction in Major?

    Because CPSC 290 does not count toward any major, it is not included in calculations of Distinction in Major.

  12. Is there anything else that I should know?

    The description must be written in your own words and identify the project (or series of projects) that you expect to complete, working alone under the direction of your advisor. The final report should describe what you individually did, and the final grade will reflect that work.