Developing parallel applications is notoriously difficult, but is even more complex for desktop applications. The added difficulties are primarily because of their interactive nat...
The Web is rapidly becoming the platform through which many companies deliver services to businesses and individual customers. E-Services are typically delivered point-to-point; h...
Large-scale cluster-based Internet services often host partitioned datasets to provide incremental scalability. The aggregation of results produced from multiple partitions is a f...
The business of software development is solving problems. Following Polya, we can increase our ability to solve problems by focusing directly on problems themselves, on their part...
Current user interfaces for Web search, including browsers and search engine sites, typically treat search as a transient activity. However, people often conduct complex, multique...