A Historical Overview of the Computer Science Department at the University of Iowa -- 1965/1995

by Arthur C. Fleck


These reflections are in commemoration of the thirtieth anniversary of the creation of the Department of Computer Science at the University of Iowa. I have written this chronology in a personal style that reflects my subjective viewpoint. Many individuals have made contributions to the department, but unfortunately space permits only a summary of developments. See the Appendix for a historical roster of faculty.


Contents

Getting started -- 1965/1975

In 1964, Gerard P. (Gerry) Weeg came to the University of Iowa as the Director of the Computer Center with a joint appointment in the Department of Mathematics. In the span of one short year, he managed to obtain approval for the creation of a new Department of Computer Science. The Computer Science Department came into existence at the start of academic year 1965-66 as a separate unit with the authority to offer masters and doctoral degrees. This made it one of the early departments of computer science to be established as an autonomous unit. The computing field was already past its infancy at this point, but in computing terms this was a long time ago -- for example, the Pascal programming language, the UNIX(a trademark of AT&T) operating system, and the computer mouse had not yet been invented in 1965! Thirty years is a "blink of the eye" in historical terms, but in computing a lot can happen in the blink of an eye.

The department was organized in the College of Liberal Arts within a Division of Mathematical Sciences that included separate departments of Computer Science, Mathematics, and Statistics. All three departments were housed in one building (MacLean Hall) and shared administrative offices and secretarial staff. Each department had its own graduate degree requirements and individually offered courses at all levels. At the undergraduate level there was a single divisional degree. Gerry Weeg was the chair of the new department (and simultaneously director of the Computer Center). Gerry had served as my thesis supervisor at Michigan State (in mathematics) and recruited me to join the University of Iowa in July 1965 with a joint appointment between the Computer Center, the Mathematics Department, and the newly formed Computer Science Department. The third faculty member in the department at its outset was John P. Dolch who also held a joint appointment with the Computer Center, and was its former director. This faculty was supplemented by a couple of instructors.

At the undergraduate level, the early curriculum included courses in FORTRAN, COBOL, and assembly language programming. Graduate courses were offered in operating systems, compiler construction, automata theory and computability, and artificial intelligence. Classes in numerical analysis continued to be listed in mathematics where they had originated, but since this was one of Gerry Weeg's primary interest areas it was a strong area of cross-over. A number of graduate-level mathematics courses were typically taken by Ph.D. students. Both M.S. and Ph.D. degrees had written comprehensive exams that were taken when course work was largely completed. For the M.S. degree, a thesis was an optional substitute for the comprehensive exam. Of course, there was the customary research thesis (and defense) for the Ph.D.

The Computer Science Department had no computing equipment of its own. Both faculty research and programming classes were served by the facilities at the Computing Center, a campus-wide academic service unit. The Center provided a traditional batch-oriented, large mainframe service common during this period. Our center was an IBM shop, running an IBM 7040 at the outset, and acquired an increasingly powerful series of models of the IBM 360 line beginning in 1965. Students (and faculty) went to the Computing Center to keypunch their programs and data, and submit their card deck to an operator. The submitted card decks were "batched" and run in succession. Sometime later you would return (four hour turn-around was typical for "normal" jobs) to retrieve the deck and a printout. Having a department chair who was also the Director of the Center proved to be highly advantageous in this situation. By the fall of 1969 a system known as CPS was available. CPS was an interactive system based on the PL/I language, and provided incremental compilation. Unfortunately, resources (e.g., terminals and processing capacity) were insufficient to support this system for class instruction. However, the appreciation for the rather unique circumstances of teaching beginning programming led to the early acquisition of "in-core" translators that would process a series of small jobs, rather than treating each one as a separate run. This, together with the advance to a multi-processing operating system, led to turn-around of an hour for short student jobs.

