Pattern Languages of Programs (PLoPTM) conference is a premier event for pattern authors and pattern enthusiasts to gather, discuss and learn more about patterns and software development.

The conference program is being completed, and this page will be updated as more details are known.

Conference at a Glance

PLoP will be held in Vancouver, Canada, at the Hyatt Regency Vancouver Hotel. The PLoP conference starts on Sunday evening, October 22nd 18h30, with the traditional games and pizza dinner and it will conclude on Wednesday afternoon, October 25th at 17h00. We will meet for an informal get together to go out for pizza from the Hyatt Regency Vancouver Lobby at 18:30 pm.

The BootCamp, a special full-day Pre-PLoP activity for newcomers, will happen during Sunday, October 22nd 8h30–17h00. The Bootcamp will be held in a different venue, University of British Columbia". The room is: ICICS 836. Check out the following map.

The following is the PLoP 2017 Schedule.

Invited Talks

"A Pattern Language for Microservices"

@ English Bay Room

Chris Richardson, Monday, 23 Oct, 11:00-12:00

The microservice architecture is growing in popularity. It is an architectural style that structures an application as a set of loosely coupled services that are organized around business capabilities. Its goal is to enable the continuous delivery of large, complex applications. However, the microservice architecture is not a silver bullet and it has some significant drawbacks.

The goal of the microservices pattern language is to enable software developers to apply the microservice architecture effectively. It is a collection of patterns that solve architecture, design, development and operational problems. In this talk, I’ll provide an overview of the microservice architecture and describe the motivations for the pattern language. You will learn about the key patterns in the pattern language.

Chris Richardson is a developer and architect. He is a Java Champion, a JavaOne rock star, and the author of POJOs in Action, which describes how to build enterprise Java applications with frameworks such as Spring and Hibernate. Chris was also the founder of the original, an early Java PaaS for Amazon EC2. Today, he is a recognized thought leader in microservices and speaks regularly at international conferences. Chris is the creator of, a website describing how to develop and deploy microservices. He provides microservices consulting and training and is working on his third startup Eventuate, an application platform for developing microservices. Chris has a computer science degree from the University of Cambridge in England and lives in Oakland, CA.

"Horizons of Pattern Languages: Software, Cities, Planet"

@ English Bay Room

Michael Mehaffy, Wednesday, 25 Oct, 11:00-12:00

Over a half century after Christopher Alexander's landmark work on pattern languages began, the field has proliferated in fascinating and important ways. Pattern languages represent a new class of technology that proposes to "generate, not specify," in the words of software pioneer Ward Cunningham. Closely related, the proliferating technologies (notably wiki) offer an effective platform for communities to collaborate, solve problems and grow smarter -- a capacity that is sorely needed at a time of growing planetary challenges. The speaker, one of Alexander's close collaborators and a colleague of Ward Cunningham, discusses these transformations and their direction.

Michael Mehaffy is Executive Director of Portland-based Sustasis Foundation, a non-profit created in collaboration with the architect Christopher Alexander, and dedicated to developing new applications of pattern languages, wikis, generative codes, and related innovations. He is joined in this work by fellow board member Ward Cunningham, an original pioneer of pattern languages and wikis. He is a researcher, educator, author and consultant on sustainable urban development with an international practice. He earned his Ph.D. in architecture at Delft University of Technology, applying pattern languages and wikis to addressing climate change through changes in urban form.

Focus Groups & Workshops

"Negotiating Order with Generative Pattern Language: A workshop at PLoP 2017"

David Ing, Monday, 23 Oct, 15:30-17:30 @ Cypres Room

This workshop for PLoP 2017 explores generative pattern language from two alternative frames of reference: (i) Creating Order Of (especially in physical geometric structures) and (ii) Negotiating Order With (especially in non-material interactive processes). While Creating Order Of comes derives from Christopher Alexander’s research into the Nature of Order, Negotiating Order With derives primarily from Anselm Strauss’ research into social order. The duality between these two frames can be illustrated with the 1985 Eishin project as an example. Frames of reference originate in the appreciation of assumptions associated with paradigms, in organizational systems research. A duality of (i) Creating Order Of, with (ii) Negotiating Order With, is proposed as complementary frames of reference. This duality can be appreciated as already unfolded in agile practices associating with initiating, constructing and transitioning information systems. This duality may be further explored in other domains.

"Microservices Pattern Mining"

Chris Richardson, Richard Gabriel, Takashi Iba, Joseph Yoder, Monday, 23 Oct, 15:30-17:30 @ Stanley Room

