A Personal History of Computer Science at UNC-Chapel Hill
Dr. Peter Calingaert, Martha Seaver, and Dr. Steve Weiss at the May 1981 commencement. (Photo: © Department of Computer Computer Science, UNC-Chapel Hill)
Master'sOur first curriculum was the Master of Science in Computer Science. At the time of its approval in 1965, the Graduate School required for every master's degree a minimum of 30 hours of courses, a thesis, and one foreign language. We initially specified only a few courses as required. The language had to be a modern foreign language; we never adopted the cop-out of proposing that a computer programming language be accepted instead. We were permitted in 1970-71 to drop the language requirement, which really seemed more appropriate to a research M.A. in the humanities than to a professional M.S. in computer science.
In the 1970s the Graduate School delegated to departments the decision whether to require a thesis for the M.S. (while continuing to require one for the M.A.). We perceived substantial value in both the research for and the writing of the thesis, and kept the requirement. In 1979, however, we were persuaded by external reviewers (as I describe later) to reduce our effort devoted to the master's program. We ceased to require M.S. theses, each of which imposed a significant workload on three faculty members, and adopted instead a technical writing requirement. One way to satisfy the requirement was indeed to write a thesis, but we also offered two other options. One was to accept evidence of substantial, reviewed technical writing (e.g. a Ph.D. dissertation in chemistry, or a collection of articles in refereed journals). The other was to take a 3-hour course in technical writing, during which each student would write a technical paper whose substance and presentation were both of M.S. thesis quality, as judged by only two faculty members, and whose length was substantially shorter than a thesis.
Other requirements, perhaps unique to our Department, were that each student had to have written a program product and to have designed an administrative application of computers. Typically, the former was prepared in the software engineering laboratory course and the latter in the business data processing laboratory course. The administrative application requirement was phased out in the 1980s, but the program product requirement remains.
In 1964 no entering graduate student had an undergraduate degree in computer science, and we have continued to pride ourselves on our ability to assimilate students without such a background. In admissions we have normally favored scholarly ability over mere knowledge, but it is certainly true that some of our students have arrived more ignorant of computer science than have students at other graduate programs.
Our curriculum has therefore included at least some material that is normally judged to be at undergraduate level. At the same time, the computer science discipline has grown, and we have continued to identify subjects that we felt essential to any professional practitioner. As a result, we have typically identified many courses as required and permitted few electives. Some choices among the required courses were permitted at times, but there was early established a core of courses that all students had to take.
To help smooth out imbalances in the preparation of entering students, and to avoid repeating the same remedial material in multiple courses, we offered the following non-credit microcourses: APL overview, assembler language programming, calculus review, electricity and magnetism, linear algebra, PL/I overview, probability, representation of elementary data, and structured programming.
The comprehensive examination for the M.S. degree was initially oral and covered exactly those courses taken by the student. This examination was also used to screen students for admission into the Ph.D. program. For students seeking to avoid the M.S. thesis and to proceed directly into Ph.D. work, we offered an oral Master's Bypass examination.
Students with strong academic records and faculty support were occasionally admitted into the Ph.D. program without having to take the Bypass examination. As time passed, these waivers of the Bypass were issued with increasing frequency. Desiring students who did not receive a waiver called into question the desirability of issuing waivers. So did faculty who wondered whether some students had been let through too hastily. Moreover, during the 1980s some students perceived that the oral examination format led to nonuniform judgements of students, while faculty felt that oral examinations were taking a lot of their time.
We switched therefore to a written examination that covered the core courses only, with answers written pseudonymously and each answer graded independently by two faculty members. To save faculty time further, we used the same examination as the written portion of the comprehensive examination for the Ph.D. degree. To make one instrument serve two purposes, each question was supposed to be so crafted as to test master's students' knowledge and doctoral students' ability to extend or apply knowledge to an unfamiliar situation. The departmental written examination (DWE) came to be hated by faculty and dreaded by students.
DoctoralOur second curriculum was the Doctor of Philosophy in Computer Science. Before the introduction of the DWE in Spring 1987, admission to the doctoral program was based primarily on an assessment performed at the M.S. oral or Bypass oral. These oral examinations were obviated by the DWE, which was thus pressed into service for yet a third objective, assessment of fitness to pursue the doctorate. I should point out that neither the DWE nor any other examination has by itself constituted the sole criterion for admission to the doctoral program. We have always considered also course grades, assistantship performance, and other information.
Requirements for the Ph.D. have normally subsumed those for the M.S. Additional course requirements have always included a primary concentration in the area of computer science in which doctoral research is to be performed, a secondary concentration in a different area of computer science, and a supporting program outside computer science. An additional requirement is the performance of a semester of classroom teaching. The writing requirement is fulfilled by the doctoral dissertation.
The Graduate School mandates a formal review of a dissertation proposal, as well as written and oral comprehensive examinations. The written examination was originally cumulative, with the student writing four parts, each of which could be passed or failed independently. In 1970-71 we changed to a single-sitting format, and later redesigned the examination as the multipurpose DWE already described.
The DWE was offered for the last time in Spring 1994. As a criterion for judging admissibility into the doctoral program, it has been replaced by an oral qualifying examination taken typically at the end of a student's first year. As a comprehensive examination, it is being replaced by a written examination on the core, taken by both master's and doctoral students.
The foreign language requirement was initially written knowledge of two languages. In 1970-71 we changed it to speaking knowledge of one foreign language, and in 1974-75 followed the national trend in computer science by dropping the language requirement altogether.
BaccalaureateThe third curriculum was the Bachelor of Science in Mathematical Sciences, created in 1971 with five options, one of which was Computer Science. Our intent was to prepare students for graduate study rather than for employment. Many undergraduates entered the option as a prelude to employment, however, because there was no other appropriate program. Enrollment was restricted; students took five semester courses in computer science, four of them jointly with graduate students. In 1975 we adopted an Honors Program under which a student with sufficiently high grades and extra work could receive the B.S. degree with honors or with highest honors. (Why does UNC-CH not have high honors?) In 1976, the computer science option was redesigned. Enrollment was open; students took eight courses in computer science, only three of them jointly with graduate students. Toward the end of 1979 we attempted to limit undergraduate major enrollment, but our moves were rescinded by General College dean Donald Jicha enforcing the policy that an Arts & Sciences student should be free to choose a major. In July 1980 we restated our definition of the Computer Science option as preparation for graduate study. At least, that's what we thought we did; for most of the students, it was still a terminal degree program.
Since inception of the option, we have been represented on the curriculum committee by our Director of Undergraduate Studies. That person, initially alone and later with the aid of one or more colleagues, has served as major adviser to students in the option.
A significant problem has been the perception of many students and of many potential employers that the curriculum is a B.S. in Computer Science. It is not, nor has it ever been. It offers a degree in mathematical sciences, not in computer science. Nevertheless, our Department has often been judged critically for perceived deficiencies in what many view (erroneously) as a computer science degree program. Every few years we raise the issue of whether the Department should indeed offer an undergraduate computer science degree. To this date we have not done so, although we came precious close to starting.
In 1986-87, under the leadership of chairman Jay Nievergelt, we began to study seriously the advantages and costs of offering a B.S. in computer science. After considerable study by the Department faculty, Jay submitted to Dean Cell in June 1987 our proposal to develop such a degree program, together with the Department's best estimate of the resources required. In December, he requested a response from Cell for a full-day faculty retreat scheduled for 22 January 1988. The dean offered fewer resources initially than we had asked for, and we debated the wisdom of accepting her offer. The faculty vote, later in 1988, on instituting a B.S. in computer science was 13-11 in favor. Although it was Jay who had led us toward proposing the program, he felt it unwise to proceed without a more positive mandate, and reported to Dean Cell that we would not do so. No serious discussion of such a program has taken place since.
The Bachelor of Sciences in Applied Sciences was established in 1985, and became our fourth curriculum with the approval in Spring 1989 of its Computer Science option. Graduates have been few, with an anomalous drop to zero in 1994, but a large class is reportedly in the offing for 1995. Although we are represented on the curriculum committee, we do not advise students in this option.