In addition to the close ties of early faculty with the Mathematics Department, the department's close relationship with the Computer Center had a significant influence on its early development. Computer access for classes and research was facilitated. The cross-over of personnel led to a departmental emphasis on various aspects of software systems and programming. The fact that computer science was not in the Engineering College led to much of the responsibility for hardware and computer architecture being left to the Department of Electrical Engineering (which has since become the Department of Electrical and Computer Engineering).

During this period there was extensive nation-wide debate over just what the definition of this newly emerging discipline should be, and discussions of curriculum were never ending. Not only was the discipline too new to have established academic traditions, but new work that profoundly advanced the discipline was appearing constantly. New developments had unavoidably immediate impact on the curriculum at all levels. Substantial course revisions were needed at virtually every offering of every course, and the introduction of brand new courses continued at a brisk pace. Invariably in this situation, textbooks were out of date, further complicating class preparation. While there had been several earlier curriculum proposals, in 1968 the first proposal to achieve significant acceptance appeared ("Curriculum '68", Comm. ACM 1968) and this subsequently helped to bring a modicum of uniformity to the field (though it certainly did not end the debates). By 1970 new departments of computer science were appearing more and more frequently. It was clear that the new discipline had wide-spread academic acceptance.

The department grew slowly at first. Senior administrative officials of the university were unsure what our new discipline was, and what its role ought to be. This made their responses to requests quite conservative despite a healthy financial outlook for the institution and its rapid overall expansion. This was compounded by the fact that Gerry Weeg was wearing two administrative hats, and that problems in the Computer Center were generally more politically compelling. Five years after the department began, there were six regular faculty (see the Appendix for personnel details), the graduate enrollment had grown to over 50, and the undergraduate contribution to the divisional degree was non-trivial.

In 1970 separate "tracks" were identified within the single divisional undergraduate degree. Several additional courses were provided, most notably the beginning programming course was expanded into a two course sequence with the first course remaining in FORTRAN while the second used PL/I. Initially the computer science track attracted little attention, and the number of students selecting this track grew slowly until in the fall of 1974 there were 65 students.

Don Epley had a joint appointment between electrical engineering (where he had earlier served as department chair) and computer science for several years, and then in 1972 he moved over full-time to computer science. Because of the heavy administrative burden of Gerry Weeg's two major assignments, in 1973 he stepped down as department chair and Don Epley assumed the chairmanship of the department. Gerry continued to hold a partial faculty appointment in computer science. However, later that same year he was struck with a major illness and he never did participate seriously in the department again.

When Don Epley began as chair, he set a high priority on establishing a separate undergraduate degree in computer science. This was consistent with the development of the discipline, and was the national trend at this time. Interest at the undergraduate level was growing, both on campus and nationally, and it was natural that our department respond to this impetus. Most of the necessary courses were already being offered in the computer science track of the divisional degree, so the changes were largely organizational. Separate undergraduate degree programs (B.A. & B.S.) began to be offered in 1975 and with this change the department immediately had over 100 undergraduate majors.

At the end of its first decade, the three initial faculty in the department had increased to ten. The curriculum had grown with the discipline and had expanded substantially. The department had awarded 16 Ph.D. and 91 M.S. degrees. Graduate enrollment was stable at around 60. And new undergraduate degrees had just been initiated. Phase I of the remodeling of MacLean Hall had also just been completed, relocating and modernizing faculty offices, expanding the divisional library space, and providing additional classroom space.

Surviving the boom -- 1975/1985

The department's second decade brought many sweeping changes. Gerry Weeg died in 1977 after a prolonged illness. In 1978, in appreciation for his many contributions, the University of Iowa renamed its computer center the Gerard P. Weeg Computing Center. An associated memorial conference brought numerous illustrious individuals from the field of computing to campus. Also in 1977 John Dolch, a second founding faculty member of the department, died. Then in 1978 Ted Sjoerdsma, who had been Gerry Weeg's student (and who eventually completed his Ph.D. under the supervision of Don Epley), became department chair. The department had definitely passed into its "second generation".

