CRA Logo

About CRA
CRA for Students
CRA for Faculty
Events
Jobs
Government Affairs
Computing Research Blog
CRA-Women
Projects
Publications
Data & Resources
Membership
What's New
 

Home

Interview with David Tennenhouse, DARPA

By Jean E. Smith

Date:May 1998
Section: Front Page

In August 1997, David Tennenhouse became Director of the Information Technology Office at the Defense Advanced Research Projects Agency (DARPA.) He is on leave from MIT's Laboratory for Computer Science and the Sloan School of Management. Dr. Tennenhouse has Bachelor's and Master's degrees in Electrical Engineering from the University of Toronto, and received his Ph.D. from the University of Cambridge in 1989. Dr. Tennenhouse was interviewed for CRN in his office on March 25, 1998.

CRN: Has coming to DARPA from MIT been a difficult adjustment for you? What have you liked most/least about the transition?

Tennenhouse: What I'm liking most is my newborn son, who is six months old. That is probably the most difficult adjustment. Compared with that, moving to DARPA has seemed relatively simple.

Not having day-to-day interaction with the technology is a big change. At MIT I had a team of graduate students just down the hall with their noses right in the technology. Whenever things got really frustrating (for whatever reason, usually my own fault) I could walk down the hall and see what they were up to, and that would always cheer me up. Here I'm a step removed from the hands-on technology, and that's a bit of an adjustment.

The positive side is that I get this great field of view. I get to see basically everything that's going on across the entire computer science field, and it's just wonderful. Not a day goes by that I don't learn about some new, really interesting idea and some new interesting piece of work that I wasn't aware of. So the pace of learning is broader but faster.

One of the most difficult adjustments is having a boss. As a faculty member and researcher at MIT, nominally I had bosses in the form of the laboratory directors and department heads, but in practice I really set my own agenda. Here I'm fitting into a reporting structure. There's an interesting difference, though it hasn't been overly onerous.

CRN: Did this surprise you?

Tennenhouse: Let's put it this way. You don't notice the absence of a boss. This is my first experience with a boss for a very long time. After being an undergraduate I started a consulting firm and I was used to running my own company. On some level, I retired to go back to graduate school.

CRN: Would you talk about your research at MIT.

Tennenhouse: My primary research agenda has always been technical. I've tended to move between the distributed systems arena and the networking arena and, in some sense, traveled up and down that stack looking for opportunities to have an impact and change things. Two MIT activities that I continue to be involved in (I still try to participate in the supervision of a few graduate students) are the active networks project (DARPA also has a much larger active networks activity involving a number of sites) and the spectrumware activity. They're both a great deal of fun-and that's my number one criterion.

The active networks project is putting a lot more software and computer science thinking into networking. The spectrumware project is doing something similar-putting more software and computer science into what we used to think of as the physical layer of the communication channels.

At the same time, I'm trying to get some of my computer science students to learn a little bit about information theory. One of the most stunning realizations to me was that most of us don't teach information theory to computer scientists. I hope one of the side effects of pushing computer science further down into what we used to think of as the physical layer will force them to deal with it.

CRN: What convinced you to come to DARPA?

Tennenhouse: I was hearing two views about computer science when I made this decision. One view was that we had basically explored all the space and picked the low-dangling fruit, and now the most important thing was to fill in the gaps. That would be done in a more disciplined way and, in many respects, computer science would become a more traditional discipline-like classical electrical engineering or other aspects of engineering.

An alternative view was that we've actually explored about 5 percent of the space. Filling in the cracks within that 5 percent is an important activity, but it's far from the only activity. There's still 95 percent of the space left. If there's low-dangling fruit we shouldn't hesitate to pluck it, though that doesn't mean we shouldn't go after the hard problems as well. I believe in the latter view, and I wanted to make sure that the field remained very aggressive in thinking about new spaces through which we could explore computer science.

