Computing Applications Inside risks

Risks of Linear Thinking

  1. Article

For over half a century we have classified research on a scale from basic to applied. Basic research seeks fundamental understanding without regard to potential utility. Applied research is technology development that solves near-term problems. These two models have different diffusion times from research result to practice—often 20–50 years for basic research and 2–3 years for applied. Because the return on investment of basic research is so far off, the federal government is the main sponsor and universities are the main investigators.

For over a generation we have classified software development on a scale from technology-centered to human-centered. Technology-centered work focuses on advancing software technology with new functions, algorithms, protocols, and efficiencies. Human-centered work focuses on making software more useful to those paying for or using it.

These two one-dimensional (linear) scales create false dichotomies, obscure fundamental issues, and encourage tensions that hurt research and software development.

Most of our academic departments place high value on basic research and technology-centered work. Faculty who perform applied or human-centered projects often find themselves disadvantaged for tenure and promotion and occasionally the object of scorn. Most eventually toe the line or leave the academy. (See National Research Council, Academic Careers for Experimental Computer Scientists, NRC Press, 1994.) The resulting bias prevents us from valuing and teaching the full range of vital software development topics. Many of the risks discussed in this forum over the years will never be fully addressed as long as this bias persists.

In 1997, Donald Stokes (Pasteur’s Quadrant: Basic Science and Technological Innovation, Brookings Institute, 1997) put the research issue into a new light. He traced the conceptual problem back to Vannevar Bush, who in 1945 coined the term basic research, characterized it as the pacemaker of technological process, and claimed that in mixed settings applied research will eventually drive out basic. Bush thus put the goals of understanding and use into opposition, a belief that is at odds with the actual experience of science. Stokes proposes that we examine research in two dimensions, not one:

  • Inspired by considerations of use?
  • Quest for fundamental understanding?

He names the (yes, yes) quadrant Pasteur’s, the (no, yes) quadrant Bohr’s, and the (yes, no) quadrant Edison’s. He did not name the (no, no) quadrant, although this quadrant is the home of much junk science.

Those who favor applied research call for greater emphasis on Pasteur’s+Edison’s quadrants, and those who favor basic, on Bohr’s+Pasteur’s. In fact, most of the basic-versus-applied protagonists will agree that these three correspond to vital sectors of research, none of which is inherently superior to the others.

A similar model can be applied to software development. Here the common belief is that the attention of the designer can either be focused on the technology itself or on the user, or somewhere in between. Michael Dertouzos (The Unfinished Revolution. Harper Collins, 2001) recently documented 15 chronic design flaws in software and said they will be eliminated only when we learn human-centered design, design that seeks software that serves people and does not debase or subvert them. Dertouzos called for his fellow academics to teach human-centered design and not to scorn software developers who interact closely with their customers. Some critics incorrectly concluded he also supported reducing attention to the world of software technology. However, we can view software development in two dimensions, rather than one:

  • Inspired by considerations of utility and value?
  • Seeks advancement of software technology?

Three of these quadrants correspond to important software development sectors: (yes, yes)—projects to create new technologies in close collaboration with their customers (examples: MIT Multics, AT&T Unix, Xerox PARC Alto, IBM System R, the Web). (yes, no)—projects to employ existing knowledge to solve human problems (examples: Harlan Mills’ work, CHI, much application development). (no, yes)—projects to create new software technologies for their intrinsic interest (examples: many university research projects).

The final (no, no) quadrant is the home of many projects purely for the amusement of the developer. Many software developers will agree that the first three quadrants are all important and that none is inherently superior to the others. Perhaps this 2D interpretation will help unstick our thinking about software development.

Join the Discussion (0)

Become a Member or Sign In to Post a Comment

The Latest from CACM

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved

Communications of the ACM (CACM) is now a fully Open Access publication.

By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.

Learn More