Campus-wide growth in the use of academic computing led to much greater demands being placed on the computer equipment at the Computing Center. This in turn led to the necessity for greater controls to be placed over the use of the equipment. In particular, systems research of all kinds was inconsistent with the primary, campus-wide mission of the Computer Center. This led to Computer Science establishing its own research-oriented computing facility in 1976, initially with a Burrough's B-1700 and related equipment.

In the latter part of the 1970s, undergraduate enrollments in computer science began to grow at an astonishing pace. By 1980, there were about 450 undergraduate computer science majors. This was not just a local phenomenon, but a circumstance that was national in scope. The economy generally was sluggish and jobs were scarce, except in computing where individuals with technical background were in great demand. This job market led many students to select a computer science major, and a significant number of them did so even though they had an active dislike for the character of the discipline. Even though the divisional undergraduate degree was not eliminated when Computer Science began offering a separate major in 1975, the vast preponderance of students selected the computer science major rather than the divisional degree.

Between the fall of 1980 and the fall of 1981, the number of majors grew from 450 to about 650. The press of students entering the undergraduate computer science program created a situation that was intolerable for both students and faculty. The College of Liberal Arts had an open admissions policy, and it was a student's prerogative to "declare" his/her major. As a state university it was unacceptable to set caps on enrollment (except in the professional schools). So classes ballooned in size, and even upper-level courses took on a "large lecture" format, generally with no associated small lab style contact. The departmental committee that had been established to administer the undergraduate program and advise students was swamped with over 100 advisees each. The situation was completely out of control.

To gain some form of authority to control the unmanageable levels of undergraduate enrollments, in 1981 the department sought (and was granted) permission to institute a pre-computer science status for its undergraduate majors. When students declared the intention of a computer science major, they were initially placed in this status until they had completed the first four required courses of the major. Upon completion of the first four courses, students were admitted to the major only if this early work met an established grade-point threshold. While this did not place a cap on enrollment, it did seem to provide a means to influence the number of majors. However, despite the introduction of this filtering mechanism, by the fall of 1982 the combined total of majors and pre-majors had grown to over 800, and it remained at this level for two more years.

The explosive growth in undergraduate computer science majors was by no means a local phenomenon. Virtually every computer science department in the country had a similar experience. This led to universal efforts for faculty expansion. Unfortunately, production of computer science Ph.D.s did not even come close to keeping pace with the resulting demand. Throughout this time period, the number of computer science Ph.D.s being produced remained at around 200-300 per year while the number of available positions was three to five times that. This resulted in profound staffing problems for the discipline which in turn fomented an exceptionally high turn-over rate. This situation was widely recognized as a crisis for the discipline ("A discipline in crisis", Comm. ACM 1981). Our department lost numerous faculty at both the junior and senior levels. Since our university administration did not permit recruiting for senior faculty, these retention difficulties not only led to a "churning" of our faculty, but created a serious imbalance in the high proportion of junior faculty.

By the mid-1980s, undergraduate enrollment pressure had begun to decline. By the fall of 1985, the combined total of undergraduate computer science majors was down to around 600. Our pre-major status had some effect on this locally. Actually, the greatest effect seemed to be the impact that the impression of a demanding curriculum had on self-selection. However, there was a nation-wide decline in computer science enrollment during this period so other factors were also operating. On the other hand, the number of graduate applications was sky-rocketing. With a total graduate enrollment of less than 100 students, it was possible to matriculate only a fraction of that number each year, perhaps 20-25. But the number of applications per year was often greater than 500, although the vast majority of these were from foreign students.

Despite the hectic activity caused by the high undergraduate enrollments during this period, the curriculum continued to be developed. Offerings were introduced in database, communications & networks, algorithm analysis, and software engineering, and courses in operating systems were expanded. Also during this period our beginning two course programming sequence was revised to use a single language, first PL/I in 1976, and then Pascal in 1982.

