When Andrea Danyluk joined the computer science faculty in 1993, the college asked what equipment she would need for her work. Her request of a SPARCstation 20, with four 50MHz processors, 512 MB of memory, and 1.05 GB of disk space and a separate 10 GB external hard drive was unprecedented, and extraordinarily expensive—the computer alone cost $18,000. Today, most inexpensive laptops have almost as much memory as her external hard drive did 20 years ago.
While it may seem as if so much about the field of computer science has changed in the last quarter-century, longtime computer science professor Duane Bailey says the changes are on the surface. “They seem dramatic if you think about what a computer is today,” he says. “Yet, computer scientists are less concerned with the details of the technology du jour and more with the core questions we’ve been asking for years.”
They’re questions that Williams faculty have been asking since the mid-1970s, when introductory computer science, algorithms, and programming languages courses were taught by faculty in mathematics. Twenty-five years ago, computer science was becoming distinct as its own discipline, and these questions—what is a computer, what is information, and how can we structure information efficiently?—were increasingly demanding a faculty that could ask and answer them through research and in the classroom. There was a friendly parting of the ways—indeed the departments still share many students—and the computer science department was born. “The split was natural,” remembers Kim Bruce, the department’s first chair.
Some might wonder if it was appropriate for a liberal arts institution to train computer scientists—why not leave it to the computer engineering departments at larger universities? “Our faculty believe in the liberal arts, enjoy teaching, and actively involve students in research,” explains Bailey. “While few students come here thinking of themselves as computer scientists, 15 to 20 graduate each year sharing our passion.”
Danyluk adds, “Like other disciplines in the sciences, computer science has a strong theoretical foundation, it can be investigated experimentally, and it has practical applications.” And, more and more, computer science reaches into nearly every discipline.
Bill Lenhart, who had to choose between computer science and math when the departments split, explains the thinking behind the development of the discipline. “We wanted our graduates to be well educated in the fundamental ideas of computer science, so they would be prepared for jobs in technology, for graduate school in computer science, for whatever field they chose,” he says. To that end, Williams faculty have been involved with the national conversation about computer science curriculum development for the last 25 years.
Reflecting on her experience on the Association for Computing Machinery’s CS2013 Curriculum Steering Committee, the national committee charged with designing computer science curriculum, Danyluk notes that the three core courses Williams offered in the ’70s and ’80s are still fundamental to the major today. “Over the years, we have built up an onion of skills that our students are exposed to,” she says. “But the core remains the same.”
And because many Williams students double major, their understanding of that core—and everything that grows out of it—is that much broader. Bailey calls it “the softer sensibility” that Williams alumni bring to the careers they choose. “It’s hard to imagine what a computer will look like in another 25 years, but our students will be able to contribute in meaningful ways when that time comes.”
Case in point: A.J. Brush ’96, a senior researcher at Microsoft who describes her work in home automation systems as “trying to imagine the future and getting as close to it as possible,” has had to be an adaptable thinker throughout her career. “At Williams,” she reflects, “I learned not to be scared of the unfamiliar. I learned how to learn.”