PROGRAM
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 includes the following kinds of sessions:
- Invited Talks
- Accepted Papers: for Writers' Workshops.
- A Shepherding Workshop
- Focus Groups
- A Panel Discussion
- Games
- Day-by-Day: Wednesday, Thursday, Friday, and Saturday
PLoP and the Bootcamp will be held at Allerton Park, Monticello, Illinois, USA.
Conference at a Glance
The BootCamp, a special full-day Pre-PLoP activity for newcomers, will happen on Sunday, September 14th, 8:30-17h00.
The PLoP conference starts on Sunday evening, September 14th, at 18:00, with the traditional games and pizza matsuri (祭) and it will conclude on Wednesday, September 17th at 17:00.
Invited Talks
"Exercises in Programming Style" |
Back in the 1940s, a French writer called Raymond Queneau wrote an interesting book with the title Exercises in Style featuring 99 renditions of the exact same short story, each written in a different style. In my book “Exercises in Programming Style” I shamelessly do the same for a simple program. From monolithic to object-oriented to continuations to relational to publish/subscribe to monadic to aspect-oriented to map-reduce, and much more, you will get a tour through the richness of human computational thought by means of implementing one simple program in many different ways. This is more than an academic exercise; large-scale systems design feeds on these ways of thinking. I will talk about the dangers of getting trapped in just one or two prescribed styles during your career, and the need to truly understand this wide variety of concepts when architecting software. Cristina Videira Lopes is a Professor of Informatics at the University of California, Irvine. Her research focuses on software engineering for large-scale data and systems. She was a founding member of the Xerox PARC team that developed Aspect-Oriented Programming. She is also a prolific software developer in particular for OpenSimulator, a virtual world server. She is also a founder of Encitra, a company specializing in online virtual reality for early-stage sustainable urban redevelopment projects. She claims to be the only person in the world who is both an ACM Distinguished Scientist and Ohloh Kudos Rank 9. |
"Simplicity – The Road Not Taken?" |
We all know that Simplicity is an oxymoron that applies only to Scripts, code that is so insignificant that it doesn’t merit being called a Program. Real Software requires a rich variety of concepts, abstractions, languages, tools, practices and an approved social process for building it. It can’t be developed nor comprehended by a single person! Useful Software by definition begets Complexity, stubbornly resisting change. We constantly discover improved ways to make ways to create software but fail to make significant progress in how to evolve it. Finally we have accepted that Programming is an essential life skill. Everything will be programmable, and it will useless without programming. Code rules! We have won! Forget those silly ideas of Software Simplicity or Elegance! We beg to differ! Dave Thomas has a wide spectrum of experience in the software industry as an engineer, professor, consultant, architect, executive and investor. Dave (www.davethomas.net) is founder and CEO of Bedarra Corporation. |
Root cause analysis of some faults in Design Patterns |
As Design Patterns reaches its 20th year, its faults are easier to see. We'll look at a few of them and see if we can learn lessons about writing patterns. Ralph Johnson is one of the four coauthors of Design Patterns and coauthored the first paper (1990) that used the word "refactoring". He was on the faculty of the Department of Computer Science at the University of Illinois at Urbana-Champaign from 1985 to 2012 and since then has been with a small startup, Metaficient, building tools that allow accountants to define their own accounting systems. |
Focus Groups
"Future Language Workshop for the Pattern Community" | |
This workshop provides an opportunity for you to think about the future of the pattern community by creating the Future Language of the pattern community together and to talk the vision with these words. |
"Data-driven Design Pattern Development (3DPD)" | |
Increasingly, outside of the design pattern community, big data is being used to validate design decisions. For example, A/B testing and simple randomized experiments with two variants are used to validate design decisions in online settings such as web-design, social media, and so forth. Likewise in online math tutor systems, data driven approaches are used to identify math problems that confuse and frustrate students or are linked to positive learning outcomes. Big data and measurable outcomes can help to identify problems and confirm high quality solutions. Design patterns provide a very effective way to describe known design problems and design solutions. In this workshop, we propose to explore the role of data driven processes in the development of design patterns such that data-driven exploration may help authors uncover problems and high-quality solutions. In the workshop, we explore domains where data-driven approaches may be appropriate to develop design patterns, methodologies for collecting data, techniques for pre-processing data, approaches for analyzing data and utilizing its results to facilitate the design pattern development process. Participants will have the opportunity to experience the data-driven design pattern development approach through group discussions and simulations. |
"My object can beat up your object" | |
My argument is that enterprise level application development is still too hard. Common solutions to this problem tend to focus on things that are big, e.g. programming languages, development methodologies, etc. My solution, has been to go to the other end of the spectrum and look at things that are small, i.e. the object. I have found that we can do a lot to improve the situation by simply improving the object. |
Accepted Papers
Writers' Workshops | |
Narrow Road to the Deep North (奥の細道)Facilitator - Richard Gabriel |
|
"From Environmental Structure to Service Systems Thinking: Wholeness with Centers Described with a Generative Pattern Language" |
|
"The Nature of Pattern Illustrating: The Theory and The Process of Pattern Illustrating" |
|
"Pattern Language for good old future from Japanese culture" |
|
“Feeling of Life” System with a Pattern Language |
|
"Change Making Pattern Workbook: A Workbook Approach to Pattern Applications" |
|
"A Journey on the Way to Pattern Writing: Designing the Pattern Writing Sheet" |
|
Pattern Language & MiningFacilitators - Lise Hvatum & Bob Hanmer |
|
"A Pattern Language for Open Academic Society with Non-professional Users" |
|
"Learning Patterns for Self-Directed Learning with Notebooks" |
|
"Patterns of Public Policy and Administration: Indentifying Interfaces and Relationships" |
|
"Requirements Elicitation using BPM" |
|
"Analyzing Software Patterns Network obtained from Portland Pattern Repository" |
|
"Mining New Patterns by Learning from the Trenches" |
|
Testing & DevelopmentFacilitators - Rebecca Wirfs-Brock & Joseph Yoder |
|
"Improving Code Quality on Automated Tests of Web Applications: A Set of Patterns" |
|
"QA to AQ Part Two: Shifting from Quality Assurance to Agile Quality - “Measuring and Monitoring Quality”" |
|
"Patterns for Preparing for a Test Driven Development Session" |
|
"Patterns for Testing Distributed Systems Interaction" |
|
"Pattern Enabled Development" |
|
"Business Object State Transition Controller" |
|
SecurityFacilitator - Ralph Johnson |
|
"Extensions to Pattern Formats for Cyber Physical Systems" |
|
"The Secure Domain Name System pattern" |
|
"Cipher Suite Rollback Attack: A Misuse Pattern for TLS Server Authentication Handshake Protocol" |
|
"Engineering Secure and Private Systems Using COSSPs" |
|
"Patterns for Fault Tolerant Cloud Software" |
|
"Pattern for fine-grain access-controlled business objects" |