There was an increasing demand for utilization of the departmental research lab. Under the vigorous leadership of Bill Decker as its director, this computing facility became an increasingly important resource for the department. In 1982 a DEC VAX 11/780 replaced the Burrough's machine, and an early nation-wide network connection (CSNET) was established. Subsequently a sizable equipment donation by Apple Computer Corp. helped with the expansion of the workstation network.

In 1984, I began the first of two terms as department chair. The prolonged frantic activity associated with the undergraduate program had extracted a heavy toll on the department. The faculty configuration was badly out of balance with the department's responsibilities. Faculty productivity in research was lagging, and it had become important at that point to reinvigorate the faculty's scholarly activities and to re-establish the balance between the department's graduate and undergraduate programs. The easing of undergraduate enrollment combined with very strong graduate applications at this time to facilitate this re-orientation.

In the course of its second decade, the department had gone from a brand new undergraduate CS degree with 110 majors in 1975, to a peak of over 800 majors (including pre-majors) in 1983, back to about 600 majors in 1985. In the meantime, the graduate enrollment had increased modestly from 80 or so to around 100. The regular faculty had increased from 10 in 1975 to 16 in 1985, plus several visiting faculty. Staffing changes had in no way kept pace with enrollments, and the biggest effect of the undergraduate enrollment surge on the departmental configuration was in the number of teaching assistants which increased from 10 HTE (half-time equivalent) in 1975 to over 35 HTE in 1985. And in 1983 the last publicly accessible keypunch was removed from campus.

Gradually maturing -- 1985/1995

By 1985 the department had gotten through its awkward teen-age years. Unfortunately, that did not mean that the awkward years ended. The first half of this decade proved to be one of the department's most difficult periods.

As noted in the previous section, the turn-over of junior faculty had been severe. In 1986 tenure decisions in the department arose for the first time in ten years. However, the research productivity of these individuals had been significantly impeded by the disruptive departmental environment described previously, and despite the department's favorable recommendations, the candidates were unsuccessful in securing tenure in most cases. This situation had a very negative effect on department morale and further compounded the imbalance in the configuration of the department's faculty -- at one point early in this third decade only four of the department's 16 faculty were tenured.

In the latter part of the 1980s, undergraduate enrollment continued a steady decline, both locally and nationally. So while earlier student numbers made it impossible for the department to provide a high quality educational experience for undergraduates, the situation was gradually returning to reasonable levels in the first half of this third decade. By 1990 the number of undergraduate majors was around 250, and it has remained fairly stable at around this number right up to the present. Graduate student enrollment (over which the department has always had direct control) was kept at about 100-110 students throughout this decade. So finally, some other issues could be confronted by the department.

For quite a few years, the management of the near-by Rockwell Corp. facility in Cedar Rapids had sought to have a computer science graduate program offered on site. The department was unwilling to invest the additional effort in teaching and travel time that this would entail, so despite several initiatives by Rockwell, no resolution appeared possible. Finally, Rockwell made a substantial donation to the university that included funding for the construction of a closed-circuit television system. This comprised not only the audio/video equipment and transmission facilities, but a broadcast studio on campus and a televideo classroom at Rockwell in Cedar Rapids. The facility provided for two-way audio and video transmission, and remote students had the ability to interact in questions and discussion. The university's central administration was persuaded by this to begin offerings of courses Rockwell desired, and agreement by computer science was eventually reached. In the spring of 1986, the department initiated the offering of most of the courses needed for an M.S. degree in Computer Science via closed-circuit television. The remote delivery is accomplished by adapting regular on-campus courses to the media requirements necessary for simultaneous televideo transmission. Typically this is done for three or four regular on-campus courses each academic year.

Early in my second term as department chair (in 1987), I determined that I would not seek to serve further in this position when the term ended (in 1990). As noted, the department had not had an adequate number of senior faculty and as the time approached, there were no internal candidates for the position. The Dean at the time refused to permit the department to conduct an external search for a chair. He also found a temporary arrangement that the department proposed to be unacceptable. Instead he insisted on identifying a senior faculty member of his choosing from another department to serve a term as department chair. The Dean selected Jonathan Simon from the Department of Mathematics (a topologist) to serve as chair beginning in the fall of 1990. So for the first time, and at a belated point in its history, the department came to be led by someone with no involvement in its discipline.

