≡ Menu

I’m once again returning to Japan and looking forward to seeing my friends and colleagues there.

I’ll be arriving in Tokyo on the March 4th. I’ll take in the sites before working with Hironori Washizaki Research Group on Software Modeling Patterns and Evalution Software Models including Refactoring.  I may also meet with an agile group while there. My main reason for the trip besides collaborating with Hiro will be to attend AsianPLoP 2015: 4th Asian Conference on Pattern Languages of Programs which runs from March 5-7.

At AsianPLoP, I will be hosting a workshop about Shepherding and also I will be presenting a focus Group with Rebecca Wirfs-Brock on Processes for Making Lively Things which is related to Alexander’s Nature of Order., In addition to the workshop, I’ll be presenting a paper called “Patterns for Initial Architectural Design on Agile Projects”, with Eduardo Guerra and Rebecca Wirfs-Brock.

I’m staying until March 14th where I will be collaborating with Takashi Iba at COINs 15. I’m also meeting and collaborating with a good friend Yasunobu Kawaguchi about Agile and more. I plan on giving a talk at Rakuten while there.

I look forward to arriving in Japan and seeing the beautiful country once again. If you will be in the area or at the conference, get in touch!


I will be traveling once again to São Paulo near the end of January 2015 where I will be teaching an open enrollment course on Pragmatic Test Driven Development (TDD) and Refactoring Jan 28th and 29th. I will be presenting an enhanced 2-day version focusing on the primary points for Clean Code, Refactoring and TDD. More details can be found here:

If anyone you know might be interested could you please forward them to the above link. There is limited enrollment as I really work on keeping it focused. I’d really appreciate it if you can pass this on to any of your colleagues.

Also if you have time to get together and talk while I’m in São Paulo, please let me know. I always enjoy Brazil and as it will be very cold in Illinois during January I am looking forward to going south :-)!


The First Israel Conference on Software Architecture asked me to make the trip to talk about Taming Big Balls of Mud and Sustaining Architecture. I agreed and am now thoroughly enjoying myself of the culture, geography, and company the conference provides. I’ll also be teaching a tutorial on Ultimate Agility, Letting your Users do your work (AOMs) as part of the conference

Israel is another country on my travel belt. I’ve been prior to this trip, but it’s been a while. I’m really looking forward to catching some of the country aside from the business aspect. I have a few local friends I will be catching up with such as Atzmon, Lior, and David. Of course, the conference provides a great opportunity to meet new developers and enthusiasts, something I really enjoy.

The view from my hotel is incredible.


In addition to the talk on Big Balls of Mud: Sustaining Architecture I’ll be hosting a tutorial entitled “The Adaptive Object-Model Architecture. Ultimate Agility: Let Your Users Do Your Work!”


Like my other trips to Brazil, I come for work and enjoy myself of the food, culture, and friends. This past week I’ve been charmed and honored while meeting with some Agile folks at Objective. I was in Maringa talking about Sustainable Architecture and Pragmatic TDD. I traveled back to São Paulo to talk with Vagas about the Ultimate in Agility: Let your users do the work! — “The Adaptive Object-Model Architecture.”

TAgile Brazil Keynotehe biggest honor of the trip was being asking to present the keynote address at Agile Brazil. Originally, I was only attending to give an Invited Talk, but one thing led to another and I was up on the podium talking about “Taming Big Balls of Mud with Agile, Dilegence, and hard work.” I’m extremely grateful for the opportunity to share my experience with an awesome audience.

This trip has so much going on. The Agile Brazil conference was only the middle of the excursion. I continue the journey by visiting the 10th SugarLoaf PLoP in Ila Bela where I will give an invited talk and present a paper. I’m excited that Ralph Johnson will also be attending this conference as part of the 20th anniversary of the GoF.

To wrap the trip, I’ll be returning to Sao Paulo and giving a tech talk at UOL on Refactoring and Clean Code.

Brazil continues to be one of my favorite countries to visit. I’ve enjoyed each visit and am excited to meet new friends along the way.



