Honors in Computer Science

The Computer Science Department offers its majors the opportunity to pursue independent research in computer science. It is a chance to study an area in more depth than is usually available through regular course work, to work at the cutting edge of the field, and to have control over one’s program of study, under the guidance of a faculty member.

Although various considerations come into play when the department considers granting the degree with Honors to a student, the one that is of greatest importance is the student’s thesis. The thesis is usually the culmination of a year’s concentrated study in a particular area. The thesis is meant to be a significant piece of written work, including an analysis and review of the literature concerning the problem examined, a discussion of all original work and the solutions devised, and a description of the work remaining to be done. Due to the nature of the field, honors work in computer science generally includes the development of a significant software package.

Students who are interested in honors work should consult with their departmental advisor as soon as possible, preferably when declaring the major, so that their course work can be planned so as not to create conflicts during their senior year. During Winter Study or the spring semester of their junior year, students typically consult with the members of the department in order to find a match of interests. (A list of current faculty members and their research interests can be found at the end of this document.) During the process of finding an appropriate match, the department requires submission of a research application (please read the application and make note of the submission deadline). Once such a match is found and agreed to by both parties, the student registers for CSCI 493-W031-494, Senior Honors Project. It is often possible for the student to work with the faculty member as a research assistant during the summer on a project leading to the thesis work, but this is not required.

Formal work on the thesis begins during the fall semester. The early weeks generally involve fleshing out the problems to be solved and searching through the literature determining what is already known. A one-page description of the thesis project is due in early November. As the semester progresses the work becomes more focused as student and advisor map out a plan and the student begins work on the problem. Before the end of the fall semester, the student and advisor will select a second reader for the thesis. Although the entire department will convene to discuss the work when it is time to grant Honors, it is the second reader’s job to help guarantee that the thesis itself is of high quality. By the end of the fall semester the student will submit a chapter on the background of the thesis work (detailing previous work in the area) to the advisor and second reader to be critiqued.

Winter Study is a crucial time for honors students. With no other courses to place demands on the student, the month of January should be the most productive month of the year. Most (though not necessarily all) of the research work should be finished during this time. If the honors work involves the development of a significant software package, then that work should also be completed by the end of the Winter Study period. The student should also have written up a chapter on the thesis goals and submitted it to both readers for feedback. This paper will generally become the introduction of the thesis.

At the beginning of the spring semester, several important events occur. The first is the decision of the department as to whether the student will be admitted into candidacy for Honors. Admission is contingent upon the department being convinced that the work thus far has been of high quality and that the student can reasonably be expected to complete the remaining requirements. (If the student is not admitted to candidacy, the fall semester and Winter Study courses revert to independent study courses and the student takes some course other than CSCI 494 to round out his or her schedule.) The second event is that the student will give an oral presentation of the work completed at a department colloquium. This talk must have been presented at least two weeks before Spring Break. Sometime before the break, the student should discuss an outline of the thesis with his or her advisors, submitting it to both readers for approval.

By the end of Spring Break, the actual writing of the thesis should be well underway. As each chapter of the thesis is completed, the student will give it to both readers who will examine it, make comments and discuss them with the student. By the end of April the student should give a complete draft of the entire thesis (with illustrations and bibliographic references included) to the readers. The readers will comment and provide feedback to the student within a week. The student will then make appropriate revisions, handing in a completed copy of the thesis by the Thursday before the end of classes. Since the entire department must have a chance to examine the thesis before the defense, the defense will be scheduled for a few days later. Under no circumstances, however, will it be scheduled after the last day of reading period.

The defense itself consists of a short (thirty-minute), public presentation by the student summarizing the year’s work, followed by a question and answer session. After the defense, the department meets and discusses whether the student’s performance throughout the year merits Honors, Highest Honors, or no particular distinction. The student will be informed of the decision within twenty-four hours. On rare occasions the student may be informed that he or she will receive Honors contingent on making certain revisions in the thesis.

The decision to pursue honors work should be made with care. The benefits are the opportunity to work one-on-one with a faculty member, to explore a problem in depth, and to engage in the type of scholarship necessary to succeed in post-graduate work. One cost is that two courses are taken up by this activity. Also, the Winter Study period, which for many students is the least pressured time during the school year, becomes a time of hard work and dedication to the honors project. We encourage you to talk to various members of the department as well as current honors students about honors work. To help you, we have included two lists below. The first is a list of department members and a brief description of the areas they work in. Individual projects may vary greatly from this list, though, so we encourage you to discuss your interests with several members of the department. You should have such discussion before the registration period in the spring of your junior year.

Computer Science Faculty and Their Research Interests

Jeannie Albrecht: The design and performance of distributed systems and computer networks, particularly focusing on reliability, scalability, and extensibility achieved over the wide-area.

Duane Bailey: Parallel programming environments, computer architecture, graph drawing, sequential and parallel data structures, and puzzle complexity.

Andrea Danyluk: Machine learning, application of machine learning to real-world problems, systematic data error and its effects on inductive learning, cost-sensitive learning, evaluation and comparison of learning algorithms, theory revision.

Stephen Freund: Design and implementation of programming languages and virtual machines, type based program analysis, verification of multithreaded programs, programming environments and tools.

Brent Heeringa: Algorithms, data structures, complexity, computability, lower bounds, and approximation algorithms.

Bill Lenhart: Graph theory, graph drawing, computational geometry, graphics algorithm design, and combinatorics.

Morgan McGuire: Film and video game production, cinematography, game design, new visual experiences through computation.

Tom Murtagh: Programming language implementations, communication networks.

Deadlines for Honors Work, 2015-2016 Academic Year

All students pursuing honors work in Computer Science are required to complete this form. Please read the form in full, and make sure you understand all deadlines and signature requirements. If you have any questions, speak to your advisor.

This form will be maintained by the administrative assistant, Lauren Vining. At the time signatures are due, pick-up the form from Lauren. Once you have both signatures for a particular deadline, return the form to LaurenĀ and she will keep it on file until the next time signatures are required.

October 24, 2016: Brief (one page) description of thesis project due to department.

December 11, 2016: Fall classes end. Student must have received commitment from second reader for thesis. Chapter on background of thesis work (i.e. history of the problem, etc.) due to advisor and second reader. Preliminary decision on approval to pursue Honors.

January 26, 201: Winter Study Period ends. Software development and/or original research should be largely completed. Chapter on thesis goals is due to advisor and second reader.

February 1, 2017: Spring classes begin. Final department decision on admission of students to candidacy for Honors. This month, during regularly scheduled colloquia, students give their proposal talks.

February 17, 2017: Outline of thesis due to both readers.

April, 2017: Individual chapters must be given to both readers throughout this month.

April 17, 2017: Entire thesis, including figures and bibliographic references, due to both readers. For thesis formatting purposes, here is the text file that conforms to Williams College rules and standards.

May 1, 2017: Revised, final copy of thesis due to department (three copies: one for each reader and one for department as a whole). Revisions should respond to comments by both readers.

May 16, 2017: Tentative defense date.

May 23, 2017: Last Day of Final Exams. Thesis due to library.