With someone unfamiliar with the discipline exerting leadership, the objectives of the department lost some coherence, and divisiveness began to develop. During this period the discipline finally began producing new Ph.D.s in sizable numbers (up to 1000 per year). As it developed, at the same time an economic down-turn caused major layoffs in the computer industry and a simultaneous halt to the expansion of academic departments. This resulted, for the first time in the history of the discipline, in a glut of computer science Ph.D.s. Large numbers of highly qualified faculty applicants were available and this made recruiting a buyer's market. Jon Simon had definite ideas about faculty recruiting and he chose to promote appointments in application areas for three faculty openings which developed during his term.

In an effort to enhance its research productivity, the department sought to involve its graduate students in research earlier in their program. To facilitate this, the department-wide written examinations for the M.S. final exam and the Ph.D. qualifying exam were replaced by project oriented presentations evaluated by individual student committees. This approach encourages students to become engaged in research more quickly, but at the cost of less uniform assessment of preparation and ability. Faculty opinion on the merits of this change was mixed, and so far it has had little impact on the department's Ph.D. production (which continues to average about 3.5 per year).

At the end of Jon Simon's term as chair in 1993, Joe Kearney (the most senior member of the vision/robotics group) was selected to chair the department. By this point the passage of time had helped to alleviate the faculty balance problems that had been so prominent earlier. The accumulating maturity of the faculty had been recognized through the promotion process, and only about a third of the regular faculty were non-tenured at this juncture. Also, two partial (joint) appointments at the full professor level had been added since 1990. This provided far better faculty balance and permitted the many responsibilities for managing routine departmental matters to be given increased attention.

The curriculum had also continued to evolve. A software engineering subtrack of the M.S. degree was initiated in cooperation with the Electrical and Computer Engineering department. In AI, computer vision and robotics, and automated theorem proving were significantly expanded. And courses were augmented to include functional, logic, object-oriented, and parallel programming. In conjunction with the return to reasonable undergraduate enrollments, the pre-computer science entry status into the major was terminated. As its third decade drew to a close in the spring semester of 1995, the faculty voted to commence its fourth decade in the fall semester of 1995 using C/C++ as the language in its beginning undergraduate sequence for majors.

The department's physical facilities changed substantially over the course of this decade. Phase II of the remodeling of MacLean Hall (after a 15 year hiatus) was completed in 1991. This phase of the remodeling added faculty office space, and significantly modernized and expanded laboratory space for both instructional and research computing. However, this was at the cost of moving all graduate assistant offices out the building. Through the successful external funding efforts of several of the faculty, two substantial equipment donations by the Hewlett-Packard Corp., and with added support from the university, major additions were made to departmental computing facilities. This has led to shifting much of the earlier reliance on the Computer Center for instructional support over to internal departmental facilities.

Over its 30 year history, the department has awarded over 1200 bachelor's degrees (not counting divisional degrees), 500 master's degrees, and 75 doctoral degrees. Collectively the department's faculty and its graduates have contributed in many ways to the university and to the evolution of our discipline.

Appendix
History of Faculty Appointments

