Also see response by Brad Cox
I have a doctoral degree in computer science, but I now teach in a social sciences department. Though I would like to think I'm starting a trend, the evidence is not strong. Even so, the evidence is strong that the academic discipline of computer science is in trouble. I was first alerted to this fact a few years ago when my officemate from graduate school quit a top-rank computer science faculty position to work for Microsoft because he wanted to be where the action is. He's right: the agenda for computer science research has shifted from academia to industry.
But the problem runs deeper than that, and I think that computer science needs to fundamentally reinvent itself to avoid shrinking into irrelevance. Here's the problem: we are told that computer technology is being continually revolutionized, but it doesn't really work that way. Instead, computer science has historically laid down one layer after another of settled art, little of which must be greatly revised later on. Lots of people got tenure for designing parsers, for example, and now we know how to do that. An earthquake did occur at the fault line between processor design and compiler design in the 1980's, but that has settled down. Programming language design was a difficult matter once, but now it isn't, and the market has decided that it's satisfied with C and C++ anyway. There's no accounting for taste, but there it is. (For a more general analysis see Andrew Friedman's brilliant historical book "Computer Systems Development", which I recommended in TNO 1(9). See also Peter Denning's recent articles about the future of the engineering field generally.)
So what happens next? The technical methods of computing are like a lake that is silting: once somebody finally figures out how to make distributed operating systems, it'll be all over. The most likely exception is in the theory of computation -- the mathematical foundations of the field, where really interesting research on "interactive proof" methods will probably bring us a lot more useful stuff from the same place that public-key cryptography came from. Plenty of other computer research will remain to be done, of course, but the emphasis may shift elsewhere. No longer will the world need hordes of computer scientists who know a little about medicine or engineering or business; instead, it will need hordes of doctors and engineers and business people who know a little about computers and a great deal about a particular world where computers are used.
The field of computer science can save itself, though, if it gets a new attitude. It has to stop looking at the whole world as a bunch of technology-driven "application domains" and instead develop a spirit of partnership with people who know substantive things -- things about organizations, about managing information, about sickness and health, about democracy. Although numerous computer people are sympathetic to such an approach, many of the basic concepts and methods of computer science make it difficult to put into practice. One obstacle is the field's understanding of formalization: to implement something on a computer, you have to translate it into mathematical terms that can be coded. But the resulting formalisms rarely correspond to the way that users think about things. Furthermore, computer scientists know almost nothing about how computer use fits into the lives and activity systems of the people who use them. Instead, generations of systems analysts have used models that derive from industrial automation -- rather than from the intention of providing support for skilled people with complex lives. The approach, whether explicitly or implicitly, is not "we will work with you and help you build tools" but "we will represent you and replace you".
But an attitude of symmetrical partnership, necessary as it is, will not suffice in itself. We also need what I call "bridging concepts" -- that is, medium-sized concepts that make it easy to move back and forth between serious ideas about technology and serious ideas about the social worlds where technology is used. Listening to the speakers at the conference on Society and the Future of Computing that we recently organized in Colorado, and reflecting on other valuable things I've read lately, I managed to articulate ten candidates for these bridging concepts, which I'll present here in the form of imperatives for the field of computer science:
(1) Designers must rethink the physical forms of interaction with computers.
At the conference, Joy Mountford from Interval described some of the ways that professional designers were doing just this. The existing physical forms of interaction with computers (keyboards and screens) are alright for some purposes, but for many others they lead to hand and eye injuries. Though I am hardly the most overworked computer user in the world, I had prescription glasses made (out of my own pocket) to help correct an atrophy in the muscles that shift focus from near to far. Computer scientists don't think much about the physical form of interaction with computers because, by and large, they imaginatively identify with the systems themselves rather than with the lives of the people using them. Research on interfaces for people with disabilities is helping to stimulate thinking about alternatives, but much more remains to be done for everyone else.
(2) Systems must fit into users' diverse ways of life.
People from different backgrounds -- cultures, professions, and so on -- live different lives, and so it seems likely that they will need different computers. But how do computers and ways of life fit together? A focus on individual users' thought processes does not suffice to answer the question; indeed, it can contribute to weird stereotypes about the different thought styles or learning rates of different groups of people. What about people who must switch back and forth between tasks on their computer and tasks on other machines? What about people who share a computer with several others? What about people who maintain relationships with others through several different media, including both computer and non-computer media? How do different cultures organize the teaching and learning of family members? And so on. A major problem is that nobody can get tenure in a computer science department, at least in the United States, for investigating such questions. This needs to change.
(3) Workplace computing must provide tools for people, not automation that replaces people.
Much of computer science derives historically from industrial automation, and the idea that computers are meant to replace people is more deeply ingrained in the field's methods and concepts than many computer scientists want to admit. The big news, though, is that the old assumptions behind automation no longer hold. So many activities have become automated by now that today's jobs require highly skilled workers to keep track of complex processes while participating in constant change. Interface designers like Ben Shneiderman have emphasized this shift from the technical side, while industrial researchers like Patricia Sachs and labor researchers like Joel Yudken are remarkably unanimous about the point as well. Computer scientists often do make representations of people's work, but these representations have largely been preludes to software specs -- to automation. The hard problem, which new research is only beginning to address, is how such representations can support work by supporting the thinking and group effort of the people who are doing the work.
(4) Interface design must move beyond a focus on users to a focus on learning communities.
Even when they live or work alone, people are very much bound up in social networks. As Jonathan Grudin has pointed out, "the user" is a dangerous fiction. This fiction did have some truth to the extent that computer-using jobs were rationalized, using the "one best way" prescribed by time and motion experts. But in the new world, the emphasis is shifting to continual learning. The best learning is that which takes place through dealing with actual problems. People who work together routinely teach and learn informally, for example, by telling stories about their experiences. How can technology support this kind of informal learning in communities? Roy Pea and Elliot Soloway are studying this question in classroom settings, and Julian Orr and others are studying it in workplace settings. Computer science, though, has a hard time conceiving of social relationships and processes that are not directly captured by computers. This will need to change.
(5) The new technologies of privacy protection must replace system designers' habit of tracking human activities in ever-greater detail.
Public-key cryptography and the whole world of related emerging privacy technologies have, as Marc Rotenberg points out, changed the way we think about technology itself. Many theorists have associated technology with social oppression, so that critics of oppression have found themselves positioned as anti-technology. Now the tables are turned: the bureaucracies that resist strong cryptography are the real anti-technologists. But the field of computer science has plenty of catching up to do as well. For the most part, the use of computers to invade privacy doesn't result from a conscious decision to invade privacy. The situation is actually much worse, since the most basic step in system design is to choose which entities in the world to represent (people, vehicles, packages, transactions, etc) and to create identifiers for them. The resulting records end up in databases that then get reused for secondary purposes and merged with other databases. But public-key cryptography lets us start over by designing in privacy protection from the start. This won't be easy, and it will require much more innovation so that designers can produce systems that collect precisely the minimum amount of information necessary to serve a given function. But I think it can be done.
(6) Technologists must respect and support the extensive expertise of information management professionals.
... that is to say, librarians. It is embarrassing to watch computer scientists reinvent indexing and retrieval technologies that librarians discarded in the 1950's. I don't think most computer scientists have realized that, as Christine Borgman and others have persuasively argued, managing large collections of information is a specialized skill that is quite independent of the (equally valuable) skills of computer people. The emergence of digital library research may redress the problem; the big question is whether computer scientists will pay attention and give due respect, or whether this research will move into other fields and other departments.
(7) As distributed information technology is used to reduce transactions and coordination costs, it must not undermine workers and their families.
Electronic commerce promises to interconnect buyers' and sellers' computers, thereby removing a lot of useless paperwork from the world's business operations. As Rolf Wigand points out, one effect of this innovation is to reduce transaction costs: the costs of making contracts in the market. This is good when it brings lower prices at the consumer's end of the whole pipeline. But economic theory predicts that reduced transaction costs will have other effects. One of these, potentially, is an increase in contingent work: that is, work that people do on a "flexible" short-term contract basis. This system is great for people who want flexibility in their working lives. But it's lousy for people who need stability -- most especially people with kids. Children need security, and we should worry whether they can get it in a world where parents must change jobs every few months, weeks, or days. Distributed computing also reduces coordination costs, which are the costs of holding a far-flung business operation together. To some extent this effect counteracts the reduction in transaction costs. But it also gives centralized management much better tools for controlling work at a distance. Computer people should become aware of how these forces play out in practice, and they should investigate how their systems might help increase efficiency without also increasing the control and instability in people's lives.
(8) Technical standards-setting processes must be opened to a broader range of stakeholders --- long before the standards become irreversibly entrenched in the market.
Technological markets need standards so that products can work together and so that people can know what they are buying. Standards have enormous consequences, since it is easy for a standard to become entrenched in the market without necessarily being compatible with the best technical solution or the most humane social arrangements. Standards are still largely set by remarkably informal voluntary arrangements. Plenty of power politics is often going on behind the scenes, of course, but standards-setting processes still seem like one venue where social concerns can be explored before designs become faits accomplis. It is possible, for example, that many standards can be influenced toward privacy protection -- simply because nobody had been thinking about privacy before, or because nobody had been adequately informed about technical options for protecting privacy. Who, we might ask, are the full range of stakeholders in technical standards-setting, and what would it take to get them a place at the table? Some plane tickets would help, and regular reports about standards activities on the Internet would help too, but substantive dialog is needed as well.
(9) Citizens and professionals alike must become aware of the ways that information infrastructure architectures either support or inhibit democratic participation.
Computer people have been talking about democracy a lot lately, influenced in part by organizations like CPSR and EFF who have articulated connections between information infrastructure and democratic participation. The Clinton administration has done little of substance, but their NII rhetoric has stimulated some remarkably broad-based discussion of telecommunications policy issues. At the top of the list is the distinction between a symmetrical switched architecture, in which anyone can produce their own content, and an asymmetrical architecture like the US regional phone companies want to use to deliver "interactive" video services. Of course, only a few percent of the population understand this distinction. But that's a good start, and more can be done to spread the word.
(10) Information technologists must recognize that the success of democracy depends most crucially on citizens' experience of empowerment and skills of organizing.
All this talk about democracy, though, can get shallow. Langdon Winner has pointed out the sometimes facile connections between information, knowledge, power, and democracy that often make the issues seem easier than they are. In the end, what really matters is whether people feel empowered to organize themselves to exert some control over their own lives. The best technology you can possibly build is useless unless people have these social and political skills and feel that it would make some difference to try using them. Perhaps learning how to use the net can be an occasion to reinvent the skills of democracy, and perhaps the skills of democracy will help us understand what kinds of information infrastructure we should be building next.
After the Internet community and civil libertarians spent months busting their butts trying to defeat the Communications Decency Act, Newt Gingrich just about killed it with one breath. Never mind that the bill was introduced by a retiring Democrat; the real political action around the CDA was among conservatives. By threatening to shut down the whole Infobahn in the name of morality, the Act precisely diagnosed a huge division within the conservative movement.
The conservatives have assembled a formidable coalition around an anti-government agenda. But simmering beneath this relatively smooth surface is a cultural division between authoritarians and libertarians. Once the conservative coalition destroys the liberal establishment -- for example by sending the auditors from hell after every liberal non-profit organization that ever got a dime from the government -- then American politics will turn into a subterranean battle between these two forces. Each side will call itself conservative, but they will mean different things by the term. Most corporate leaders, for example, are economic conservatives and cultural libertarians who want opportunities for their daughters and worry that nationalist xenophobia will interfere with the country's participation in the global economy. Many of them are concerned that Pat Robertson and his followers might actually believe the things he writes in his books.
Likewise, the ideological libertarians who define the culture of the high tech world are generally focused on entrepreneurship, contemptuous of government economic intervention, supportive of gay rights, and more interested in freedom for kids than in patriarchal family values. The problem, of course, is that these folks don't have the votes. Libertarian think tanks have unprecedented visibility, but that just means that their ideas are selectively harvested in support of a culturally conservative agenda. Privatization, yes -- but forget about legalizing drugs. The people who run the Republican Party -- including the pundits and theorists and the conservative foundations who fund them -- are well aware that conservative Christians control dozens of state Republican party organizations, and they take great care to make the ideology appeal to them. This leads to some strange results -- for example, the libertarian conservative magazine The National Review has run articles fretting over university radicals' antipathy to science and explaining the threat to society posed by the theory of evolution.
The Exon bill provided another such result. Its main grassroots support came from the Christian Coalition, whose lobbyists were squarely focused on pedophiles "stalking" children on the net. Now, I happen to believe that pedophiles are real and dangerous. But did the Christian Coalition people understand that the Exon bill would have basically no effect against pedophiles, who are surely smart enough to confine themselves to innocent-sounding interactions in cyberspace? I don't know. While the Senate debate was going on, it was certainly frustrating to have people (small numbers of them to be sure) respond to the Voters' Telecom Watch alerts on the CDA with messages like, "So you're against decency?". On the other hand, why did it take the Exon bill for the major net providers to address people's concerns by getting visible about their efforts to implement real technical solutions to the potential problems? This issue will be back.
Computing, perhaps more than any other technology in history, is a popular technology. By "popular" I don't mean "popular" as in "so-and-so is a popular movie star". Instead I mean the original sense of the word -- "of the people". Although we think of computers as impossibly esoteric, the fact is that ordinary people have begun to take hold of computing at a tremendous rate. Computing is a highly plastic technology, meaning that its forms can be changed and adapted endlessly, and it is time to start tracing all the ways in which people taken hold of computing for their own purposes and have then had an influence on their design. Here are a few:
I think this is a pretty impressive list. Many others will disagree, either because they think that technology charges forward according to its own internal logic or because they think that the whole world is totally dominated by corporations. There's a grain of truth in each of these assertions, of course, but if we believe them then we might as well give up now. It's important to believe that people can act together to take some control over their lives, not only because it's a necessary belief to stay sane -- but also because it's true.