Computer Science

Departmental Honors Thesis in Computer Science

What is an Honors Thesis?

An Honors Thesis is a year-long investigation undertaken by a student in her senior year, under the supervision of a faculty member. The research counts as 8 credits---4 in the Fall, 4 in the Spring. The student writes a thesis by April 15th of her final semester, and "defends" the thesis by giving a public presentation on her work to faculty and students. This presentation is usually scheduled for the last week of the semester. The thesis supervisor grades the 8 thesis credits. The Department faculty vote on the level of honors to be awarded at graduation.

The Computer Science Department maintains a copy of all theses written since the formation of the department. These are bound in red and can be found in a bookcase in the faculty offices. A copy of each thesis is also filed in the Science Library. A (partial) list of theses may be found here.

Why do an Honors Thesis?

If you are eligible (see below), it is an option that should be considered seriously. It is an intense but rewarding experience. Few students regret it, and it is often the highlight of their undergraduate careers. It is not uncommon for thesis work to lead to a published paper, and in any case it gives the student a leg up on graduate school applications.

Honors Director

Prof. Ileana Streinu ( is the Honors Director for 2011-12, and should be contacted for questions regarding working on an Honors Thesis.

Am I eligible?

The Computer Science admission criteria are as follows:

How do I apply?

Detailed instructions are available from the Guidelines found at the Class Dean's Web site (filed alphabetically under "APPLY TO ENTER THE DEPARTMENTAL HONORS PROGRAM" and so easy to overlook). But here is the summary.

The formal application is due by mid-September of your senior year (15 Sep in 2008); it can be started and/or submitted in the late Spring of your junior year. The formal application is not complicated. The most crucial aspect is securing a supervising faculty member and settling on a topic. The latter need only be worked out sufficiently to write up a one-page Abstract of what you hope to accomplish in the thesis. But it is important to emphasis that you do not need to have a topic in mind before starting the process, as explained below.

Concerning securing a thesis supervisor, there are essentially two models. Model 1 is that the student comes up with a topic, and convinces a faculty member to supervise it. This is more rare than: Model 2, in which the student goes to the faculty member, and says (effectively), can you suggest a topic? And then the student gathers the topics suggested by all the willing faculty, and decides what to pursue. Several faculty in Computer Science prefer Model 2, for two reasons: (1) they can most knowledgeably supervise a thesis in an area with which they are thoroughly immersed, and (2) because faculty enjoy advancing their own research. Typically faculty will meet weekly with their thesis student, and more intensively at crucial junctures of the research and writing.

We encourage students considering a thesis to contact all the faculty with whom they would be comfortable, and ask each if they have ideas for theses topics, perhaps under some constraints (e.g., avoiding programming, including programming, something related to artificial intelligence, etc.) In general faculty consider it a gift to be asked to supervise a thesis for a good student (and all thesis students are by definition good!), so do not feel that you are asking for a favor. It is best, although not essential, to initiate this topic investigation prior to the Fall of your senior year, so that this process does not have to be compressed into the first two weeks of the semester.