Donald Alton (Cornell Univ.) -- 1970/
Jack Anderson (Iowa State Univ.) -- 1968/69
Marc Armstrong (Univ. Illnois) -- 1984/91
Ted Baker (Cornell Univ.) -- 1979/82
Bruce Barnes (Michigan State Univ.) -- 1968/69
Robert Baron (Cornell Univ.) -- 1970/
Venkat Bhat (Univ. Hawaii) -- 1977/83
Maria-Paola Bonacina (State Univ. New York, Stony Brook) -- 1993/
Keith Brinck (Univ. Sydney) -- 1984/86
Steven Bruell (Purdue Univ.) -- 1985/
Jean Butler (Univ. Washington)-- 1976/77
James Calhoun (Oklahoma State Univ.) -- 1979/84
Robert Christiansen (Univ. Iowa) -- 1984/92
Andrzej Ciepielewski (Royal Inst. Tech., Stockholm) -- 1990/91
David Cohen (Univ. Michigan) -- 1985/89
Oliver Costich (Michigan State Univ.) -- 1970/73
James Cremer (Cornell Univ.) -- 1992/
Adrienne Critcher (Univ. Iowa) -- 1978/81
William Decker (Univ. Iowa) -- 1978/
Mahesh Dodani (Central Florida Univ.) -- 1988/95
John Dolch (Univ. Iowa) -- 1965/77
Denise Eckstein (Univ. Iowa) -- 1976/77
Donald Epley (Univ. Illinois) -- 1972/
H. (Jim) Farver (Univ. Iowa) -- 1966/67
Arthur Fleck (Michigan State Univ.) -- 1965/
Margaret Fleck (Massachusetts Inst. Tech.) -- 1991/
Ray Ford (Univ. Pittsburg) -- 1980/88
David Forsyth (Oxford Univ.) -- 1991/94
Sukumar Ghosh (Calcutta Univ.) -- 1984/
Hans Gyllstrom (Univ. Iowa) -- 1971/72
Robert Haymond (Univ. Oregon) -- 1966/67
Stephen Hedetniemi (Univ. Michigan) -- 1967/72
Ted Herman (Univ. Texas, Austin) -- 1991/
Michael Jipping (Univ. Iowa) -- 1986/87
Douglas Jones (Univ. Illinois) -- 1980/
Joseph Kearney (Univ. Minnesota) -- 1983/
Fredrick(Ron) Keller (Kansas State Univ.) -- 1976/80
Nabil Khabbaz (Univ. Iowa) -- 1980/84
Jeffery Kingston (Univ. Sydney) -- 1984/87
Hyeongseok Ko (Univ. Pennsylvania) -- 1994/95
Chen-ho Kung (Norwegian Inst. Tech.) -- 1986/89
Mamoru Maekawa (Univ. Minnesota) -- 1971/72
Christopher Marlin (Univ. Adelaide) -- 1977/81
Donald McClain (Iowa State Univ.) -- 1971/72
Jerrud Mead (Univ. Iowa) -- 1977/78
Amar Mukhopadhyay (Calcutta Univ.) -- 1969/77
Monagur Muralidharan (Indian Inst. Tech.) -- 1986/91
Gregg Oden (Univ. California, San Diego) -- 1990/
Hyung-sik Park (Northwestern Univ.) -- 1987/91
Sriram Pemmaraju (Virgina Tech.) -- 1993/
Florian Potra (Univ. Bucharest)-- 1992/
Larry Ragland (Univ. Texas, Austin) -- 1969/75
Morteza Rahimi (Univ. Iowa) -- 1967/68
Ann Reedy (Univ. California, San Diego) -- 1974/76
Teodor Rus (Romanian Acad.)-- 1983/
Roger Shultz (Iowa State Univ.) -- 1982/87
Ted Sjoerdsma (Univ. Iowa) -- 1976/84
Kenneth Slonneger (Univ. Illinois) -- 1982/
Edward Towster (Univ. Wisconsin) -- 1970/75
Stanley Walljasper (Univ. Iowa) -- 1965/69
Gerard Weeg (Iowa State Univ.) -- 1965/77
Dan Willard (Harvard Univ.) -- 1979/79
Chung-shin Yang (Cornell Univ.) -- 1974/78
Yao-Tin Yu (Univ. Texas, Austin) -- 1983/84
Hantao Zhang (Rensselaer Poly. Inst.) -- 1988/


This document is available in hardcopy as technical report 95-09. A shortened version is to appear in IEEE Annuals of the History of Computing.