The microservice architecture is an architectural style that structures an application as a set of loosely coupled services organized around business capabilities. As presented in the opening talk, the goal of the microservices pattern language is to enable software developers to apply the microservice architecture effectively. It is a collection of patterns that solve architecture, design, development, and operational problems.

In this focus group, we will discuss the relationship between various microservices patterns, and the sequence of the patterns. We will divide participants into groups and let them brainstorm how the patterns relate along with their priorities. Participants should discuss the relationship between each pattern and the experiences of microservices. Based on the group discussion, the participants make their own pattern map. Finally, we are planning to share the pattern maps and discuss some issues. This might lead us to finding gaps in the patterns or seeing how the patterns fit into the pattern language. Moreover, we are seeking new patterns. We encourage active discussions related to microservices for participants.

"Co-exploring tools and methods for pattern literacy"

Helene Finidori & Peter Tuddenham, Tuesday, 24 Oct, 15:30-17:30 @ Cypress Room

The goal of this workshop is to co-explore and set the stage for the creation of tools and methods aimed at developing pattern literacy through collaborative inquiry. Such tools and methods would enable practitioners to compare, contrast and interconnect patterns across domains on a variety of criteria and to discuss patterns and their interconnections, gaining familiarity with pattern thinking through the process.

Expected audience is pattern theorists and practitioners working on or interested in the inter-operability of patterns and the ways to interconnect patterns of different nature (including the three views of patterns that Christiam Kohls outlined in his thesis as ‘patterns in the world’, ‘patterns in our heads’ and ‘patterns as descriptions’, to which we could add patterns of action) across domains, so as to leverage the potential of patterns and pattern languages as cognitive and mediating tools to collaboratively solve complex systemic issues.

"Writers' Workshop on Microservices Patterns Book"

Chris Richardson, Richard Gabriel, Tuesday, 24 Oct, 15:30-17:30 @ Stanley Room

Chris Richardson has created a pattern language for the microservices architecturual style that structures an application as a set of loosely coupled services organized around business capabilities. This pattern language is part of a book collection and Chris is looking for feedback on some of the patterns.

Richard Gabriel will lead a writers' workshop for the upcoming book that Chris will be publishing. Attendees are encouraged to also attend the Microservices Pattern Mining workshop on Monday. Find the patterns here.

"Be it for cows or code: a pattern language for the commons"

Jenny Quillien, Richard Gabriel, Rebecca Wirfs-Brock, Wednesday, 25 Oct, 15:30-17:30 @ Cypress Room

There is much talk of 'the commons' these days. How much we need them, their tragedy, and their disappearance. The workshop looks at a pattern language for the commons and affords practice in a) improving patterns,b) identifying gaps and brainstorming new patterns, c) constructing a language with the patterns available.

"Patterns for Big Data Processing Systems"

Sumit Kalra, Prabhakar TV, Aditya Nigam, Wednesday, 25 Oct, 13:30-15:30 @ Stanley Room

Big data is identified with following 5 V's: Volume, Variety, Velocity, Veracity and Value. In past decade, a large number of applications has moved towards processing a large amount of data in real time. Some researchers have also proposed architectures and designed such systems to process big data such as Apache Spark, Apache Tez, Microsoft Dryad, Pregel, Graywulf, Vowpal Wabbit, Pegasus, Apache Storm and so on. In the workshop, we will discuss some existing patterns to design big data processing systems. Participants will learn about existing body of knowledge, brainstorm to identify new patterns and classify them as architectural, design or implementation patterns.

"Open Space: Self Organizing Sessions"

Open Space, Monday-Wednesday, 23-25 Oct, 13:30-15:30 @ English Bay Room

Open space helps people like event organizers and participants to run an egalitarian, meritocratic, and self-organizing process. Participants are pulled into creating the event, bringing their problems and their expertise to the table. Open space itself then is about the techniques that help participants form a joint agenda, negotiate and allocate time-slots, and then meet and discuss their issues until it is time to move on to the next topic and/or group.

Open Space time will be allocated at PLoP to promote the self-organization of things by attendees. Although one can't predict specific outcomes, it's usually highly productive for whatever issue people want to address. Sometimes inspiring side effects are noted and there are usually interactive fascinating dialogues. These can include games, self organized focus groups, BoFs, or almost anything. There is often a play like atmosphere with laughter and often very interesting results and engaging discussions and ideas.



The PLoP Games Master is Christian Kohls (see schedule)