Back at the beginning of October, I visited Poland for the JDD conference. JDD touts itself as the Java enthusiast conference. I’ve attended in the past and was excited to return. This year I gave a talk entitled, “QA TO QA: SHIFTING FROM QUALITY ASSURANCE TO AGILE QUALITY.” I also hosted a workshop entitled, “REFACTORING AND CLEAN CODE.” I received favorable comments afterward, met a lot of Java enthusiasts, and had a good time at the conference.

I like to do sight-seeing and meet with some friends wherever I travel these days. Poland was no exception. While there I visited Auschwitz, which was a departure from the more uplifting destinations I’ve visited in the past. It’s a trip that left me feeling depressed and sad that humans could treat other humans in such a way. It gave me a unique perspective on the disturbing history of the place.

After Auschwitz, I traveled to Stockholm to visit with some old and new friends. I met with Woody Zull who I collaborated with on his Agile Report on Mob Programming. Woody invited me to participate in talks at H&M (large clothing place) on Sustainable Architecture and we also went to Spotify where we talked to some Agile coaches about Mob Programming.

Spotify operates out of a very cool office. They clearly know how to keep developers happy.

When I arrived back in Urbana, I left almost immediately after for Portland, Oregon and the SPLASH conference, where I did a tutorial on Shifting from Quality Assurance to Agile Quality. Next year’s PLoP conference will be held in conjunction with Splash in Pittsburgh, so if you’ve ever wanted to attend either conference, you’ll have a chance to go to both with one trip.


agileThis past February I went to Japan for the AsianPLoP conference and toured around with a colleague. During this time we gave a tech talk to Rakuten.  I am doing a follow-up and teaching a course at Rakuten on Test Driven Development (TDD) and Refactoring.  I also plan on doing some sight seeing and visiting with some old and new friends. Additionall I’ll be giving a talk at a mini conference called XP Matsuri. The talk will dive into Taming Big Balls of Mud.

Also, on September 8th and 9th, I’ll be teaching a Pragmatic TDD course. Here’s the course description:

This course takes a pragmatic approach to Test Driven Development (TDD). We believe testing should be a fundamental, integral part of software development process including design and programming. By fundamental, we mean that doing testing well leads to better designs and programs. By integral, we mean that it is part of the normal day-to-day life of the programmer, not a burdensome task added at the end of the real work. Test Driven Development is not always done as Test First Development and it is core to know what to test vs what not to test. The course is a mixture of lecture, short readings, discussion, and labs. Attendees will writing acceptance criteria, functional acceptance tests unit tests. Core testing best practices will be examined included some advanced topics such as or organizing tests, test environments, continuous integration, and testing web services. Additionally testing techniques such as using Mock Objects and testing for different qualities such as performance and security are discussed. The attendees will read information about testing, learn the details of the techniques, and apply them in a group setting (preferably to systems they are currently working on).

Big thanks to Rakuten and the Agilergo Consulting group for asking me to teach the course.

I look forward to returning to Japan and meeting some new friends. I hope to find some really interesting places to visit and to learn more about the culture while I’m there. Of course since I love Japanese food I will spoil myself with Udon, Soba, Ramen, Sushi, Sashimi, and more!!!


Faculdade_de_Direito_da_USPOnce again, I’m returning to Brazil. This time I am teaching a Test Driven Development and Refactoring course for Teams that Innovate. As usual, I’m excited to be making the trip and I look forward to taking some time to catch up with some old friends and to make some new ones!

I’m also looking forward to returning to CAP/INPE on August 15, where I will be presenting a seminar on the topic “Taming Big Balls of Mud with Diligence, Agile Practices, and Hard Work.” This talk will examine the paradoxes that underlie Big Balls of Mud, what causes them, and why they are so prominent. I’ll explore what Agile Practices can help us avoid or cope with mud. I’ll also explain why continuous delivery and TDD with Refactoring is not enough to help ensure clean architecture and why it is important to understand what is core to the architecture and the problem at hand. Understanding what changes in the system and at what rates can help you prevent becoming mired in mud. By first understanding where a system’s complexities are and where it keeps getting worse, we can then work hard (and more intelligently) at sustaining the architecture. Additionally, I’ll talk about some practices and patterns that help keep the architecture/code clean or from getting muddier.

