Every program tells a story. Programming, then, is the art of constructing a story about the objects in the program and what they do in various situations. So-called programming l...
Byzantine quorum systems have been proposed that work properly even when up to f replicas fail arbitrarily. However, these systems are not so successful when confronted with Byzan...
Reuse of existing code from class libraries and frameworks is often difficult because APIs are complex and the client code required to use the APIs can be hard to write. We obser...
Several groupware systems support casual real time interaction over distance by providing periodically updated snapshots of other people's offices. People then monitor these ...
An important way of making interfaces usable by nonexpert users is to enable the use of natural language input, as in natural language query interfaces to databases, or MUDs and M...