I’ve just finished reading Rob Pike’s Systems Software Research is Dead talk that he gave in 2000 (right before I left Bell Labs). It’s a provocative piece, but I think that’s Rob Pike.
The piece made me think several different things.
First, he claims that the Systems research community has abandoned the development of operating systems and languages in favour of measuring things about existing systems. Measurement as a “misguided” focus on science, but then he adds:
“By contrast, a new language or OS can make the machine feel different, give excitement, novelty. But today that’s done by a cool Web site or a higher CPU clock rate or some cute little device that should be a computer but isn’t.
The art is gone.
But art is not science, and that’s part of the point. Systems research cannot be just science; there must be engineering, design, and art.”
I’ve been thinking a lot about what Computer Science is all about, what (who 😉 it should embrace recently. And I have to say this just sounds a lot more exciting to me, this statement draws me into an exploration of systems and machines as a holistic activity. Do we have to strip out the design, art, and engineering so that we can live up to the name Computer Science?
It also got me thinking about impact. There’s a lot of attention given to having research that has impact. Impact. One way, although probably not the only way to have impact is to have industrial/commercial impact. Having studied commercial software production processes, I’m somewhat cynical. I used to, especially when I was attempting to make change, think it was a miracle that any software ever got built let alone shipped and used. This type of impact, I firmly believe requires patience and intelligence and also a degree of luck. I suppose that’s true of many things, but impact and luck are an interesting pair.
Setting aside luck. One route to impact is to have success in American Industry. I’ve said before that I think this raises questions for some research areas, ones where there are interesting collisons between profits and innovation.
But, as I was reading Pike’s talk it also occurred to me that Computer Science has a peculiar relationship with industry. While we, as researchers, approach it as a way to have impact, it is this same industry that’s simultaneously closed off research opportunities.
He says “Even into the 1980s, much systems work revolved around new architectures (RISC, iAPX/432, Lisp Machines). No more. A major source of interesting problems and, perhaps, interesting solutions is gone.”
I’m trying to think of another discipline that has had commercial impact so central to its sense of self-value as Computer Science. And there was a time when commercial systems, in their biodiversity, gave rise to challenges. But, the Computer Industry seems to have shut down opportunities as it has focused on the creation of hardware and software standards that at least according to Pike may have ended the best of Systems Software Research. I can’t help thinking that the relationship of industry and academia in Computer Science is at best more complicated than I recall ever having had discussions about. FWIW, and since it’s my blog, I think that there are other problems with what I increasingly see as a play towards a notion of impact, success and business in general being equated to industry because the two organizational types are not the same.
And of course Pike agrees with me. He ends his talk with “The community must separate research from market capitalization.”