Research Statement, Fall 1998

I've been trying to succinctly write down what it is I'm doing my research on. This short document is one of my efforts. You can read it here, or also download the postscript to print out.


Research Questions

I want to make the Internet come alive. This is what excites me, the thing that drove me to become a graduate student. The phrase ``making the Internet come alive'' is deliberately a little vague and a little flaky. What I mean by it is to create more process on the Internet, more activity. Our main use of the net right now is the Web and email, two ways of passing static documents around. But the Internet has much more capability than that; there are millions of active computers online that can all run programs. These programs can interact, creating a sort of digital nervous system. I want to tap this potential.

What does this have to do with the MIT Media Lab? I came here because it was the only place I could find where someone might respect this research. Since I've been here, I've found that these ideas are applicable to some large portion of the research here, in particular software agents as well as the Things That Think consortium.

The main limitation of TTT right now is that most of the work has been on individual Things and one-off projects. Few people are building integrated systems, and even fewer are thinking about integration technologies. For example, Hiroshi Ishii's group builds a beautiful Thing like the Pinwheels. But there's no easy way for other people to interface to it, to control them! Sure, you can go to Brygg and get the code and hack something up, but then your solution will only work on that Thing, in the specific project you built.

What TTT needs is an integration framework for connecting our Things to make a network. More specifically, we need an open and flexible system. It's not enough to just make it easier to build one-off projects, some collection of standard hacks that we all limp along with. The real power of an integration technology is when it becomes so open and clean that anyone can easily build larger systems out of the components, without even thinking about the integration problems. When we have that, then we will start to see new systems built, things we had not even imagined before.

My best analogy for open frameworks is the World Wide Web. The Web is not just a way to hack together a document transport for specific cases. It is a medium, a framework with infinitely open possibilities. And the rewards for that flexible framework have been amazing, a real transformation of society. We need to build a similar integration technology for Things.

Relevant Work

There's a lot of different integration frameworks out there for projects like TTT. The home automation folks are full of them --- the venerable X.10, current efforts like HomeRF and BlueTooth. These systems suffer from two major failings: they're too low-level, and they're closed. They're too low-level in that they only concentrate on the physical transport problem of getting bits from A to B, not the larger application problems of what those bits mean, how do you find A or B, or how the interactions are coordinated. And they're closed in that these technologies are all intended to be used inside one house, not open to the Internet at large.

Coming from another angle, current Internet research has a lot to offer us for developing a framework for TTT. I've focussed mostly on existing delivered technology like Java and componentware, along with the added ``bleeding-edge'' technology of mobile autonomous agents. Java gives us the OS for the framework, component technology gives us sensible composability of function, and agents gives us the metaphor to coordinate large open systems. For more on these topics, please see my master's thesis.

My Contribution

My own answer to the problem of an integration framework is to sit down and build one. My master's work over the last year was building Straum, an agent-based Internet system for interacting processes. The applications I worked on for my master's were not TTT related, but rather about communicating presence and activity information over the network.

Those applications did not work out very well, and at the same time the TTT need became more pressing. So I have been happy to switch over to a new domain. Currently I am working with Matthew Gray and Oliver Roup to build Hive, a software framework for making TTT objects interact over the Internet. We started with my code from Straum, we already have a working system, and are cleaning it up for a January release to the Media Lab.

In addition to the Hive work with Matthew and Oliver, I am also working with Kwin Kramer and Rob Poor to think of larger issues of building open systems, in particular questions of networking and embedded computation and the like. We are developing an intellectual agenda for scalable networking.

My Future

Our work now is going quite well, and I am happy about the progress we are making. Of course there is plenty of work to do to build this framework, but I mostly know the shape of the engineering and design problems and am proceeding with solving them. There are two larger issues on my mind now that I need to work on.

One problem for me is finding motivating applications. It is not enough for me to build a framework, I want to show uses of the framework as well. Partly, this is necessary to be a successful Media Lab student. And partly, in my experience frameworks are best developed with specific applications as examples. We want to build a system that is general, that allows things to be built that we had not thought of before, but we also need to make sure that the framework is grounded and motivated. The hard part here is choosing the right kind of applications, ones that push the framework in the right direction. This problem is hard for me, I need to expand my thinking.

The other thing on my mind is that I want to eventually take this work beyond just TTT. I am excited by TTT, and think it is a lot of fun, but the ideas I am interested in are much broader than just a world of physical things. Ultimately, I think my ideas are most interesting in creating a purely virtual world. I do not know if I will have time here at the Lab to pursue this angle, though, and the ideas are not well enough formed for me to strike off entirely on my own. So for now, I am happy working on TTT, but I am trying to keep a larger vision in view.


Nelson Minar Created: October 28, 1998
<nelson@media.mit.edu> Updated: November 11, 1998