The first computer science course at St. Olaf College was a Computer Organization course offered in January, 1976. Professor Richard Allen, recently hired as a first professor with computer science training, team-taught that Interim course with Professor Duane Olson of Physics. The College had already experimented with computing technology before 1976, using IBM products, both for statistics and in scientific applications, e.g., interfacing of computation to laboratory equipment, but this was the first actual course devoted to Computer Science.
The earliest effort in Computer Science on campus in the late 1970’s already exhibited many of the themes that have come to characterize the St. Olaf Computer Science program, identified in the program’s mission statement.
- The first course was a disciplinary course in the field of Computer Science.
- It was team taught by persons from two departments in a liberal arts context. This continued for the first six offerings of the computer organization course.
- The early computer organization course emphasized an experiential approach using representative systems. For example, students began by programming PDP-8 computers by hand, toggling console switches to enter their programs.
- The course included use of UNIX, an industry research project (AT&T/Bell Labs).
The second course taught was Programming Languages, the following term (Spring, 1976). Data Structures was added soon thereafter, as well as a physics course in instrumentation and interfacing. The first concentrators had graduated by the 1977 class year, completing a five course concentration consisting of computer science courses and electives that involved computing, including Numerical Analysis, Operations Research, Mathematical Logic (all taught in Math), a chemistry course and an advanced management science course (Econ). Students seeking a computer science concentration would each submit an individual plan of five courses with rationale, in the form of a contract for consideration and approval by the computer science faculty (comparable to the contract major in mathematics); this allowed students and faculty flexibility in defining concentration requirements while retaining approval authority with the faculty. Two varieties of concentration contracts were recognized, namely the software and hardware options.
The use of UNIX on campus began in September, 1975, upon the arrival of Prof. Allen, who insisted on the availability of that system as a condition of accepting his position. St. Olaf is believed to be the first academic institution west of the Mississippi to use UNIX, and the first liberal-arts college anywhere to use the UNIX operating system. As Prof. Allen used UNIX for his teaching, and students soon took a great interest in the system. By the early 1980s, St. Olaf undergraduates and system programmers had developed local enhancements to the UNIX kernel, e.g., a terminal driver, used on the computers that formed the basis for academic computing on campus. Throughout the 1980s, St. Olaf was known as a major source of system programmers in the upper midwest. Many of our students adopted a strong philosophical and personal commitment to the ideals of the free software movement, some developing software for the GNU project. The first successful network connection from the College to the UNIX
uucp network took place in February 1982. St. Olaf joined the Internet per se before the end of the decade. In the early ’90’s, the College was the major user of computer networking in the state, during one period creating more network traffic than the next three entities combined (University of Minnesota, 3M Corporation and Mayo Clinic). St. Olaf students and staff members were also early to explore the world-wide web; in Spring, 1994, when the web was still being administered in Switzerland, the College’s web site rated and “honorable mention” among all sites in the world.
Computer Organization remained the introductory course in Computer Science for the first fourteen years of the program’s existence. However, by the mid 1980s, the need for programming prerequisites had become apparent. During the three academic years 1986-89, quarter-credit programming skills courses were offered in BASIC, Pascal and FORTRAN on a pass/no credit basis. Enrollments were strong, averaging over 100 students per year, but many students did not pass—35% the first year—and the lack of disciplinary content was unsatisfactory. Therefore, a (graded, full-credit) “CS1” introductory course was offered beginning in Fall 1989, based in the Scheme programming language, and became the prerequisite for Computer Organization.
By 1990, the discipline of Computer Science had come into its own nationally as a collegiate major in its own right, and the expectations of an undergraduate computer science curriculum had solidified considerably since the 70’s. Accordingly, the requirements for a St. Olaf computer science concentration had moved away from the interdisciplinary flexibility of early contracts, towards a standard sequence of courses with greater emphasis on the academic field. Now at the College maximum six courses, a concentration with a software option ordinarily included the introductory course CS1, Computer Organization, Data Structures, Programming Languages, Discrete Mathematics and an elective that involved computing; soon, that elective too needed to be in computer science. When an intermediate “CS2” course was introduced in 1993, it replaced Discrete Mathematics, so that all six courses were specifically in the discipline of Computer Science. The elective was typically a seminar, independent study or independent research in Computer Science. The hardware option became more and more rare, and ceased altogether soon after Professor Olson retired.
Richard Brown joined the program in 1990 and became Director of Computer Science in 1991. Under his guidance in the mid 1990s, the courses in the concentration program evolved to a coherent six-course program that represents about two-thirds of a liberal-arts computer science major; the main exclusions were the purely mathematical/theoretical aspect of Computer Science and the number of upper-level electives required. After trying a variety of texts for the introductory course, a manuscript was developed locally beginning in 1995. The “CS2” course became Software Design and Implementation, focusing on principles for designing and building software, including a team programming project. This course now benefits from a two-hour “closed lab,” added in 1998/99, in which students gather with the professor in smaller groups in an additional class meeting per week. A seminar in Operating Systems was offered approximately every other year beginning in 1992. An increasing number of advanced programming projects were carried out as independent research projects, often in teams, and typically involving other liberal arts disciplines, including Mathematics, Psychology, Dance and Theatre. By the late 1990s, the great majority of concentrators worked in internships before graduation, on- or off-campus: by 2002, 85% of recent concentrator graduates indicated having done so, and 95% of then current concentrator undergraduates had worked in an internship or planned to. The concentration, which could be attached to any major, drew a wide audience: during the seven graduation years 1995-2001, about 40% of majors earned were Mathematics majors, and nineteen other majors were represented. Concentrators who sought computing-related careers were successful in finding jobs throughout the ’90s: in a 2002 survey of Concentration graduates 30 respondents who graduated from 1992 to 2000 reported seeking employment as a computing professional within a year of graduation, and 29 of those (96.6%) obtained such employment within six months.
However, demand for the Concentration dropped along with technology job opportunities and stock prices in the first years of the new century, consistent national trends. In addition, the coursework of the CS Concentration (apart from interdisciplinary projects) had long consisted exclusively of CS courses, whereas St. Olaf concentrations are intended as interdisciplinary programs. Therefore, a comprehensive review of the program was undertaken in early 2002 under the direction of Professor Brown, resulting in a recommendation to expand to a Major, accompanied by further recommendations to support that expansion with additional personnel and other resources. A formal proposal to create the new Major was passed by the St. Olaf’s faculty in November and by the Board of Regents in December, 2002; the first CS majors are expected to graduate in Spring, 2004.
Since its inception in 1975, the Computer Science program at St. Olaf College has carried out its mission successfully, instilling in our graduates a solid grounding in principles of the discipline, in constant connection with the liberal arts, while developing in them the savvy that arises from hands-on experience with exemplary computing systems.