Fundamentally, and I'm not the first one to say this, CS is a science of the artificial. We don't have to use any particular physical mechanism to perform our computations. That means there are no physical limits on how fast we can perform the computations in the future-how big a computation we can perform, or how much memory we can throw at it. Given that lack of limits, it's hard to accept the notion that we've explored most of the space. But the "fill in the gaps" mentality could become a kind of self-fulfilling prophecy.

So computer science is at a fork in the road. The field can decide that it has explored most of the space, or it can decide that there's no reason for computer science to evolve into a classical field. So I came to DARPA to keep us on the dynamic course, and I hope I'll be able to do that. My feeling was that it was very much in my self-interest to come here, because if the field does go down that classical science path I don't really think I want to stay in it.

CRN: What do you hope to achieve while at DARPA?

Tennenhouse: I'm trying to weave some themes into the various programs and the office. As office director, I can influence the directions that the program managers decide to embark on and I can have some indirect influence on what individual researchers try to do. My number one job is to champion all of this good work and make sure that it's well received by people elsewhere. I've decided that identifying themes is as much as I can try to do.

I currently have three themes: 1) let's get physical, 2) let's get real, and 3) let's get mobile. I hope there'll be six to eight themes by the time I pass the baton. Maybe that's another 5 percent of the space to explore. And there'll be room for another 18 office directors after me before we have to think about turning into a conventional discipline.

With respect to "let's get physical," I believe that the computer science field has become overly focused on the desktop and the laptop as the key platforms. The key metaphor is a human being entering information, a computer processing information, and a human being receiving information back. That falls in the well-explored category, yet there's still much to do.

As I visit labs and researchers, and especially as I talk with graduate students, I'm finding that a large fraction, but not all, of our community is really divorced from the physical world. So let's think of a different world where we're focusing a lot of research on physical phenomena being sampled by sensors and transducers, those are being dropped into the computers, the computers are processing that information, and the computers are directly controlling actuators to get the job done. The human being is not completely out of the loop but, relatively speaking, is acting above the loop in a sort of management capacity.

Trying to get more involved with the physical phenomena isn't really about doing work at the lower layers of the stack or trying to work exclusively on sensors because you could be doing AI-type work, planning work, knowledge-based reasoning work, or visualization-type work-the question is, what is it you're doing your reasoning about, what is it you're doing your visualization about? Is it in the world of the virtual, or is it in the world of the physical? I think we've had a movement toward the virtual for a number of years now. Although I've encouraged that activity in the past, I think it's now time to swing the pendulum back toward the physical or the real world. Related to that is the question: "What are the platforms we think about?" Are they the supercomputers, workstations, and laptops that constitute about two percent of all the computers that are produced? Or are they the other 98 percent, which are all of the embedded processors?

With the "let's get physical" theme goes the notion that we need to be thinking about very large numbers of network enabled processors. That presents an interesting inflection point because, although the vast majority of all computers are embedded processors, they haven't really been networked or networked in any real deep fashion.

The "let's get real" theme is about doing the "let's get physical" in real time. There are a number of applications for which we have used supercomputing in the recent past to produce results on an almost overnight, eight-hour, or one-hour basis. The interesting question is: As we get more and more computational capabilities, do we use these to take on larger problems-expand the scale of the problems-or do we try to get the problems done essentially in an interactive, almost instantaneous way? I think we should continue to explore bigger and bigger problems, but it's probably a good time for us to figure out how to drive most computations down into real time. That's one of the things we have to do if we're going to get the human out of the loop, which I think will be an important criterion.

The third theme, "let's get mobile," is not about mobile computing, which I am also a great fan of; it's about mobile code. It's seizing on another inflection point, and I think that's something DARPA does well. It's my belief that technologies like Java are 5 percent of a much bigger story. As proud as I am of our active networks research, I think that's 0.1 percent of the story.

The widespread availability of mobile code offers the opportunity to completely rethink how we implement systems today. It's not that mobile code is something that we haven't thought about in the past. It's not even that it hasn't existed in the past-it's just that we haven't really done it in anger. Now that we have it on a widespread basis, I think there's going to be huge opportunities.