Christian Kohls, PhD, and a professor for computer science and socio-technical systems at Germany’s largest university of applied sciences, the TH Köln. Patterns are a big part of his life – including software patterns, educational patterns, and patterns for creative thinking. Being a regular PLoP participant he never misses a game session – for the fun, inspiration and community building.

Accepted Papers

All accepted papers were organized into Writer's Workshops by categorizing the contents and trying to build groups with a balanced workload (number of papers) and with matching contents. The conference versions will be available during the next few days and the final versions will be available after the conference.

Please click on the zip icon link for your group to download the zip for your workshop papers and print for PLoP!

Writers' Workshops      "Click on zip icon to download papers for your group"

Roughness Group, led by Richard Gabriel

"Towards an Educational Design Pattern Language for Massive Open Online Courses (MOOCs)"
by Aracele Fassbinder, Ellen Francine Barbosa, George D. Magoulas

"A Pedagogical Pattern Language for Mobile Learning Applications"
by Maria Lydia Fioravanti, Ellen Francine Barbosa

"Embracing the Fallibility of Design Heuristics: Can Patterns Help?"
by Rebecca Wirfs-Brock

"Patterns as Structure, Process and Community"
by MaryLynn Manns, Joe Yoder

"Pattern Literacy in Support of Systems Literacy"
by Helene Finidori, Peter Tuddenham

Simplicity and Inner Calm Group, led by Jenny Quillien

"The Design of Fitness Apps"
by Meryem Dural, Christian Kohls

"Patterns for Things that Fail"
by António Ramadas, Gil Domingues, Joao Dias, Ademar Aguiar, Hugo Ferreira

"Motivating Self-Improvement: Methods to Stay Motivated"
by Aimi Burgoyne, Takashi Iba

"Fun Language: Sharing the “Fun” to Motivate People to Do Daily Activitiess"
by Takashi Iba, Ayaka Yoshikawa, Hitomi Shimizu

"Effectiveness of Learning 8 Languages Using Patterns"
by Mary Tedeschi "Writing Group"

"Lesson Design Patterns" How to Make Learning an Interesting One"

Local Symmetries Group, led by Michael Weiss and Christian Kohls

"How is Wholeness Created in a Pattern Language? A case study on the creation process in Open Dialogue Patterns"

"Methodology and Philosophy of Pattern Mining: Learning from Jiro Kawakita"
by Takashi Iba, Ayaka Yoshikawa, Konomi Munakata

"Blended Interaction in innovation spaces"
by Guido Münster, Christian Kohls

"Onwards to Innovation: Patterns for Understanding Innovation Opportunities"
by Christian Kohls

"Patterns for Regulating Behavior in Innovation Communities"
by Michael Weiss

Strong Centers Group, led by Eduardo Guerra, Paulina Silva

"The Secure Software Container Pattern"
by Madiha Syed, Eduardo Fernandez, Paulina Silva

"Implementation Patterns for Multi-Tenancy"
by Sumit Kalra Prabhakar TV

"Patterns to Automate Tests for Non-deterministic Algorithms"
by Andre Ivo, Eduardo Guerra

"Design of Blockchain-Based Apps Using Familiar Software Patterns to Address Interoperability Challenges in Healthcare"
by Peng Zhang, Jules White, Douglas C. Schmidt, Gunther Lenz

"Internet of Things Security Patterns"
by Lukas Reinfurt, Uwe Breitenbücher, Michael Falkenthal, Paul Fremantle, Frank Leymann

"A Reference Architecture for web browsers: Part III, A pattern for Web Browser Kernel."
by Paulina Silva, Raúl Monge, Eduardo B. Fernández

Not Separateness Group, led by Lise Hvatum and Rebecca Wirfs-Brock

"Patterns for Implementing Software Analytics in Development Teams"
by Joelma Choma, Eduardo Martins Guerra, Tiago Silva da Silva

"Vulnerability Anti-Pattern: A Timeless Way to Capture Poor Software Practices (Vulnerabilities)"

"InnerSource Patterns for Collaboration"
by Erin Bank, Georg Grutter, Robert Hanmer, Klaas-Jan Stol, Padma Sudarsan, Cedric Williams, Tim Yao, Nick Yeates

"Patterns for Usage Centred Design"
by Robert Biddle, James Noble, Ewan Tempero

"Pattern Stories and Sequences for the Backlog"
by Lise Hvatum, Rebecca Wirfs-Brock

"MetaAutomation: A Pattern Language to Apply Automation to Software Quality"
by Matt Griscom