I read an article the other day on Levels of Complexity. It encouraged me to define complex vs. complicated within systems and even within the “Occupy” movement in the Bay Area. Stay with me, I promise I will make a connection.
Let’s start with a simple system. In a simple system, there are minimum inputs and the end result is predictable. For example, when you login into your email account and send an email. Same actions render same results, of course given you type in the recipients email address correctly.
A complex system requires more inputs and may have many other input factors unbeknown to the user. Regardless of the different moving parts and multiple inputs factors, the system has a rather understandable pattern and predictable output. Have you ever submitted an expense report or applied for something online such as a school application, credit card? There were several inputs to the system beside the information you gave as well as conditional logic to the process; i.e. expense report greater than $150, then need to be approved by person A, B and C, if less than $25 only person A, etc. Nevertheless, the system typically has a clear pattern and rather predictable outcome, approved or rejected.
In my mind, a complicated system is not something people design or aim to achieve; it is born out of neglect or lack of long term vision. It is typically a system that started off simple and grew to complex. Then to due years of short term maintenance fixes, (which I refer to as band aid code - just fixing symptoms of the problems instead of identifying and fixing the problem) and no real love, the system becomes complicated. We have all worked with or been a part of such systems. Remember when your company moved to the new payroll or benefit system? The old system never went away; they just created multiple interfaces from the old to new, ultimately creating one big complicated system. Hence the reason your paycheck had too many or too little dedications or your benefits had a glitch; all signs of a complicated system – unknown outcomes.
I then aligned these 3 types of systems to the “Occupy” movement in the Bay Area.
Occupy Danville/Blackhawk – simple- never will happen.
Occupy SF – complex – protesters will cause disturbance to commuters, shut down Market St. for a minute, no longer, cops will show up, maybe even in riot gear; outcome typically a peaceful protest.
Occupy OAK – complicated – protesters show up to a city that lacks strong leadership, police force understaffed and operates gorilla style, ranks in the top 10 of highest crime (http://www.abetteroakland.com/wp-content/uploads/2010/11/2010CrimeRankings.pdf); outcome teargas (not predicated) ,violence and looting (somewhat predictable to those that pay attention)
To step outside of my geek speak for a second and give a basic analogy, Oakland is like that old chair at your grandmother house. It has been there for a while, had some wear and tear. It even was reupholstered a couple of times, but the structure has never really had any maintenance, so it has 1 good leg and 3 shaky legs. Then the grandbabies (protesters) come through and start jumping on the chair and the chair gives out. The kids look at the chair and say in their Steve Urkel voice “Did I do that?” I saw on the news this am, the Oakland protesters saying they do not want to be associated with the violence that broke out. When you come to Oakland, a complicated system (see I, couldn’t stay away from geek speak too long) and start forcing it take on more, when it barely can operate with its daily load, what did you expect? While yes, some of them may not have taken part in the violence, they enabled the situation. If they cared about Oakland, they would have recognized it is a complicated system that needs to be overhauled and given some love. Work to better the infrastructure of the city, from helping disenfranchised youth in East Oakland, to HIV education in West Oakland. As long as grandma’s chair does not get an overhaul and folks are allowed to jump on it, this complicated system will always crash.