Appendix B: Processing Resource Applet
Appendix C: Control Server Source Code
Distributed computing – dividing a computational problem up into smaller tasks, and distributing those tasks to multiple computers on a network – has been a reality almost since the first ARPANET link was established in 1969. As ARPANET evolved into the Internet in the 1970s and 1980s, joined by other networks and services, and finally opening to commercial access providers in 1989, the potential (and actual use) of distributed computing has grown accordingly.
In 1989, Tim Berners-Lee wrote a proposal for creating a a "web" of interlinked hypertext documents, stored on servers connected via the Internet; in 1991, the World Wide Web became a reality. In 1995, Java applets and the JavaScript language were introduced, making it possible to build web pages that were more interactive and dynamic than the static pages of text and images that were available up to that point. Over the next few years, web browser improvements gave JavaScript new capabilities, including the the ability (later called Ajax) to exchange XML data with servers in the background, and to modify web page content in response.
In the last ten years, these innovations and enhancements to browser capabilities (coupled with web services and other server-side technologies) have mostly been put to use in producing a richer, more functional, and more seamless web experience. However, these same technologies can be used to create powerful distributed computing systems, harnessing the nearly endless supply of inexpensive desktop and portable computers connected to the Internet, to solve computationally difficult problems while users browse the Web.