Monday, February 19, 2018
Text Size

Site Search

  • AsianPLoP


    Asian Conference on Pattern Languages of Programs (PLoP) conference is a premier event for pattern authors and users to gather, discuss and learn more about patterns and software development in the Asia region as well as other regions. The purpose of AsianPLoP is to promote development of patterns, pattern languages, technologies and experiences of patterns primarily about software; however, these for domains outside of software are also welcome.Visit the Asian PLoP Official Site   Read More
  • EuroPLoP


    EuroPLoP is the premier European conference on patterns and pattern languages. EuroPLoP 2017 will be held again at Kloster Irsee, Bavaria, Germany. At this fantastic venue you will experience a creative and constructive atmosphere that inspires your work. Visit the EuroPLoP Official Site. Read the full story Read More
  • ScrumPLoP


    ScrumPLoP is a PLoP® conference. It will be a gathering of experienced Scrum practitioners, assembled with the goal of contributing to the body of pattern literature with proven practices. If you don't yet know what a PLoP conference is, read about what a PLoP is here. Visit the ScrumPLoP Official Site. Read More
  • Viking PLoP

    Viking PLoP

    VikingPLoP contains writer’s workshops for submitted pattern papers, focus groups, and other activities. The conference provides participants with the opportunity to share their experience about patterns and software. As with the PLoP series of conferences, our overall goal is to build a community of patterns' people. VikingPLoP especially encourages submissions related to embedded systems, however, also other pattern-related topics are very welcome. Read More
  • 1
  • 2
  • 3
  • 4

Pattern Books

The Design Patterns Book Series showcases many patterns from PLoP conferences and leading experts in the patterns field.

See our Pattern Book Library filled with over 80 Pattern related books.

Patterns Resources

PLoP Conference News

Review the Hillside Group Bylaws

Joseph Yoder   -   President

Joseph Yoder is a founder and principle of The Refactory, Inc., a company focused on software architecture, design, implementation, consulting and mentoring on all facets of software development. Joseph is an international speaker and pattern author and longstanding member of The Hillside Group, a group dedicated to improving the quality of software development. He is co-author of the Big Ball of Mud pattern, which illuminates many fallacies in the approach to software architecture. Joseph has chaired the Pattern Languages of Programming Conference (PLoP), as well as presented tutorials and talks at conferences such as OOPSLA and ECOOP. 

Lise B. Hvatum   -   Vice President/Director




Rebecca Wirfs-Brock   -   Treasurer

Rebecca Wirfs-Brock is an internationally recognized leader in the development of object design methodologies. She invented the set of development practices known as Responsibility-Driven Design. Among her widely used innovations are use case conversations and object role stereotypes. She is the regular design columnist for IEEE Software and the author of the classic text, Designing Object-Oriented Software. Her most recent book, Object Design: Roles, Responsibilities and Collaborations, was published in 2002. 

Christian Köppe   -   Secretary/Director




Christian Kohls   -   Member/Director




Ademar Aguiar   -   Director




TakashiIbaTakashi Iba  -   Member

Takashi Iba is an associate professor at the Faculty of Policy Management and the Graduate School of Media and Governance at Keio University, Japan. He received a Ph.D. in Media and Governance from Keio University in 2003. With collaborating with his students, Dr. Iba created many pattern languages concerning human actions. He authored Learning Patterns (2014), Presentation Patterns (2014), Collaboration Patterns (2014), Survival Language (2015), Words for a Journey (2015) and many academic books in Japanese such as the bestselling Introduction to Complex Systems (1998)."

Eduardo Guerra   -   Director



Richard P. Gabriel   -   Emeritus Member





Bob Hanmer   -   Emeritus Member

Alcatel-Lucent: Robert S. Hanmer is a Consulting Member of Technical Staff at Alcatel-Lucent. His work has included development, architecture and evaluation of highly reliable systems for the telephone network, especially in the areas of reliability and performance. He has also been active in the software patterns community since the mid-1990's, writing patterns and organizing pattern conferences. He has authored or co-authored 14 journal articles and book chapters. He has been introducing newcomers to patterns and to writing patterns since 1995.


Neil Harrison   -   Emeritus Member




Dirk Riehle   -   Emeritus Member

Prof. Dr. Dirk Riehle is the Pro­fes­sor for Open Source Soft­ware at the Friedrich-Alexander-University of Erlangen-Nürnberg. Before join­ing acad­e­mia, Riehle led the Open Source Research Group at SAP Labs, LLC, in Palo Alto, Cal­i­for­nia (Sil­i­con Val­ley). Riehle founded the Wiki Sym­po­sium,, a con­fer­ence ded­i­cated to wiki research and prac­tice. He was also the lead archi­tect of the first UML vir­tual machine. He is inter­ested in open source soft­ware engi­neer­ing and agile meth­ods, com­plex­ity sci­ence and human col­lab­o­ra­tion, and soft­ware design. Prof. Riehle holds a Ph.D. in com­puter sci­ence from ETH Zürich and an M.B.A. from Stan­ford Busi­ness School. He wel­comes email at This email address is being protected from spambots. You need JavaScript enabled to view it., blogs at, and tweets at @dirkriehle.

Grady Booch   -   Emeritus Member




Linda Rising   -   Emeritus Member

Independent Consultant: Linda Rising is an independent consultant in the areas of agile techniques, retrospectives, patterns, and organizational change. She is very active in the pattern and agile communities. She has authored or co-authored four books and countless journal articles and book chapters. She has been teaching patterns and pattern writing since the mid-1990's.


Dr. James Noble   -   Editor in Chief

