As computing and communication technology advances and matures, we will transition into a consumer-driven mass-market. This market will consist of a wide range of interconnected task-specific devices and, unlike most of the past history of computing, the motivation will come from function and convenience rather than technological prowess. Our challenge is to build applications: - where the user interface is not on a computer, but is the computer; - where users do not connect to a network, but have their data travel on the network; and - where users are not explicitly issuing commands to be performed, butagents are operating autonomously on their intentions.Although not as limited by computational speed or communication bandwidth as their predecessors, future devices will instead be constrained by limits on size, form-factor, and power consumption.The problems in this new landscape are not simply the problems of mobile networking and palm-sized PDAs. For computing to reach the broadest spectrum of our population, the entire infrastructure and the devices themselves must be as invisible as possible, requiring little or no configuration and performing reliably and predictably. To accomplish this requires a review of our basic assumptions regarding user interfaces and network transactions. It challenges us to develop entirely new models for distributed services. User interfaces will have to be based on multiple types of input ranging from the user's physical movement, location, data available from the network, and a variety of sensor data we can only begin to imagine today. Network topologies will be intermittent and services will have to be discovered independently of user guidance. The network fabric will have to provide computing and storage cycles to the data bundles. Data will need to find its own way from the user to the services and back, possibly replicating itself along the way to prevent data loss. We will require an open services architecture that not only permits users to have their data directed to the appropriate services but also allows the services to interconnect with each other.
To make this vision a reality, crucial research must be carried out in at least three fundamental areas: user interfaces, network infrastructure, and distributed services. This talk will outline the plans of the Portolano Project at UW, a DARPA Expedition, and the steps we will be taking to create a prototype of the future consumer computing landscape.