The Origins of Pattern Theory: The Future of the Theory, and the Generation of a Living World

Once in a while, a great idea makes it across the boundary of one discipline to take root in another. The adoption of Christopher Alexander's patterns by the software community is one such event. Alexander both commands respect and inspires controversy in his own discipline. It is odd that his ideas should have found a home in software, a discipline that deals not with timbers and tiles but with pure thought stuff, and with ephemeral and weightless products called programs. The software community embraced the pattern vision for its relevance to problems that had long plagued software design in general and object-oriented design in particular. Focusing on objects had caused us to lose the system perspective. Preoccupation with design method had caused us to lose the human perspective. The curious parallels between Alexander's world of buildings and our world of software construction helped the ideas to take root and thrive in grassroots programming communities worldwide. The pattern discipline has become one of the most widely applied and important ideas of the past decade in software architecture and design.