James Noble is Professor of Computer Science and Software Engineering at Victoria University New Zealand. He is the author of Small Memory Systems: Patterns for Systems with Limited Memory (with Charles Weir), the editor of Prototype-Based Programming and Pattern Languages of Program Design 5 (with various co-editors). He has published many papers on object-orientation design patterns, aspects, software visualisation and software engineering in international academic conferences and journals.

Dr. Ralph Johnson   -   Editor in Chief



Errors and the printings in which they were fixed.

16th Printing (December 1998)

p. 142
Consequences, item 1: Change "Adapter" to "Adaptee" in the following phrase: " committing to a concrete Adapter class."

p. 328
In the implementation of DerivedClass::Operation(), the comment should come after the call to ParentClass::Operation(): void DerivedClass::Operation () { ParentClass::Operation(); // DerivedClass extended behavior }

14th Printing (December 1997)

p. 69
In the code for PreorderIterator::Next(), the statement _iterators.Push(i); was omitted. It should come immediately after i->First(); like so: void PreorderIterator::Next () { Iterator* i = _iterators.Top()->CurrentItem()->CreateIterator(); i->First(); _iterators.Push(i); while ( _iterators.Size() > 0 && _iterators.Top()->IsDone() ) { delete _iterators.Pop(); _iterators.Top()->Next(); } }

10th Printing (April 1997)

p. 94
"^ Maze new addRoom: r1; addRoom: r2; yourself" ->

should be

"^ Maze new addRoom: room1; addRoom: room2; yourself"

pp. 144, 145
The discussion on pluggable adapters was improved. Here are the updated pages (12KB PDF).

p. 253
if (strcmp(name, _name) != 0) {

should be

if (strcmp(name, _name) == 0) {

5th Printing (December 1995)

p. 94
createMaze: aFactory | room1 room2 aDoor | room1 = (aFactory make: #room) number: 1. room2 = (aFactory make: #room) number: 2. aDoor = (aFactory make: #door) from: room1 to: room2. ...

should have had assignment statements

createMaze: aFactory | room1 room2 aDoor | room1 := (aFactory make: #room) number: 1. room2 := (aFactory make: #room) number: 2. aDoor := (aFactory make: #door) from: room1 to: room2.

p. 300
The arrow labeled "subjects" in the diagram should have a black ball on the end.

3rd Printing (May 1995)

p. 297
" let the observer know which observer is sending the notification."

should be

" let the observer know which subject is sending the notification."

2nd Printing (December 1994)

p. 12, inside-back cover
The "spaghetti" diagram changed slightly to include an arrow labeled "sharing states" from State to Flyweight.

pp. 175, 195, 196, 202
Some lines on these pages did not print correctly. (Well they did, but with width 1 at 2200 dpi. If you squint really hard you might just be able to see them!) Here's what they should look like (24KB PDF).

These are some of the commonly asked for references referred to in Design Patterns and which are available on-line.

Includes papers and the program.

Complete source available.

An Object Oriented Architecture for Constraint Based Graphical Editing.
Richard Helm, Tien Huynh, Kim Marriott, John Vlissides. Third Eurographics Workshop on Object-Oriented Graphics Champery, Switzerland. 1992

This paper presents an object-oriented architecture that integrates the graphical editing framework Unidraw, written in Unidraw, with QOCA, a powerful constraint solving toolkit.

Documenting Frameworks Using Patterns
Ralph Johnson. Proc of OOPSLA '92, Vancouver, BC, Canada. (PostScript 342k)

Many references to the Choices object-oriented operating system.

ET++ - a Portable, Homogenous Class Library and Application Framework .
Andre Weinand, Erich Gamma.1994


  • Hillside Fellowship Award 2016
  • Security Patterns in Practice
  • PLoP Conference Proceedings
  • Asian PLoP
  • EuroPLoP

The Hillside Fellowship Award

Congratulations to Ralph Johnson and Richard Gabriel for being presented the first Hillside Fellowship award at the 2016 PLoP event at Allerton, PLoP 2016 .

Hilside Fellowship Award Recipients 2016

The Hillside Fellowship Program was established in 2016 to recognize members of The Hillside Group who have made exceptional contributions to the Hillside community and to the patterns community at large. The

Read More

Security Patterns in Practice

Eduardo Fernandez's new book " Security Patterns in Practice: Designing Secure Architectures with Software Patterns " has been published.


It is the result of 14 years of producing security patterns with students and colleagues. Almost all of these patterns went through PLoP, EuroPLoP, AsianPLoP, or SugarLoafPLoP. Many of you have participated as shepherds or workshop commentators, the book

Read More

PLoP Conference Proceedings

After the PLoP Workshops, writers are encouraged to modify their papers and submit a final version. The final versions are collected and submitted to the ACM Digital Library. The versions are also available from the conference website.

Conference Proceedings (ACM Digital Library)

Some of the PLoP accepted papers have been published on the ACM Digital Library . The

Read More

Asian PLoP

The premier Asian conference on
Pattern Languages of Programs

AsianPLoP solicits paper submissions written in both of English and Japanese; English papers and Japanese ones will be discussed in different sessions. Both practitioners from the industry and academics are invited to submit their papers. The conference solicits the papers for the following different sessions. Details can be found in Topics

Read More


European Conference on Pattern Languages of Programs

EuroPLoP is a conference that explores, develops and celebrates patterns in software. As with PLoP in the US, the main focus of EuroPLoP will be a series of writer's workshops where pattern authors work together to improve their patterns.

In addition to these workshops there will be discussion groups, BOF sessions and

Read More


Learn More about Patterns


Important: PLoP® is a registered
    trademark of The Hillside Group.

© Copyright 1994 - 2018, All Rights Reserved

Login Form