One of the best places to start is with James (Cope) Coplien's Software Patterns white paper .
A good introduction to the ideas and much of the terminology of patterns can be found at:
Patterns and Software: Essential Concepts and Terminology by Brad Appleton is at http://www.enteract.com/~bradapp/docs/patterns-intro.html
Here is some background on Christopher Alexander whose patterns for architecture is the original inspiration for software patterns.
The Hillside Group sponsors many patterns activities, incluing several of the conferences shown below. The Hillside Group is a nonprofit corporation dedicated to improving human communication about computers by encouraging people to codify common programming and design practice. They sponsor conferences (like PLoP, EuroPLoP, UP, and ChiliPLoP) and also host the patterns home page.
Their site has many resources, including pattern mailing lists and how to join them as well as many links. The general patterns-discussion list is a good place to start as it has a variety of material, including philosophical material on the meaning of patterns.
The Portland Pattern Repository (http://c2.com/ppr/index.html) and its famous Wiki Wiki Web( http://c2.com/cgi/wiki) is a marvelous source for learning about patterns and interacting with the patterns community.
The Wiki is an iteractive site in which readers can become authors. Many items of interest to the patterns community appear here first. The Wiki is maintained by Ward Cunningham, one of the pioneers of patterns of software.
The Wiki is a MUST VISIT site.
Gerard Meszaros and Jim Doble have written a pattern language for pattern writing. It appears in [PLOPD 3] and here: http://hillside.net/patterns/writing/patternwritingpaper.htm
Jim Coplien (Cope) has written a pattern language for the running of a pattern workshop. Pattern workshops are sometimes called conferences, but they are run on a completely different model. http://www.bell-labs.com/~cope/Patterns/WritersWorkshops/
Additionally here is a pdf file that talks about how to shepherd a paper prior to a conference: http://jerry.cs.uiuc.edu/~plop/plop2k/shepherding.pdf
Doug Lea's home page:http://g.oswego.edu/dl/. Doug was an early adopter of patterns in education.
Jim Coplien's Home Page (http://www.bell-labs.com/~cope/) ( or http://www.rcnchicago.com/~jcoplien/) Cope is one of the best sources for the meaning of patterns. He has also done significant work on:
- Telecom Patterns (These folks have had more success than most in writing pattern languages).
- Simple Patterns
- Pattern Languages. A Development Process Generative Pattern Language This language is about structuring the organization and its work. Organizational Patterns are an important sub field.
AG Communications http://www.agcs.com/patterns/ is heavily involved in patterns and manages ChiliPLoP.
The Timeless Way of Builiing; Alexander, Oxford, 1979
A Pattern Language; Alexander, Oxford, 1977
Notes on the Synthesis of Form; Alexander, Harvard, 1964
Design Patterns; Gamma, Helm, Johnson, and Vlissides, Addison-Wesley, 1995 (Gang of Four = GoF)
Patterns in Java; Grand, Wiley, 1998 (Similar to GoF, but with the expression in Java instead of C++)
Pattern-oriented Software Architecture; Buschmann, Meunier, Rohnert, Sommerlad,and Stal, Wiley, 1996
The Patterns Handbook, Rising, Cambridge, 1998
Analysis Patterns, Fowler, Addison Wesley, 1997
Pattern Languages of Program Design, Coplien and Schmidt (editors), Addison Wesley 1995
Pattern Languages of Program Design 2, Vlissides, Coplien and Kerth (editors), Addison Wesley 1996
Pattern Languages of Program Design 3, Martin, Riehle, and Buschmann(editors), Addison Wesley 1998
Pattern Languages of Program Design 4, Harrison, Foote, and Rohenert(editors), Addison Wesley 2000
PLoP: Held in Illinois each August http://jerry.cs.uiuc.edu/plop/plop2k/
EuroPLoP: Held in Irsee, Germany each July http://www.coldewey.com/europlop2000/
KoalaPLoP: Hopes to be held in Melbourne Australia each May: http://www.cs.rmit.edu.au/KoalaPLoP/
ChiliPLoP: Has been held in Wickenburg, AZ each March http://www.agcs.com/patterns/chiliplop/
Patterns home page OR at Hillside
Alistair Cockburn's Home Page (Human Centered Software Development)
Use Case Modeling(Page of Links)
Patterns and HCI from Jan Borchers
AG Communication Systems Pattern Page (With links to a Pattern Template...)
ChilPlop (Annual conference)
Pattern Languages of Programs Conference Home Page
Pattenrns for Human Computer Interaction and also The Interaction Pattern Home Page
Pedagogical Patterns Home Page
The Design Patterns Study Group of New York City This group has a number of subgroups (Analysis Patterns, Design Patterns...) They have regular meetings to discuss patterns of various kinds.
Pattern Slides from Sept. 18 talk.
Last Updated: May 27, 2006