When he was Dean of the College of Computing at Georgia Tech, Rich DeMillo split the College into three schools.
The School of Computer Science (SCS) is focused on the traditional definition of computer science. It looks inward, into improving the computer and how it functions. Systems, networking, programming languages, theory, and compilers go here. Software engineering goes here, though flavors of it could go elsewhere.
The School of Interactive Computing (IC) looks at the boundary between the computer and everything else. It includes human-computer interaction, learning sciences & technologies, computational journalism, and computing education research (where humans are the “everything else”), and also includes robotics, computational photography, and vision (where “everything else” is literally the world). Intelligent systems and graphics go here, when theey use humans as the model for intelligence and form, but versions of each could go elsewhere.
The School of Computational Science and Engineering (CSE) focuses on the application of computing for advancing science and engineering. This was the most innovative of the three. Rich once told me that he wanted this School to provide an academic home for an important field that wasn’t finding one elsewhere. Computer science departments often don’t tenure computational science researchers because their work may not necessarily invent new computer science, and science departments don’t tenure scientists just for being "code monkeys. " This area is too important to leave adrift.
I find that this cleaving of computer science works well for understanding the tensions I see between groups of computer scientists, each exploring a different piece of our ever-broadening field. These represent three competing images for what is computer science. SCS faculty have history on their side — their view of computing has been defined in the computing curricula reports from 1968 onward. IC and CSE faculty have modern day relevance on their side — much of the exciting new computing work that gets picked up in the press comes from this group, because they are focused on the visible applications of computing. Here in the College of Computing, these sides tussle over the shared ownership of our MS and PhD degrees in computer science. Do graduate students have to take a course in Systems? In Theory? Aren’t these “core” to what is Computer Science? And what is “Computer Science” anyway? Does (or should) the School of “Computer Science” have a particularly strong say in the matter, since they share the name?
We don’t argue so much about the BS in CS because Threads provides enough flexibility to cover a wide range of definitions. But for how long? Do we gain cognitive leverage in further specialization? In a recent issue of Communications of the ACM, Dennis Groth and Jeffrey Mackie-Mason argue that we need “informatics” degrees as something separate than a computer science degrees. When they list informatics academic units, they include my IC School. They define “informatics is a discipline that solves problems through the application of computing or computation, in he context of the domain of the problem.” That’s close enough to my “computing at the boundary with everything else.” They are arguing that we can make greater advances in informatics by splitting those degrees off from computer science.
There's another reason to consider new degrees: the tyrannies of a bachelor's degree, defined in so many contact/credit hours, so many years. Can we fit everything in for all of computing? I agree that computer science students ought to know about RISC processors and assembly language. Students in IC must understand and be able to use empirical methods, especially social science methods like interviews and surveys (e.g., how to put them together well, how to avoid bias in creating them and evaluating the results). These methods are absolutely necessary to listen to someone else, figure out their problem, and then later, figure out how the technology solves (or at least, impacts) the problem. When I look at IC-related professionals and researchers, I see few that use knowledge of RISC processors and assembly language in their work. The empirical, social science methods don’t fit well into the many hours that are already in a CS degree. I was on the committee that wrote the ACM/IEEE Computing Curriculum 2008 Update, and in particular, I worked on the HCI section. We had to gut much of what SIGCHI felt was absolutely critical for students to know about working with humans (and which I agreed with) because we simply couldn’t cram more into a CS student’s four years. IC and CS have a significant overlap, but there is a lot in each that is not in the intersection.
We tussle over these degrees and names because, in part, we fear creating a new name. We worry that students won’t be interested in a degree from computing that’s not named “computer science.” IC co-owns our BS in Computational Media (about 300 students, ~30% female, placing students at places like Electronic Arts and Pixar) and a PhD in Human-Centered Computing (one of the few PhD programs in a computing school that is over 50% female). Students are willing to take a gamble, and we’ll draw on a different demographic of students.
As CSE grows, I predict that it too will enter the fray. Recently, I got to interview students and teachers in interdisciplinary computational science classes. These classes don’t really work for CS (or IC) students. The computer science being used is too simple for them, so they’re bored while the science students come up to speed). But the science is way harder than they can just jump into without two years of pre-requisites. We run into the same problem as squeezing the important parts of HCI and IC into CS — we run out of room. As CSE grows in numbers, we will eventually find that it doesn’t fit into IC or CS, either. By separating the degrees, we encourage greater progress through tighter focus, and we create better, clearer opportunities for student learning by removing the unnecessary and spending more time on the necessary.
I'm glad to see Georgia Tech branching out in this way, while being systematic. Being multidisciplinary has made CMU amazing. MIT's Media Lab has spawned ideas and companies. Harvard's gotten into the act, especially with biologically inspired computing. I just showed Randy Pausch's Last Lecture talk to students again, and was amazed CMU enabled the fusion of CS and Theatre so early.
Displaying 1 comment