After the conference is over, the attendee can browse all of the captured information from the conference. Context tagging of the captured information gives him ready access to the parts of the conference he attended. Progress in context-aware computing over the last decade, however, has been slow in part because of the difficulty of implementing and evolving software systems that sense, interpret and react to context in the environment. The system described by the scenario above would not be easy to build using the ad hoc methods that most researchers have employed. The result within the ubiquitous computing research community has been a variety of relatively simple demonstrations of context-aware applications.
Most applications simply use a user's location as the only piece of context to adapt to.
In particular, the canonical context-aware application, a mobile tour guide, suffers from this problem. In addition, when applications are built, the use of context is connected tightly to the physical sensor being used. This makes it quite difficult to replace sensors, to add new sensors and context and to change how the context is being used. Often, it requires a significant re-implementation of the application. Similar to how the 2-dimensional user interface is composed of a collection of interaction widgets, we also see contextual input from the environment of an application to consist of a collection of context widgets.