At the detailed level, if your research field is transaction systems, you can revisit them. Should you do them differently in the presence of mobile code? If your specialty is fault tolerance, how should you revisit that problem? So almost every space within computer science in which we have a known toolkit of solutions can be reexamined to see if those solutions are still appropriate and to adjust them as we need to.

More broadly, I think this is going to give us the key edge that we need to figure out how to build very large, robust distributed systems. So this is a space where the interests of the computer science community and those of DOD can really come together. DOD has a continuing need to build very large distributed systems. Unfortunately for DOD, much of the commercial world is no longer doing so. Banks, insurance companies, etc., buy essentially packaged software from Oracle, Microsoft, etc. They knit a few things together, and they write some relatively clunky visual basic code. It all looks very ugly, but it has this wonderful attribute that it works. People may say that it doesn't work well, that it isn't really reliable, etc., but the commercial world has made a cost-benefit tradeoff and decided that it works well enough.

That leaves DOD in the position of being the only ones continuing to build large, complex systems the old-fashioned way. So I think it is urgent that DOD invent completely new ways of assembling large-scale distributed systems. That is not necessarily synonymous with complex systems. We have to work out ways to simplify the design of systems that today are too complicated to build and to operate. And, as a matter of pure intuition (that scares the hell out of my boss,) I believe that mobile code is going to give us the edge we need. If we start with Java-like functionality and push very hard, we're going to get there.

CRN: How long do you expect your tenure to be at DARPA?

Tennenhouse: DARPA positions are typically for two to four years. For a university person like myself, the usual arrangement is to come on a two-year IPA-there is eligibility, subject to mutual agreement, for two one-year extensions. Most find that 3 years is about the right amount of time. Having been office director for about 6 months, that feels right. In the past 6 months, I've had time to figure out a few of those things that happen every year and convince myself that I can reasonably manage the paperwork. That gives me another 2 years to be effective, and 6 months to train the next person.

I think it's a great system. There's no benefit to me in building an empire here. There is every benefit to working to get things done as quickly as possible. Although I am involved in long-term research, that doesn't mean we should do it slowly. One of the things about being here for three years is that I feel the need to get on with it.

CRN: Do you think more should be done to increase the number of computer scientists who are willing to spend time in Washington?

Tennenhouse: I sense that it is becoming more difficult to attract computer scientists to DARPA. And I think this is an unfortunate side-effect of a large fraction of the computer science community becoming more conservative. It used to be that computer science departments were known to be full of a bunch of crazies who couldn't really be expected to live by the normal tenure process anyway. Somehow the faculty of engineering would just put up with them.

Increasingly, as the departments strive for respectability, they're conforming to the process. For example, one hears from people that it wouldn't really be good for someone to do a tour at DARPA until they're a full professor. From my perspective, by the time someone's a full professor one of two things has happened. They've either built up such a wonderfully successful operation that it would be difficult for them to leave, and not only that, it may not even be in the DOD's interest for them to leave because there's a good chance that DOD is benefiting from that operation. Alternatively, they haven't built up a successful operation, and therefore may not be the kind of leader that we want to have coming here.

Within the computer science community there has to be more room for researchers, and particularly young researchers, to take chances. The promotion process is part of the problem and DARPA is another part of the problem. Unfortunately, there is a tight coupling between the activities and the way we operate here at DARPA and the way in which the research community operates, especially in the academic departments. That's created some undesirable feedback loops.

For example, if DARPA funding is less reliable, as it has been in the recent past, then researchers are naturally going to feel like they have to hedge their bets. There's been a trend toward individual researchers trying to have as many DARPA contracts as they can. But who wants researchers to hedge their bets? We want researchers to identify the most important thing to do, and throw their hearts and souls into it. So here we have a situation where DARPA has been a key creator and driver of that feedback loop.

