The primary technical challenge to take advantage of those resources lies in software. Specifically, innovation is needed to enable the discovery of the computing needs of various functional components of a specific service offering. Such discovery is best done adaptively and under the real-time constraints of available computing bandwidth at the client-server ends, network bandwidth, and latency. On-line games, such as Second Life, and virtual world simulations, such as Google Earth, are examples of such a service. The services involve judicious decomposition of computing needs over public client-server networks to produce an interactive, visually rich end-user experience. The realization of such a vision of connected computing will require not only increased computing performance but standardization of network software layers. Standardization should make it easy to build and share unstructured data and application programming interfaces (APIs) and enable ad hoc and innovative combinations of various service offerings.
In summary, computing in a typical end-user’s life is undergoing a momentous transformation from being useful yet nonessential software and products to being the foundation for around-the-clock relied-on vital services delivered by tomorrow’s enterprises.