Keep it small. Keep it simple. Let it happen.

I woke up this morning thinking about change, agility, & something I’m not exactly sure I think of much, emergence. This morning’s thought pattern was not only in terms of my life, but in terms of the many projects I am currently involved with and even about one particular organization. I want to use my life as an example of how emergence can be blocked, change controlled, and agility used more of as a buzzword than an action or way to act. Before I do that, here’s Andy Hunt with a few (geeky, yes) thoughts on the subject…

Emergence is one of the founding principles of agility, and is the closest one to pure magic. Emergent properties aren’t designed or built in, they simply happen as a dynamic result of the rest of the system. “Emergence” comes from middle 17th century Latin in the sense of an “unforeseen occurrence.” You can’t plan for it or schedule it, but you can cultivate an environment where you can let it happen and benefit from it.

A classic example of emergence lies in the flocking behavior of birds. A computer simulation can use as few as three simple rules (along the lines of “don’t run into each other”) and suddenly you get very complex behavior as the flock wends and wafts its way gracefully through the sky, reforming around obstacles, and so on. None of this advanced behavior (such as reforming the same shape around an obstacle) is specified by the rules; it emerges from the dynamics of the system.

Simple rules, as with the birds simulation, lead to complex behavior. Complex rules, as with the tax law in most countries, lead to stupid behavior.

Many common software development practices have the unfortunate side effect of eliminating any chance for emergent behavior. Most attempts at optimization — tying something down very explicitly — reduces the breadth and scope of interactions and relationships, which is the very source of emergence. In the flocking birds example, as with a well-designed system, it’s the interactions and relationships that create the interesting behavior.

The harder we tighten things down, the less room there is for a creative, emergent solution. Whether it’s locking down requirements before they are well understood or prematurely optimizing code, or inventing complex navigation and workflow scenarios before letting end users play with the system, the result is the same: an overly complicated, stupid system instead of a clean, elegant system that harnesses emergence.

Keep it small. Keep it simple. Let it happen.

—Andy Hunt, The Pragmatic Programmers

Do we wait for unforeseen occurrence? Or, do we tie things down very explicitly in order to control outcome, circumstance, and behavior? How would a flock of birds do if we tried to control their flying pattern with overcomplicated rules, without allowing emergence in their own individual patterns that result in an emergence of the flock?  Poor birds I say.

In my life, I often catch myself blocking emergence, simply by projecting controlling behavior in the name of a predefined result I am not getting. Even though I may think or know the best way to an outcome, blocking emergence in these situations is simply what I am doing. I am not allowing, letting go, and trusting that the desired outcome can come to its own conclusion. That does not mean I disown or remove myself completely, but it calls for taking much smaller steps much quicker in the most simple way possible, instead of trying to own the whole thing all at once. Things take time to form, to emerge, and to happen. No situation or project is the same. Everyone one and everything is its own unique experience. By simply letting it happen you can use much less energy, emotion, & effort in working toward the desired outcome. You can use your skills & experience in smaller, more specific ways. You can learn how to apply simplicity to complex problems & situations by letting go, paying attention, and not being attached to the result. You can offer your advice, your help, your experience, your time, your skills, your resources, but you really cannot control outcome or result and expect it to look the way you want it to.

The art of letting go has as much meaning in our personal lives as it does in our professional lives. In technology or software projects I have seen not letting go of the end result in the beginning can change the entire outcome all together, and very rarely with a more positive spin or value proposition. People love to control, and everyone has a different life experience and thus their view of the end result is different. Managers are best at control, experts are great at agility, and innovators are best at emergence. Managers try to control behavior, pattern, and result. Experts, through their experience, have come to understand the value of agility and how to apply it by taking smaller steps and pacing themselves. Innovators have found that emergence happens only in the absence of something. These three personas can be found in any project, any relationship, and any walk of life.

When you have two or more people who see the same thing through shared experience or through humility or out of a desire to let it happen, great things happen. Great products get built. Great companies are born. Great relationships are formed and flourish. Today’s lesson for me is to continue to detach myself from the result. To continue to keep things small (one step at a  time). To continue to be agile and flexible as life moves and changes. And, to let things happen.

I am surrounded by situations I cannot control. Many of which I know could be done differently or even better. At home, at work, on projects or products or in companies…I am surrounded by the lack of control. However, how I influence them is dependent very much on my ability to let go. I know when to walk away from something, and sometime that is what it takes. But when that something is not something you can or want to walk away from…a change in approach is necessary.

Use your energy wisely, the world needs it more than you think. Allow things to emerge. Allow users to experience. Let things happen.

emergence:

Meaning #1: the gradual beginning or coming forth

Meaning #2: the becoming visible

Meaning #3: the act of coming (or going) out; becoming apparent

Meaning #4: the act of emerging

Leave a Reply