MiniPLoP'2011 - IME/USP - São Paulo - Brasil


  • 08:00 - 10:00 Bootcamp
  • 09:00 - 10:00 Wellcome Coffee
  • 10:00 - 12:00 Tutorial Internacional - TOTAL CODE MAKEOVER
  • 12:00 - 13:30 Almoço
  • 13:30 - 14:00 Simulação de um Writers' Workshop
  • 14:00 - 14:50 Writers' Workshop - Primeira Sessão
  • 14:50 - 15:40 Writers' Workshop - Segunda Sessão
  • 15:40 - 16:10 Coffee Break
  • 16:10 - 17:00 Writers' Workshop - Terceira Sessão
  • 17:00 - 18:00 Keynote Internacional - METADATA: THE GOOD, THE BAD, AND THE UGLY
  • 18:00 - 19:00 Fechamento e Roda de Viola (traga seu instrumento!!!)

  • Tutorial Internacional - JOSEPH YODER (com participação de BRIAN FOOTE)


    Are you tired of code with that dreary, musty, tangled, legacy look? Weary of the flab, the bloat, and the sluggishness? Do people whisper about how your code smells behind your back? Then it's time for a Total Code Makeover. It was back in ‘97 when Brian Foote and Joseph Yoder first opined that: while much attention had been focused on high-level software architectural patterns, what is, in effect, the de-facto standard software architecture had seldom been discussed: the Big Ball of Mud. A Big Ball of Mud is haphazardly structured, sprawling, sloppy, duct-tape and bailing wire, spaghetti code jungle. We’ve all seen them. These systems show unmistakable signs of unregulated growth, and repeated, expedient repair. Information is shared promiscuously among distant elements of the system, often to the point where nearly all the important information becomes global or duplicated. The overall structure of the system may never have been well defined. Given that mud is mainstream and can be found everywhere, how can we cope with it?

    You'll watch as two internationally renown code makeover specialists turn a run-down, dowdy ball of mud into a fresher, cleaner, more elegant looking codebase. Right before your eyes, they'll take a perfectly hideous program, and through the magic of Refactoring, Design Patterns, Storytelling, and Testing, transform it into a jaw-dropping, CPU-stopping stunner. This hands-on tutorial we’ll demonstrate these revolutionary techniques; when and how to do them.

    Joseph Yoder is a founder and principal 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 long- standing member of The Hillside Group, a, a group dedicated to improving the quality of software development. He specializes in architecture, analysis, and design; C#; Java; Smalltalk; patterns; Agile methods; adaptable systems; refactoring; reuse; and frameworks. Joseph is the author of many papers, including being the co-author of the Big Ball of Mud pattern, which illuminates many fallacies in the approach to software architecture.
    Joseph currently resides in Urbana, Illinois. He teaches Agile methods, design patterns, object design, refactoring, and testing in industrial settings, and mentors many developers on these concepts. He currently oversees a team of developers who have constructed many systems based on enterprise architecture using the .NET environment. Other projects involve working in both the Java and .NET environments deploying domain-specific languages for clients. Joseph presents tutorials and talks, arranges workshops, and organizes leading technical conferences, including international conferences such as Agile, Agile Portugal, Encontro Ágil in Brazil, AOSD, CBSoft, JAOO, QCon, PLoP, AsianPLoP, SugarLoaf PLoP in Brazil, OOPSLA, ECOOP, SATURN, and SPLASH. Joseph thinks software is still too hard to change and believes that, with good patterns and by putting the ability to change software into the hands of the people with the knowledge to change it, seems to be on a promising avenue to solve this problem.  

    Keynote Internacional - BRIAN FOOTE (com participação de JOSEPH YODER)


    Over the last decade or so, metadata has gone from being something that was perceived as an obscure, exotic research topic to playing an indispensable, and highly visible, role in day-to-day software development. Previously only expert database analysts and reflection researchers dared to tangle with metadata.  However, metadata has, with the advent of technologies like XML, become mainstream. Do you have the itch to explore meta-programming, not just because it is cool or complicated, but because you want your system's behavior or domain representations to more easily adapt to changing requirements or scale? If so, consider learning about the design of systems that represent (sometimes user-defined) domain representations and behavior specifications as metadata.

    This talk will trace how this idea became what in hindsight has to be considered one of the most important concepts to emerge from a generation of object-oriented research. This will be done by examining the patterns that underlie it, and how they have blossomed in practical applications over the last several years. In part because of the rampant heterogeneity of contemporary software applications, metadata has become the indispensible glue that holds them all together. Of course, this isn’t always pretty, and usually involves a lot compromises or tradeoffs. Still, in this Era of Big Data, metadata loom larger than ever.

    Brian Foote is an itinerant developer and rogue scholar who has been programming professionally since the late 1970s, when several years of immersion in abysmal scientific realtime code caused him to develop an interest in the question of why such smart people could write such lousy code. This question led him on a journey through the academy, where he studied objects, frameworks, patterns, and processes, and through industry, where he experienced the staggering gap between what we practice and what we preach about programming. His best known work, "Big Ball of Mud", examined this phenomenon a few years back. It still
    haunts him to this day.


    The BootCamp is a pre-conference tutorial that provides something different, but needed, in the patterns community — a "bootcamp" for newcomers. The session will provide an introduction to patterns — a training, mentoring, experiencing activity, where participants will be immersed in patterns and emerge with an enlarged perspective and an ability to get more out of all PLoP conferences.

    Writters' Workshop

    Writers' workshops are used by the pattern community to improve our patterns. These workshops are the primary focus of our time at PLoP and in them we discuss accepted papers. Each writers' workshop will contain 3 papers, which authors must read before the conference to be able to give each other feedback on their work in a peer review session of around one hour per paper. In each session, the authors of the paper under discussion remain silent while the others discuss it and explain additional insights and views they have about it. From these sessions, authors get a lot of feedback and suggestions from fellow authors and others about how they can improve their work.

    Non-authors are free to choose the writers' workshop they want, but are supposed to stay with their workshop over the entire conference, to benefit more from it. Paper assignments to workshops will be posted well before the conference. A fruitful participation in a Writers' Workshop requires to read its papers in advance and, if possible, to take some notes on what you liked about the papers and what you think needs improvement.