How do the experts solve difficult problems in software development? This book offers case studies that reveal how they found carefully designed solutions to high-profile projects.
Andrew Oram Libros




make is one of UNIX's greatest contributions to software development, and this book is the clearest description of make ever written. Even the smallest software project typically involves a number of files that depend upon each other in various ways. If you modify one or more source files, you must relink the program after recompiling some, but not necessarily all, of the sources. make greatly simplifies this process. By recording the relationships between sets of files, make can automatically perform all the necessary updating.For large projects with teams of programmers and multiple releases, make becomes even more critical. But in order to avoid spending a major portion of your maintenance budget on maintaining the Makefiles , you need a system for handling directories, dependencies, and macro definitions. This book describes all the basic features of make and provides guidelines on meeting the needs of large, modern projects.Some of the issues addressed in the second edition
The term "peer-to-peer" refers to networks where end users contribute files, computing time, or resources to shared projects. Beyond their technical aspects, these systems hold significant social potential by returning content, choice, and control to users. While communities have long existed online, they have been constrained by the limitations of email and newsgroups, which hinder meaningful interaction, organization, and collaboration. Enhanced tools for structuring information could transform these interactions, allowing individuals to share and retrieve data effectively, thereby fostering collaboration across various interests—technical, cultural, political, and more. This work explores the motivations driving the development of prominent peer-to-peer systems, the challenges encountered, and the technical solutions devised. Insights are provided by industry leaders, including Nelson Minar and Marc Hedlund discussing the history of peer-to-peer; Clay Shirky predicting its future; Tim O'Reilly redefining public perceptions; and Dan Bricklin on user-generated information. Other contributors include David Anderson on SETI@home's achievements, Jeremie Miller on conversational Internet dynamics, and Gene Kan on lessons from Gnutella. The book also addresses topics like low-tech content distribution, trust in distributed systems, and resource allocation, offering a comprehensive view of the peer-to-peer landscape.
In Devices of the Soul, Steve Talbott challenges readers to critically examine society's ever-increasing detachment from its physical surroundings and reflect on its growing dependence on techno-wizardry.