The problems that exist in the world today cannot be solved by the level of thinking that created them. -Albert EinsteinThe first time a baby breathes, systems designed to ease the transition from one life-support stage to the next kick in, and a mandatory cry launches the baby's lungs on their new mission: breathing air instead of "breathing" amniotic fluid. This sort of systemic state transition, fundamental to so many biological phenomena, is also critical to complex adaptive systems of other kinds, including networks of computers. It is within this shared context that I ask you to consider this volume. When I initially proposed some of the ideas for this book, my intent was to provide a balanced overview of network distributed computing (NDC) frameworks for software developers, including comparisons between them from the perspective of L. Peter Deutsch's Eight Fallacies of distributed computing. But as with most complex endeavors, the work evolved as it progressed. In particular, the notion of a fitscape became a common thread. I have Greg Doench of Prentice Hall PTR to thank for blessing the term and recognizing the strength of the metaphor as such. From a Darwinian perspective, a complex adaptive system harboring autonomous agents competing for resources can be called a "fitness landscape." As these agents become more fit for the landscape over successive generations, the landscape itself is modified in the process. I use the term "fitscape" to refer to any complex system incorporating such competitive, adaptive agents-for example, an economy at any level, a biosphere at any level, a community of interest. While the term "ecosystem" is traditionally used as a descriptive metaphor for such systems, we do often find ourselves talking about preservation of the earth's ecosystem at all costs. Hence, the implication of the word "ecosystem" seems to beg the question in that some level of stasis is implied. A fitscape, by contrast, is always in flux. It does not represent a delicate balance requiring husbandry but is rather a system in which change, based on adaptive fitness, is applauded. Software too is created and exists within fitscapes. In particular, as NDC frameworks increasingly become fitscapes in their own right, hyperproductive competition is leading to a rate of innovation that equals in each passing year the sum of all previous years. As exhilarating as it is daunting, the future of NDC remains filled with promise, despite economic and social perturbations; even the threat of war stimulates this continual exploration of novelty. I am an unapologetic proponent of technology. Sun Microsystems, my former employer, is one of few firms that has historically exhibited the sensibilities and ethics of the Network Age now upon us. As a technology evangelist for Sun from 1997 to 2002, I had the opportunity to commune with software developers from all over the world. These conversations have given me an even deeper appreciation of the difficult challenges we face in distributed computing. But they have also reinforced my otherwise optimistic nature. Despite a touch of early 21st-century ennui, my mantra has remained constant: if there's hope for humanity, it's in software. And it is equally true that if there is hope for software, it's in our humanity. An examination of the past, present, and future of NDC illuminates many possible directions in which we might progress as we seek to fulfill this hope. By offering foundational comparisons between NDC frameworks, with a filter supplied by Deutsch and using a descriptive mechanism suggested by Stuart Kauffman, I seek to provide assistance to the software developers on whom so much depends. Admittedly, my tour of duty with Sun has left me with residual platform biases. I have, in fact, illustrated most concepts using examples from Sun's offerings. But I also believe the observations and principles contained herein transcend any specific company agenda or approach; the Church-Turing thesis applies to NDC too.
Networked distributed systems: Foundations, breakthroughs, and implications
Networked distributed computing (NDC) systems are driving an ongoing technological revolution that has already spawned the Internet and will soon transform the world into one ubiquitous, pervasive "information field." In Network Distributed Computing: Fitscapes and Fallacies, Max K. Goff reviews the field's crucial challenges, state-of-the-art solutions, and breathtaking future. Goff covers both the "trees" and the "forest"-showing how NDC has evolved, where it's headed, and above all, what it all means.