Overall, I think a situation exists within the computer science research community that is reducing not only the willingness of researchers to take chances, but also their ability to do so. We don't need everyone to take great big risks. However, we do need a subset of leadership-oriented people who are going to strive for new directions.

CRN: Do you think that enough is being invested in academic research?

Tennenhouse: In the absolute sense, DARPA's total investment in what could be considered computing research is certainly larger than most people think. That's because a lot of people view my office, and perhaps the information systems office (to the extent that they still have some AI-funded work), as the principal funders of CS research in DARPA.

In practice, if you look across the whole agency, you'll find that almost every office in DARPA is a substantial source of investment in CS research. The credit for that lies with Bob Kahn. When Bob was director of the predecessor to this office, he launched a program called "strategic computing," which has been immensely successful. In DOD, the term has become "information superiority." This is the cornerstone of the DOD strategy. Computer science has now been woven into almost all of the DARPA offices. Realistically, however, most of those are points of application of computer science, which makes it more difficult for someone to develop a real critical mass in a new topic within computer science.

While the total research investment may be large enough, I think where we're having difficulty is in remaining nimble. Maintaining a broad investment in everything isn't what DARPA does best-the truth is that the National Science Foundation does that much better than we do. NSF has a very good peer review process, and will provide broad-based funding for a lot of good ideas that would clearly slip through our system.

When DARPA spots a good idea, it can put substantial resources behind it to amplify it, which is what DARPA does well. Since there's a limited number of ideas that either we can amplify or that the computer science community can actually put people behind, we just have to fund a number of good ideas and try not to fund too many bad ones.

So I think that there are two problems. One is that as DARPA moves out of a topic, people who are already working in that area and have been funded in the past experience a considerable period of anxiety. However, these are always good people, and so they will continue to attract substantial funding. An example is that DARPA has substantially reduced its investment in massively parallel processors over the past few years. However, the DOD modernization office has a substantial investment and the Department of Energy is ramping up its investment. So DARPA created a space (through the good efforts of Steve Squires, another of my predecessors,) and we're seeing the leadership for that space move out. In fact, although the source of the money is changing, the total amount of money on the table is actually going up. However, I'm sure it creates a lot of anxiety for people during that transition and anxiety is never a good thing, particularly for researchers. It's a waste of energy and time.

I think DARPA's biggest problem isn't so much the budget size as the thirst for innovative ideas. So I throw that challenge back to the CS community and say that it's the challenge of submitting to us really good, national-scale ideas-ideas that are going to have long-term impact- that is the gating function. I think that really good ideas are funded, and that we're primarily idea-limited, even on a national scale.

CRN: Is there a feeling that DARPA doesn't need more computing research?

Tennenhouse: In the Pentagon's Joint Vision 2010 project, which is driving a lot of the current investment thinking, information superiority is the cornerstone. That demands large-scale continued investment in information technologies. From that perspective, there is a very solid cornerstone for folks to build on.

Having said that, there certainly have been mutterings within DARPA of a different sort, including, "If the computer science community isn't going to do anything new, then we really ought to figure out how to transition the things that they're doing to other stakeholders and to the people who really own that now-developed space." In other words, when a space hasn't been developed and it's just a glint in the eye, clearly there's no customer and that's a place for DARPA to go in and make it happen. Once we've made it happen, we should find a customer who is going to sustain it, which is what has been done in supercomputing.

The question for computer science, then, is: "Does the CS community want to continue to move from space to space to space exploring sequences of new ideas in a very dynamic environment, or do we feel that a better direction for CS is to evolve into a discipline with known subcategories that remain fixed and stagnant?" If it's the latter, then we should try to get ourselves stable, regular funding sources for each of those activities. And that's what the Computing Research Association should be trying to do.

I actually think there's a very important place in computer science to keep seeking new territory. I haven't heard any mumblings within DARPA that suggest that people aren't interested in exciting new places where we could use computers, or exciting new techniques for building computers or for building their software systems and appliances.