Saturday, August 16, I’ll be back in São Paulo, where I’ll be taking part in a Software Startups event at the University of São Paulo. As always, if you will be in the area, get in contact!



Preparing for Agile PT

I’ve taken to the skies again. This time I’ve crossed the pond to visit beautiful Portugal for the Agile PT conference. I’ve attended in the past and am excited to visit again. Of course, I’m also looking forward to hanging with Ademar and others that I’ve gotten to know through the years.

At this Agile PT I’m hosting the Panel and Retrospective of Agile Portugal 2014.

I spoke with a smaller group yesterday about Adaptive Object Model. The title of the talk was “Adaptive Object-Model Architecture: How to Build Systems That Can Dynamically Adapt to Changing Requirements”

And here’s the synopsis:

Architectures that can dynamically adapt to changing requirement are sometimes called “reflective” or “meta” architectures. We call a particular kind of reflective architecture an “Adaptive Object-Model (AOM)” architecture. An Adaptive Object-Model is a system that represents classes, attributes, relationships, and behavior as metadata. It is a model based on instances rather than classes. Users change the metadata (object model) to reflect changes to the domain model. These changes modify the system’s behavior. In other word, it stores its Object-Model in XML files or in a database and interprets it. Consequently, the object model is adaptive; when the descriptive information for the object model is changed, the system immediately reflects those changes. We have noticed that the architects of a system with Adaptive Object-Models often claim this is the best system they have ever created, and they brag about its flexibility, power, and eloquence. At the same time, many developers find them confusing and hard to work with. This is due in part because the developers do not understand the architecture. This talk will give a description of the Adaptive Object-Model architectural style and will make it easier for developers to understand and build systems that need to adapt to changing requirements.


scrum001ScrumPLoP is happening on May 24th and yours truly will be heading to Denmark to attend. Now this isn’t the first ScrumPLoP. There’s actually been five others before it. I’ve never had the chance to attend, but made an effort to get out there this year.

I’m equally excited because I’ll be hanging with Ademar, Neil Harrison, Harada Kiro, and Jim Coplien. I’m flying out today and expect the trip to be great. I haven’t been in Denmark since the JAOO conference several years ago.

I’m looking forward to scrumming the scrum, learning some new things, and hanging with some good people. I’ll likely upload some new photos throughout the event, so if you follow me on social media, be sure to check those out. If you’re attending #ScrumPLoP2014 stop me and say hey.


It’s been over two years since my last trip to Japan. I’m excited to be visiting the country once again and looking forward to seeing my friends and colleagues there.

I’ll be arriving in Tokyo on the 27th. The next day, I will be travelling by bullet train, either Tokaido Shinkansen or possibly the Nozomi with my colleague Rebecca Wirfs-Brock to Kyoto, where we will take in the historic sites.

On March 1st, I’ll be heading back to Tokyo, where I’ll take in the sites before working with Hironori Washizaki Research Group on Software Modeling Patterns and Evalution Software Models including Refactoring.  Later in the week, I may also meet with an agile group while waiting for AsianPLoP 2014: 3rd Asian Conference on Pattern Languages of Programs which runs from March 5-8.

At AsianPLoP, I will be hosting a workshop about Alexander’s Properties, taken from the Nature of Order by Christopher Alexander, in which I will be discussing how they relate to software and other areas. In addition to the workshop, I’ll be presenting a paper called “Continuous Inspection: A Pattern for Keeping your Code Healthy and Aligned to the Architecture” with Paulo Merson, Ademar Aguiar, and Eduardo Guerra. Rebecca Wirfs-Brock and I will also be presenting a paper entitled, “QA to AQ: Patterns about transitioning from Quality Assurance to Agile Quality.”

I look forward to arriving in Japan and seeing the beautiful country once again. If you will be in the area or at the conference, get in touch!