CRN: How do you view the relationship between DARPA and the National Science Foundation?

Tennenhouse: I think there have been some excellent DARPA/NSF collaborations. The gigabit testbeds is one that I participated in. Various people, in particular those who weren't funded, had negative things to say about the testbeds but, in practice, they basically created an industry. The fact that DARPA and NSF were willing to build the testbeds, above and beyond the science that was conducted over the testbeds, created a sense of confidence in industry that triggered a tremendous amount of investment. It's an industry that now continues to invest extensively in its own research and development.

DARPA has really successful joint activities with NSF on a number of fronts, involving digital libraries, speech recognition, and an upcoming activity on data-intensive computing. These are, first and foremost, relationships that are built between program managers. They work well when program managers work hand in hand because they have a dream and they realize that the way to achieve it is to work together. I see that continuing.

We have multiagency arrangements with a number of other agencies. We've worked a lot with the Department of Energy, and with NASA, NIST, and others. I'm not sure whether the future is going to involve the broad projects involving 12 agencies, or smaller groups of 3 or 4 agencies, getting together to do projects. But I'm very convinced there'll be multiagency projects continuing in the computer science domain.

A distinguishing feature of information technology within DARPA compared with the other DOD offices is that we reach far beyond DOD. We are striving to influence the broader scientific and commercial sectors. We believe that's the best way for us to get the technology into DOD hands. That doesn't always sit comfortably with folks higher up in the organization because it's very hard to prove cause and effect. However, we've had a continuous string of cases where we've funded researchers or we've worked with the other agencies; the work has then rebounded off the scientists, the commercial companies, or the start-ups back into the hands of the DOD-and done so at a speed that puts the normal procurement channels to shame. Laptop computers got to Desert Storm because of that commercial industry and because of the rebound effect, and not because of classical DOD procurement.

CRN: What is your view of the Next Generation Internet?

Tennenhouse: I'm incredibly pleased with NGI, and the program managers are really excited about the prospects. We're going to have some great connectivity at multigigabit speeds for the researchers to use in large geographic portions of the country. We're going to have some really interesting new hardware technologies for networks and we're going to have some tremendous software technologies, particularly in the networking engineering concept part of the program.

I think some really exciting new concepts are going to emerge, particularly on how to run Internet over wavelength division multiplexing technologies, and we'll get a tremendous amount of simplification within the current protocol stack. While we're doing NGI, the backbone network is going to undergo this usership transformation where packet data is going to become the dominant user of the network; and so, as it becomes the dominant user, all of a sudden you can justify rethinking a lot of what today goes on between the IP layer and the underlying physical infrastructure.

CRN: In closing, is there a message you'd like to convey to CRN's readers?

Tennenhouse: I think this is a tremendously interesting time for the computer science community and for DARPA. At one time, this office was known as the Information Processing Techniques Office (IPTO). It was founded by J.C.R. Licklider, and Lick had a really clear vision that he referred to as "interactive computing." And he didn't mean timesharing-he meant humans really interacting and working synergistically with computers. It has been a great vision that has dominated a lot of what computer science has done. Folks like Bob Taylor carried on with that vision, and not just here at DARPA. He went on to do tremendous work at Xerox PARC and at the DEC Systems Research Center. We haven't finished with that vision. Having said that, I feel that it's time for us to step away from interactive computing and to start thinking beyond it. That's really what's behind the "let's get physical" , "let's get real," and "let's get mobile" themes. It's time to get the human out of the loop. So interactive computing has been an important part of our research agenda for about 30 years now, and I think it's going to be part of the agenda for another 30 years. But it's time to start another agenda, and I need help formulating it. That's the message.


Home | Awards | Events | Government Affairs
Information Resources | Jobs | Committees | People | Publications | What's New

Site made possible by a donation from

Copyright © 1999 Computing Research Association. All Rights Reserved. Questions? E-mail: webmaster@cra.org.